41 #ifndef _asynchronousfileloadingworkunit_h
42 #define _asynchronousfileloadingworkunit_h
44 #if !defined(SWIG) || defined(SWIG_THREADING) // Do not read when in swig and not in the threading module
76 { Data =
new UInt8[BufferSize]; }
92 RawFile& operator=(RawFile& Unused) {
return Unused; }
149 RunningState BeginLoading(
const std::vector<String>& Filenames_);
177 void DeleteLoadedFiles();
int32_t Int32
An 32-bit integer.
UInt8 * Data
A pointer to a block of memory as it was loaded raw from the file.
void ThreadLoading(void *WU)
An Internal helper function for the AsynchronousFileLoadWorkUnit. This is the function that Asynchron...
RunningState
Used to track whether a thread has started, completed, etc...
RawFileContainer FilesRaw
The contents of the files once they have been loaded. No partial files will exists here...
MaxInt Size
How big is the file in bytes?
Contains an interface for a kind of WorkUnit that loads or does other work even when the frame schedu...
uint8_t UInt8
An 8-bit unsigned integer.
Int32 Status
This stores the current RunningState.
A thread specific collection of double-buffered and algorithm specific resources. ...
A small wrapper around the system thread.
A simple in memory representation of a file.
RawFile(const MaxInt BufferSize)
Constructor.
std::vector< String > Filenames
The names of the files this batch of loading will retrieve.
This is intended to load files asynchronously and continue doing so whether or not other the FrameSch...
std::vector< RawFile * > RawFileContainer
Used to make referencing the the type of FilesRaw easier.
long long MaxInt
A large integer type suitable for compile time math and long term microsecond time keeping...
The bulk of the engine components go in this namspace.
unsigned long Whole
Whole is an unsigned integer, it will be at least 32bits in size.
Thread * LoadingThread
This is either 0 or the other thread that is loading.
The interface for a WorkUnit that will keep running when the rest of the scheduler is paused...
std::string String
A datatype used to a series of characters.
~RawFile()
De-allocates the memory for the file. This make deleting Data manually a bad idea.