//CFTTFile_RAM - [2020-04-13 11:57:46]
#ifndef _CFTTFILE_RAM_H_
#define _CFTTFILE_RAM_H_

#include "CFTTFile.h"

/*
00264D00 CFTTFile_RAM::CFTTFile_RAM(long long,bool,EFTTMemHeapID)
00264D5C CFTTFile_RAM::~CFTTFile_RAM()
00264D88 CFTTFile_RAM::~CFTTFile_RAM()
00264D96 CFTTFile_RAM::Read(void *,long long)
00264DA4 CFTTFile_RAM::Write(void const*,long long)
00264EA2 CFTTFile_RAM::GetPos()
00264EBE CFTTFile_RAM::Seek(long long,int)
00264F0A CFTTFile_RAM::GetAttributes()
00264F0E CFTTFile_RAM::Close()
00264F18 CFTTFile_RAM::IsOpen()
00264F24 CFTTFile_RAM::GetAsyncHandler()
00264F30 CFTTFile_RAM::GetModeFlags()

vptr_CFTTFile_RAM_3298DC:
  CFTTFile_RAM::~CFTTFile_RAM()
  CFTTFile_RAM::~CFTTFile_RAM()
  CFTTFile_RAM::Read(void *,long long)
  CFTTFile_RAM::Write(void const*,long long)
  CFTTFile_RAM::GetPos()
  CFTTFile_RAM::Seek(long long,int)
  CFTTFile_RAM::GetAttributes()
  CFTTFile_RAM::Close()
  CFTTFile_RAM::IsOpen()
  CFTTFile::ReadAsync(void *,long long,long long,void *,CFTTAsyncEvent<TFTTFileAsyncEventData> *)
  CFTTFile::WriteAsync(void const*,long long,long long,void *,CFTTAsyncEvent<TFTTFileAsyncEventData> *)
  CFTTFile_RAM::GetAsyncHandler()
  CFTTFile_RAM::GetModeFlags()
  CFTTFile::GetMemoryMappedPos()
  CFTTFile::UseBufferedAccess()
  CFTTFile::RequestFlushWrites()

0x38
*/

class CFTTFile_RAM : public CFTTFile {
public:
  CFTTFile_RAM(int64_t len, bool flag, EFTTMemHeapID eHeapID);  //00264D00
  virtual ~CFTTFile_RAM();                                      //00264D5C 00264D88
  virtual int64 Read(void *buf, int64 buflen);                  //00264D96
  virtual int64 Write(void const *buf, int64 buflen);           //00264DA4
  virtual int64 GetPos();                                       //00264EA2
  virtual int64 Seek(int64 dpos, int whence);                   //00264EBE
  virtual TFTTFileAttributes *GetAttributes();                  //00264F0A
  virtual bool Close();                                         //00264F0E
  virtual bool IsOpen();                                        //00264F18
  virtual CFTTFile_AsyncHandler *GetAsyncHandler();             //00264F24
  virtual int GetModeFlags();                                   //00264F30

  int64_t pos_8;  //当前位置
  uint8 *pBuf_10;
  int field_14;
  int64_t field_18;
  EFTTMemHeapID eHeapID_20;
  bool flag_24;
  bool bClose_25;
  TFTTFileAttributes attr_28;
};

#endif  //_CFTTFILE_RAM_H_