Nebula
Loading...
Searching...
No Matches
tbuifileinterface.h
Go to the documentation of this file.
1#pragma once
2//------------------------------------------------------------------------------
9//------------------------------------------------------------------------------
10
11#include "io/filestream.h"
12#include "util/string.h"
13#include "util/dictionary.h"
14#include "platform/tb_file_interface.h"
15
16namespace TBUI
17{
18class TBUIFileInterface : public tb::TBFileInterface
19{
20public:
21 tb::TBFileHandle Open(const char* filename, TBFileMode mode) override;
22 void Close(tb::TBFileHandle file) override;
23
24 long Size(tb::TBFileHandle file) override;
25 size_t Read(tb::TBFileHandle file, void* buf, size_t elemSize, size_t count) override;
26
27 bool IsOpen(tb::TBFileHandle file) const;
28
29private:
31};
32
33inline bool
34TBUIFileInterface::IsOpen(tb::TBFileHandle file) const
35{
36 return openFiles.Contains(static_cast<size_t>(file));
37}
38}
Definition tbuifileinterface.h:19
tb::TBFileHandle Open(const char *filename, TBFileMode mode) override
Definition tbuifileinterface.cc:23
long Size(tb::TBFileHandle file) override
Definition tbuifileinterface.cc:50
bool IsOpen(tb::TBFileHandle file) const
Definition tbuifileinterface.h:34
Util::Dictionary< size_t, Ptr< IO::FileStream > > openFiles
Definition tbuifileinterface.h:30
void Close(tb::TBFileHandle file) override
Definition tbuifileinterface.cc:38
size_t Read(tb::TBFileHandle file, void *buf, size_t elemSize, size_t count) override
Definition tbuifileinterface.cc:63
A collection of key/value pairs with quick value retrieval by key at roughly O(log n).
Definition dictionary.h:34
Turbobadger UI Batch.
Definition tbuibatch.h:18