//CFTTFileIterator_PAK - [2020-04-13 11:57:46]
#ifndef _CFTTFILEITERATOR_PAK_H_
#define _CFTTFILEITERATOR_PAK_H_

#include "CFTTFileIterator.h"
#include "CFTTFileSystem_PAK.h"

/*
00221C78 CFTTFileIterator_PAK::CFTTFileIterator_PAK(CFTTFileSystem_PAK *,TFTTPakDirectory *)
00221C94 CFTTFileIterator_PAK::~CFTTFileIterator_PAK()
00221C96 CFTTFileIterator_PAK::~CFTTFileIterator_PAK()
00221C9A CFTTFileIterator_PAK::IsValid()
00221CAE CFTTFileIterator_PAK::IsDirectory()
00221CBE CFTTFileIterator_PAK::GetAttributes(TFTTFileAttributes *)
00221CF2 CFTTFileIterator_PAK::GetName()
00221D18 CFTTFileIterator_PAK::Next()

vptr_CFTTFileIterator_PAK_32880C:
  CFTTFileIterator_PAK::~CFTTFileIterator_PAK()
  CFTTFileIterator_PAK::~CFTTFileIterator_PAK()
  CFTTFileIterator_PAK::IsValid()
  CFTTFileIterator_PAK::IsDirectory()
  CFTTFileIterator_PAK::GetAttributes(TFTTFileAttributes *)
  CFTTFileIterator_PAK::GetName()
  CFTTFileIterator_PAK::Next()

0x10
*/

class CFTTFileIterator_PAK : public CFTTFileIterator {
public:
  //此构造函数 在 CFTTFileSystem_PAK::OpenDir 这当中被强制内联进去了，只能这么写
  inline CFTTFileIterator_PAK(CFTTFileSystem_PAK* pFileSystem,
                              TFTTPakDirectory* pPakDir)
      __attribute__((always_inline)) {
    pCFTTFileSystem_PAK_4 = pFileSystem;
    pPakDir_8 = pPakDir;
    currentIndex_C = 0;
  };                                //00221C78
  virtual ~CFTTFileIterator_PAK();  //00221C94 00221C96

  virtual bool IsValid();                                      //00221C9A
  virtual bool IsDirectory();                                  //00221CAE
  virtual EFTTError GetAttributes(TFTTFileAttributes* pAttr);  //00221CBE
  virtual char* GetName();                                     //00221CF2
  virtual EFTTError Next();                                    //00221D18

  CFTTFileSystem_PAK* pCFTTFileSystem_PAK_4;
  TFTTPakDirectory* pPakDir_8;
  int currentIndex_C;
};

#endif  //_CFTTFILEITERATOR_PAK_H_