openATV enigma2
openATV is an open source SetTopBox Graphical user interface.
rawfile.h
Go to the documentation of this file.
1 #ifndef __lib_base_rawfile_h
2 #define __lib_base_rawfile_h
3 
4 #include <string>
5 #include <lib/base/itssource.h>
6 
7 class eRawFile: public iTsSource
8 {
9  DECLARE_REF(eRawFile);
10  eSingleLock m_lock;
11 public:
12  eRawFile(unsigned int packetsize = 188);
13  ~eRawFile();
14  int open(const char *filename);
15 
16  // iTsSource
17  ssize_t read(off_t offset, void *buf, size_t count);
18  off_t length();
19  off_t offset();
20  int valid();
21 private:
22  int m_fd;
23  int m_nrfiles;
24  off_t m_splitsize;
25  off_t m_totallength;
26  off_t m_current_offset;
27  off_t m_base_offset;
28  off_t m_last_offset;
29  int m_current_file;
30  std::string m_basename;
31 
32  int close();
33  void scan();
34  int switchOffset(off_t off);
35  off_t lseek_internal(off_t offset);
36  int openFileUncached(int nr);
37 };
38 
39 #endif
Definition: rawfile.h:8
off_t length()
Definition: rawfile.cpp:157
ssize_t read(off_t offset, void *buf, size_t count)
Definition: rawfile.cpp:64
int open(const char *filename)
Definition: rawfile.cpp:28
off_t offset()
Definition: rawfile.cpp:172
int valid()
Definition: rawfile.cpp:94
eRawFile(unsigned int packetsize=188)
Definition: rawfile.cpp:9
~eRawFile()
Definition: rawfile.cpp:23
Definition: elock.h:81
Definition: itssource.h:7
const char * filename
Definition: epng.h:36
int count
Definition: newplugin.py:14