3#include <boost/shared_ptr.hpp>
4#include <boost/filesystem.hpp>
10 static boost::shared_ptr<FilenameStrategy>
getStrategy(
const std::string& strPath,
14 const std::vector<std::string>& files = std::vector<std::string>(),
15 bool appendFlag =
false
27 void jump(uint64_t index);
29 virtual std::string
GetFileNameToUse(
bool checkForExistence, uint64_t& index);
84 std::vector<boost::filesystem::path>
mFiles;
100 ListStrategy(
const std::vector<std::string>& files,
const std::string& dirPath,
bool readLoop);
BoostDirectoryStrategy(const std::string &strPath, int startIndex, int maxIndex, bool readLoop)
Definition FilenameStrategy.cpp:248
bool Connect()
Definition FilenameStrategy.cpp:258
virtual ~BoostDirectoryStrategy()
Definition FilenameStrategy.cpp:253
std::string GetFileNameToUse(bool checkForExistence, uint64_t &index)
Definition FilenameStrategy.cpp:296
std::vector< boost::filesystem::path > mFiles
Definition FilenameStrategy.h:84
friend class FilenameStrategy
Definition FilenameStrategy.h:75
bool canCache()
Definition FilenameStrategy.h:71
bool mIsConnected
Definition FilenameStrategy.h:45
bool mReadLoop
Definition FilenameStrategy.h:46
int mCurrentIndex
Definition FilenameStrategy.h:50
virtual std::string GetFileNameToUse(bool checkForExistence, uint64_t &index)
Definition FilenameStrategy.cpp:167
virtual bool canCache()
Definition FilenameStrategy.cpp:139
bool mAppend
Definition FilenameStrategy.h:47
int mStartIndex
Definition FilenameStrategy.h:52
std::string mFileTailName
Definition FilenameStrategy.h:59
bool mPlay
Definition FilenameStrategy.h:61
std::string mFileBaseName
Definition FilenameStrategy.h:58
short mWildCardLen
Definition FilenameStrategy.h:62
void SetReadLoop(bool readLoop)
Definition FilenameStrategy.cpp:238
FilenameStrategy(const std::string &strPath, int startIndex, int maxIndex, bool readLoop, bool appendFlag)
Definition FilenameStrategy.cpp:37
bool Disconnect()
Definition FilenameStrategy.cpp:133
std::string mDirName
Definition FilenameStrategy.h:49
void play(bool play)
Definition FilenameStrategy.cpp:144
std::string GetFileNameForCurrentIndex(bool checkForExistence) const
Definition FilenameStrategy.cpp:212
static bool fileExists(const char *path)
Definition FilenameStrategy.cpp:243
static boost::shared_ptr< FilenameStrategy > getStrategy(const std::string &strPath, int startIndex, int maxIndex, bool readLoop, const std::vector< std::string > &files=std::vector< std::string >(), bool appendFlag=false)
Definition FilenameStrategy.cpp:13
virtual ~FilenameStrategy()
Definition FilenameStrategy.cpp:68
virtual bool Connect()
Definition FilenameStrategy.cpp:78
void jump(uint64_t index)
Definition FilenameStrategy.cpp:157
bool IsConnected() const
Definition FilenameStrategy.cpp:73
void incrementIndex()
Definition FilenameStrategy.cpp:149
int mMaxIndex
Definition FilenameStrategy.h:53
ListStrategy(const std::vector< std::string > &files, const std::string &dirPath, bool readLoop)
Definition FilenameStrategy.cpp:348
std::vector< std::string > mFiles
Definition FilenameStrategy.h:103
bool Connect()
Definition FilenameStrategy.cpp:323
std::string GetFileNameToUse(bool checkForExistence, uint64_t &index)
Definition FilenameStrategy.cpp:328
bool canCache()
Definition FilenameStrategy.h:93
boost::filesystem::path mRootDir
Definition FilenameStrategy.h:104
friend class FilenameStrategy
Definition FilenameStrategy.h:97
virtual ~ListStrategy()
Definition FilenameStrategy.cpp:318