5 #include "cFileSource.h"
8 #if CAUDIO_COMPILE_WITH_FILE_SOURCE == 1
15 cFileSource::cFileSource(
const char* filename) : pFile(NULL), Valid(false), Filesize(0)
17 cAudioString safeFilename = fromUTF8(filename);
18 if(safeFilename.length() != 0)
20 pFile = cfopen(safeFilename,
"rb");
27 fseek(pFile, 0, SEEK_END);
28 Filesize = ftell(pFile);
29 fseek(pFile, 0, SEEK_SET);
33 cFileSource::~cFileSource()
39 bool cFileSource::isValid()
44 int cFileSource::getCurrentPos()
49 int cFileSource::getSize()
54 int cFileSource::read(
void* output,
int size)
56 return fread(output,
sizeof(
char), size, pFile);
59 bool cFileSource::seek(
int amount,
bool relative)
63 int oldamount = ftell(pFile);
64 fseek(pFile, amount, SEEK_CUR);
67 if(oldamount+amount != ftell(pFile))
72 fseek(pFile, amount, SEEK_SET);
73 if(amount != ftell(pFile))