OpenBarnyard
 
Loading...
Searching...
No Matches
TFileStream.cpp
Go to the documentation of this file.
1#include "ToshiPCH.h"
2#include "TFileStream.h"
3
4//-----------------------------------------------------------------------------
5// Enables memory debugging.
6// Note: Should be the last include!
7//-----------------------------------------------------------------------------
9
11
12// $Barnyard: FUNCTION 006d7ef0
16
17// $Barnyard: FUNCTION 006d7fb0
21
22// $Barnyard: FUNCTION 006d7f30
24{
25 TFileStreamJob* pJob;
26
27 while ( TTRUE )
28 {
29 do
30 {
31 m_Jobs.Pop( pJob );
32 pJob->Process();
33 pJob->m_bIsProcessed = TTRUE;
34 } while ( pJob->m_pSemaphore == TNULL );
35
36 pJob->m_pSemaphore->Signal();
37 }
38}
39
40// $Barnyard: FUNCTION 006d7f70
42{
44 m_Jobs.Push( &job );
45}
46
47//-----------------------------------------------------------------------------
48// TTRBStreamJob
49//-----------------------------------------------------------------------------
50
52{
53 return m_fileName;
54}
55
57{
58 return m_trb;
59}
60
61// $Barnyard: FUNCTION 006d7ec0
62void TTRBStreamJob::Init( TTRB* trb, const TCHAR* fileName )
63{
64 m_trb = trb;
65 T2String8::Copy( m_fileName, fileName, -1 );
66}
67
68// $Barnyard: FUNCTION 006d7ee0
70{
71 m_trb->Load( m_fileName );
72}
73
74// $Barnyard: FUNCTION 006d7ea0
81
85
File stream interface for the Toshi engine.
#define TOSHI_NAMESPACE_START
Definition Defines.h:47
#define TOSHI_NAMESPACE_END
Definition Defines.h:50
char TCHAR
Definition Typedefs.h:20
#define TNULL
Definition Typedefs.h:23
#define TFALSE
Definition Typedefs.h:24
#define TTRUE
Definition Typedefs.h:25
TBOOL m_bIsProcessed
Definition TFileStream.h:29
TFileStreamJob(TSemaphore *semaphore)
Definition TFileStream.h:19
TSemaphore * m_pSemaphore
Definition TFileStream.h:28
virtual void Process()=0
virtual ~TFileStream()
virtual void Main() override
void AddStream(TFileStreamJob *job)
const TCHAR * GetFileName() const
void Init(TTRB *trb, const TCHAR *fileName)
virtual ~TTRBStreamJob()
TTRB * GetTRB() const
virtual void Process()
TCHAR m_fileName[64]
Definition TFileStream.h:64
Definition TTRB.h:253
static TCHAR * Copy(TCHAR *dst, const TCHAR *src, TSIZE size=-1)
Definition T2String8.cpp:68