Logo
ApraPipes 1.0
Loading...
Searching...
No Matches
FileSequenceDriver.h
1#pragma once
2
3#include <vector>
4#include <string>
5#include <boost/shared_ptr.hpp>
6
8class BufferMaker;
10{
11public:
12 FileSequenceDriver(const std::string& strPath,
13 int startIndex = 0, int maxIndex = -1, bool readLoop = true, const std::vector<std::string>& files = std::vector<std::string>());
14
15 FileSequenceDriver(const std::string& strPath, bool append);
16
17 virtual ~FileSequenceDriver();
18
19 FileSequenceDriver(const FileSequenceDriver& other) = delete;
21
22 bool Connect();
23 bool Disconnect();
24 bool IsConnected() const;
25 bool canCache();
26
27 bool Read(uint8_t*& dataToRead, size_t& dataSize, uint64_t& index);
28 bool ReadP(BufferMaker& buffMaker, uint64_t& index);
29 bool Write(const uint8_t* dataToWrite, size_t dataSize);
30
31 void SetReadLoop(bool readLoop);
32 void notifyPlay(bool play);
33 void jump(uint64_t index);
34
35private:
36 bool writeHelper(const std::string& fileName, const uint8_t* dataToWrite, size_t dataSize, bool append);
37
38private:
39 bool mAppend;
40 boost::shared_ptr<FilenameStrategy> mStrategy;
41};
Definition BufferMaker.h:2
Definition FileSequenceDriver.h:10
bool Disconnect()
Definition FileSequenceDriver.cpp:62
void notifyPlay(bool play)
Definition FileSequenceDriver.cpp:72
bool canCache()
Definition FileSequenceDriver.cpp:204
void jump(uint64_t index)
Definition FileSequenceDriver.cpp:77
bool Write(const uint8_t *dataToWrite, size_t dataSize)
Definition FileSequenceDriver.cpp:155
FileSequenceDriver(const FileSequenceDriver &other)=delete
bool IsConnected() const
Definition FileSequenceDriver.cpp:67
bool writeHelper(const std::string &fileName, const uint8_t *dataToWrite, size_t dataSize, bool append)
Definition FileSequenceDriver.cpp:166
FileSequenceDriver & operator=(const FileSequenceDriver &other)=delete
virtual ~FileSequenceDriver()
Definition FileSequenceDriver.cpp:31
bool Read(uint8_t *&dataToRead, size_t &dataSize, uint64_t &index)
Definition FileSequenceDriver.cpp:120
bool ReadP(BufferMaker &buffMaker, uint64_t &index)
Definition FileSequenceDriver.cpp:82
bool mAppend
Definition FileSequenceDriver.h:39
void SetReadLoop(bool readLoop)
Definition FileSequenceDriver.cpp:198
bool Connect()
Definition FileSequenceDriver.cpp:36
FileSequenceDriver(const std::string &strPath, int startIndex=0, int maxIndex=-1, bool readLoop=true, const std::vector< std::string > &files=std::vector< std::string >())
Definition FileSequenceDriver.cpp:10
boost::shared_ptr< FilenameStrategy > mStrategy
Definition FileSequenceDriver.h:40
Definition FilenameStrategy.h:7