; 
; Exports of file hhsetup.dll
;
; Autogenerated by gen_exportdef
; Written by Kai Tietz, 2007
;
LIBRARY hhsetup.dll
EXPORTS
; public: __thiscall CCollection::CCollection(void)
??0CCollection@@QAE@XZ
; public: __thiscall CFIFOString::CFIFOString(void)
??0CFIFOString@@QAE@XZ
; public: __thiscall CFolder::CFolder(void)
??0CFolder@@QAE@XZ
; public: __thiscall CLocation::CLocation(void)
??0CLocation@@QAE@XZ
; public: __thiscall CPointerList::CPointerList(void)
??0CPointerList@@QAE@XZ
; public: __thiscall CTitle::CTitle(void)
??0CTitle@@QAE@XZ
; public: __thiscall CCollection::~CCollection(void)
??1CCollection@@QAE@XZ
; public: __thiscall CFIFOString::~CFIFOString(void)
??1CFIFOString@@QAE@XZ
; public: __thiscall CFolder::~CFolder(void)
??1CFolder@@QAE@XZ
; public: __thiscall CLocation::~CLocation(void)
??1CLocation@@QAE@XZ
; public: __thiscall CPointerList::~CPointerList(void)
??1CPointerList@@QAE@XZ
; public: __thiscall CTitle::~CTitle(void)
??1CTitle@@QAE@XZ
; public: class CCollection & __thiscall CCollection::operator=(class CCollection const &)
??4CCollection@@QAEAAV0@ABV0@@Z
; public: class CFIFOString & __thiscall CFIFOString::operator=(class CFIFOString const &)
??4CFIFOString@@QAEAAV0@ABV0@@Z
; public: class CFolder & __thiscall CFolder::operator=(class CFolder const &)
??4CFolder@@QAEAAV0@ABV0@@Z
; public: class CLocation & __thiscall CLocation::operator=(class CLocation const &)
??4CLocation@@QAEAAV0@ABV0@@Z
; public: class CPointerList & __thiscall CPointerList::operator=(class CPointerList const &)
??4CPointerList@@QAEAAV0@ABV0@@Z
; public: class CTitle & __thiscall CTitle::operator=(class CTitle const &)
??4CTitle@@QAEAAV0@ABV0@@Z
; public: struct ListItem * __thiscall CPointerList::Add(void *)
?Add@CPointerList@@QAEPAUListItem@@PAX@Z
; public: unsigned long __thiscall CFolder::AddChildFolder(class CFolder *)
?AddChildFolder@CFolder@@QAEKPAV1@@Z
; public: class CFolder * __thiscall CFolder::AddChildFolder(char const *,unsigned long,unsigned long *,unsigned short)
?AddChildFolder@CFolder@@QAEPAV1@PBDKPAKG@Z
; public: class CFolder * __thiscall CFolder::AddChildFolder(unsigned short const *,unsigned long,unsigned long *,unsigned short)
?AddChildFolder@CFolder@@QAEPAV1@PBGKPAKG@Z
; public: class CColList * __thiscall CCollection::AddCollection(void)
?AddCollection@CCollection@@QAEPAVCColList@@XZ
; public: class CFolder * __thiscall CCollection::AddFolder(char const *,unsigned long,unsigned long *,unsigned short)
?AddFolder@CCollection@@QAEPAVCFolder@@PBDKPAKG@Z
; public: class CFolder * __thiscall CCollection::AddFolder(unsigned short const *,unsigned long,unsigned long *,unsigned short)
?AddFolder@CCollection@@QAEPAVCFolder@@PBGKPAKG@Z
; public: class CLocation * __thiscall CCollection::AddLocation(char const *,char const *,char const *,char const *,unsigned long *)
?AddLocation@CCollection@@QAEPAVCLocation@@PBD000PAK@Z
; public: class CLocation * __thiscall CCollection::AddLocation(unsigned short const *,unsigned short const *,unsigned short const *,unsigned short const *,unsigned long *)
?AddLocation@CCollection@@QAEPAVCLocation@@PBG000PAK@Z
; public: unsigned long __thiscall CTitle::AddLocationHistory(unsigned long,char const *,char const *,char const *,class CLocation const *,char const *,char const *,int)
?AddLocationHistory@CTitle@@QAEKKPBD00PBVCLocation@@00H@Z
; public: unsigned long __thiscall CTitle::AddLocationHistory(unsigned long,unsigned short const *,unsigned short const *,unsigned short const *,class CLocation const *,unsigned short const *,unsigned short const *,int)
?AddLocationHistory@CTitle@@QAEKKPBG00PBVCLocation@@00H@Z
; public: void __thiscall CCollection::AddRef(void)
?AddRef@CCollection@@QAEXXZ
; private: unsigned long __thiscall CCollection::AddRefedTitle(class CFolder *)
?AddRefedTitle@CCollection@@AAEKPAVCFolder@@@Z
; public: unsigned long __thiscall CFIFOString::AddTail(char *)
?AddTail@CFIFOString@@QAEKPAD@Z
; public: class CTitle * __thiscall CCollection::AddTitle(char const *,char const *,char const *,char const *,char const *,unsigned short,unsigned int,class CLocation *,unsigned long *,int,char const *)
?AddTitle@CCollection@@QAEPAVCTitle@@PBD0000GIPAVCLocation@@PAKH0@Z
; public: class CTitle * __thiscall CCollection::AddTitle(unsigned short const *,unsigned short const *,unsigned short const *,unsigned short const *,unsigned short const *,unsigned short,unsigned int,class CLocation *,unsigned long *,int,unsigned short const *)
?AddTitle@CCollection@@QAEPAVCTitle@@PBG0000GIPAVCLocation@@PAKH0@Z
; private: unsigned long __thiscall CCollection::AllocCopyValue(class CParseXML *,char *,char * *)
?AllocCopyValue@CCollection@@AAEKPAVCParseXML@@PADPAPAD@Z
; unsigned long __stdcall AllocSetValue(char const *,char * *)
?AllocSetValue@@YGKPBDPAPAD@Z
; private: unsigned long __thiscall CCollection::CheckTitleRef(char const *,unsigned short)
?CheckTitleRef@CCollection@@AAEKPBDG@Z
; private: unsigned long __thiscall CCollection::CheckTitleRef(unsigned short const *,unsigned short)
?CheckTitleRef@CCollection@@AAEKPBGG@Z
; public: unsigned long __thiscall CCollection::Close(void)
?Close@CCollection@@QAEKXZ
; public: void __thiscall CCollection::ConfirmTitles(void)
?ConfirmTitles@CCollection@@QAEXXZ
; public: void __thiscall CCollection::DecrementRefTitleCount(void)
?DecrementRefTitleCount@CCollection@@QAEXXZ
; private: void __thiscall CCollection::DeleteChildren(class CFolder * *)
?DeleteChildren@CCollection@@AAEXPAPAVCFolder@@@Z
; public: unsigned long __thiscall CCollection::DeleteFolder(class CFolder *)
?DeleteFolder@CCollection@@QAEKPAVCFolder@@@Z
; private: void __thiscall CCollection::DeleteFolders(class CFolder * *)
?DeleteFolders@CCollection@@AAEXPAPAVCFolder@@@Z
; private: void __thiscall CCollection::DeleteLocalFiles(struct LocationHistory *,class CTitle *)
?DeleteLocalFiles@CCollection@@AAEXPAULocationHistory@@PAVCTitle@@@Z
; private: unsigned long __thiscall CCollection::DeleteLocation(class CLocation *)
?DeleteLocation@CCollection@@AAEKPAVCLocation@@@Z
; private: unsigned long __thiscall CCollection::DeleteTitle(class CTitle *)
?DeleteTitle@CCollection@@AAEKPAVCTitle@@@Z
; public: void __thiscall CCollection::Dirty(void)
?Dirty@CCollection@@QAEXXZ
; public: class CColList * __thiscall CCollection::FindCollection(char *)
?FindCollection@CCollection@@QAEPAVCColList@@PAD@Z
; public: class CLocation * __thiscall CCollection::FindLocation(char const *,unsigned int *)
?FindLocation@CCollection@@QAEPAVCLocation@@PBDPAI@Z
; public: class CLocation * __thiscall CCollection::FindLocation(unsigned short const *,unsigned int *)
?FindLocation@CCollection@@QAEPAVCLocation@@PBGPAI@Z
; public: class CTitle * __thiscall CCollection::FindTitle(char const *,unsigned short)
?FindTitle@CCollection@@QAEPAVCTitle@@PBDG@Z
; public: class CTitle * __thiscall CCollection::FindTitle(unsigned short const *,unsigned short)
?FindTitle@CCollection@@QAEPAVCTitle@@PBGG@Z
; public: struct ListItem * __thiscall CPointerList::First(void)
?First@CPointerList@@QAEPAUListItem@@XZ
; public: class CLocation * __thiscall CCollection::FirstLocation(void)
?FirstLocation@CCollection@@QAEPAVCLocation@@XZ
; public: unsigned long __thiscall CCollection::GetColNo(void)
?GetColNo@CCollection@@QAEKXZ
; public: char const * __thiscall CCollection::GetCollectionFileName(void)
?GetCollectionFileName@CCollection@@QAEPBDXZ
; public: unsigned short const * __thiscall CCollection::GetCollectionFileNameW(void)
?GetCollectionFileNameW@CCollection@@QAEPBGXZ
; public: int __thiscall CCollection::GetFindMergedCHMS(void)
?GetFindMergedCHMS@CCollection@@QAEHXZ
; public: class CFolder * __thiscall CFolder::GetFirstChildFolder(void)
?GetFirstChildFolder@CFolder@@QAEPAV1@XZ
; public: class CTitle * __thiscall CCollection::GetFirstTitle(void)
?GetFirstTitle@CCollection@@QAEPAVCTitle@@XZ
; public: char * __thiscall CLocation::GetId(void)const 
?GetId@CLocation@@QBEPADXZ
; public: char * __thiscall CTitle::GetId(void)
?GetId@CTitle@@QAEPADXZ
; public: unsigned short const * __thiscall CLocation::GetIdW(void)
?GetIdW@CLocation@@QAEPBGXZ
; public: unsigned short const * __thiscall CTitle::GetIdW(void)
?GetIdW@CTitle@@QAEPBGXZ
; public: unsigned short __thiscall CCollection::GetLangId(char const *)
?GetLangId@CCollection@@QAEGPBD@Z
; public: unsigned short __thiscall CCollection::GetLangId(unsigned short const *)
?GetLangId@CCollection@@QAEGPBG@Z
; public: unsigned short __thiscall CFolder::GetLanguage(void)
?GetLanguage@CFolder@@QAEGXZ
; public: unsigned short __thiscall CTitle::GetLanguage(void)
?GetLanguage@CTitle@@QAEGXZ
; public: struct LocationHistory * __thiscall CTitle::GetLocation(unsigned long)
?GetLocation@CTitle@@QAEPAULocationHistory@@K@Z
; public: int __thiscall CCollection::GetMasterCHM(char * *,unsigned short *)
?GetMasterCHM@CCollection@@QAEHPAPADPAG@Z
; public: int __thiscall CCollection::GetMasterCHM(unsigned short * *,unsigned short *)
?GetMasterCHM@CCollection@@QAEHPAPAGPAG@Z
; public: class CFolder * __thiscall CFolder::GetNextFolder(void)
?GetNextFolder@CFolder@@QAEPAV1@XZ
; public: class CLocation * __thiscall CLocation::GetNextLocation(void)
?GetNextLocation@CLocation@@QAEPAV1@XZ
; public: class CTitle * __thiscall CTitle::GetNextTitle(void)
?GetNextTitle@CTitle@@QAEPAV1@XZ
; public: unsigned long __thiscall CFolder::GetOrder(void)
?GetOrder@CFolder@@QAEKXZ
; public: class CFolder * __thiscall CFolder::GetParent(void)
?GetParent@CFolder@@QAEPAV1@XZ
; public: char * __thiscall CLocation::GetPath(void)
?GetPath@CLocation@@QAEPADXZ
; public: unsigned short const * __thiscall CLocation::GetPathW(void)
?GetPathW@CLocation@@QAEPBGXZ
; public: unsigned long __thiscall CCollection::GetRefTitleCount(void)
?GetRefTitleCount@CCollection@@QAEKXZ
; public: class CFolder * __thiscall CCollection::GetRootFolder(void)
?GetRootFolder@CCollection@@QAEPAVCFolder@@XZ
; public: char * __thiscall CCollection::GetSampleLocation(void)
?GetSampleLocation@CCollection@@QAEPADXZ
; public: unsigned short const * __thiscall CCollection::GetSampleLocationW(void)
?GetSampleLocationW@CCollection@@QAEPBGXZ
; public: unsigned long __thiscall CFIFOString::GetTail(char * *)
?GetTail@CFIFOString@@QAEKPAPAD@Z
; public: char * __thiscall CFolder::GetTitle(void)
?GetTitle@CFolder@@QAEPADXZ
; public: char * __thiscall CLocation::GetTitle(void)
?GetTitle@CLocation@@QAEPADXZ
; public: unsigned short const * __thiscall CFolder::GetTitleW(void)
?GetTitleW@CFolder@@QAEPBGXZ
; public: unsigned short const * __thiscall CLocation::GetTitleW(void)
?GetTitleW@CLocation@@QAEPBGXZ
; public: unsigned long __thiscall CCollection::GetVersion(void)
?GetVersion@CCollection@@QAEKXZ
; public: class CFolder * __thiscall CCollection::GetVisableRootFolder(void)
?GetVisableRootFolder@CCollection@@QAEPAVCFolder@@XZ
; public: char * __thiscall CLocation::GetVolume(void)
?GetVolume@CLocation@@QAEPADXZ
; public: unsigned short const * __thiscall CLocation::GetVolumeW(void)
?GetVolumeW@CLocation@@QAEPBGXZ
; private: unsigned long __thiscall CCollection::HandleCollection(class CParseXML *,char *)
?HandleCollection@CCollection@@AAEKPAVCParseXML@@PAD@Z
; private: unsigned long __thiscall CCollection::HandleCollectionEntry(class CParseXML *,char *)
?HandleCollectionEntry@CCollection@@AAEKPAVCParseXML@@PAD@Z
; private: unsigned long __thiscall CCollection::HandleFolder(class CParseXML *,char *)
?HandleFolder@CCollection@@AAEKPAVCParseXML@@PAD@Z
; private: unsigned long __thiscall CCollection::HandleLocation(class CParseXML *,char *)
?HandleLocation@CCollection@@AAEKPAVCParseXML@@PAD@Z
; private: unsigned long __thiscall CCollection::HandleTitle(class CParseXML *,char *)
?HandleTitle@CCollection@@AAEKPAVCParseXML@@PAD@Z
; public: void __thiscall CCollection::IncrementRefTitleCount(void)
?IncrementRefTitleCount@CCollection@@QAEXXZ
; public: int __thiscall CCollection::IsDirty(void)
?IsDirty@CCollection@@QAEHXZ
; public: int __thiscall CCollection::MergeKeywords(char *)
?MergeKeywords@CCollection@@QAEHPAD@Z
; public: int __thiscall CCollection::MergeKeywords(unsigned short *)
?MergeKeywords@CCollection@@QAEHPAG@Z
; private: class CLocation * __thiscall CCollection::NewLocation(void)
?NewLocation@CCollection@@AAEPAVCLocation@@XZ
; public: struct LocationHistory * __thiscall CTitle::NewLocationHistory(void)
?NewLocationHistory@CTitle@@QAEPAULocationHistory@@XZ
; private: class CTitle * __thiscall CCollection::NewTitle(void)
?NewTitle@CCollection@@AAEPAVCTitle@@XZ
; public: struct ListItem * __thiscall CPointerList::Next(struct ListItem *)
?Next@CPointerList@@QAEPAUListItem@@PAU2@@Z
; public: unsigned long __thiscall CCollection::Open(char const *)
?Open@CCollection@@QAEKPBD@Z
; public: unsigned long __thiscall CCollection::Open(unsigned short const *)
?Open@CCollection@@QAEKPBG@Z
; private: unsigned long __thiscall CCollection::ParseFile(char const *)
?ParseFile@CCollection@@AAEKPBD@Z
; private: unsigned long __thiscall CCollection::Release(void)
?Release@CCollection@@AAEKXZ
; public: void __thiscall CFIFOString::RemoveAll(void)
?RemoveAll@CFIFOString@@QAEXXZ
; public: void __thiscall CPointerList::RemoveAll(void)
?RemoveAll@CPointerList@@QAEXXZ
; public: unsigned long __thiscall CCollection::RemoveCollection(int)
?RemoveCollection@CCollection@@QAEKH@Z
; public: void __thiscall CCollection::RemoveCollectionEntry(char *)
?RemoveCollectionEntry@CCollection@@QAEXPAD@Z
; public: unsigned long __thiscall CCollection::Save(void)
?Save@CCollection@@QAEKXZ
; public: void __thiscall CFolder::SetExTitlePtr(class CExTitle *)
?SetExTitlePtr@CFolder@@QAEXPAVCExTitle@@@Z
; public: void __thiscall CCollection::SetFindMergedCHMS(int)
?SetFindMergedCHMS@CCollection@@QAEXH@Z
; public: void __thiscall CFolder::SetFirstChildFolder(class CFolder *)
?SetFirstChildFolder@CFolder@@QAEXPAV1@@Z
; public: void __thiscall CLocation::SetId(char const *)
?SetId@CLocation@@QAEXPBD@Z
; public: void __thiscall CLocation::SetId(unsigned short const *)
?SetId@CLocation@@QAEXPBG@Z
; public: void __thiscall CTitle::SetId(char const *)
?SetId@CTitle@@QAEXPBD@Z
; public: void __thiscall CTitle::SetId(unsigned short const *)
?SetId@CTitle@@QAEXPBG@Z
; public: void __thiscall CFolder::SetLanguage(unsigned short)
?SetLanguage@CFolder@@QAEXG@Z
; public: void __thiscall CTitle::SetLanguage(unsigned short)
?SetLanguage@CTitle@@QAEXG@Z
; public: void __thiscall CCollection::SetMasterCHM(char const *,unsigned short)
?SetMasterCHM@CCollection@@QAEXPBDG@Z
; public: void __thiscall CCollection::SetMasterCHM(unsigned short const *,unsigned short)
?SetMasterCHM@CCollection@@QAEXPBGG@Z
; public: void __thiscall CFolder::SetNextFolder(class CFolder *)
?SetNextFolder@CFolder@@QAEXPAV1@@Z
; public: void __thiscall CLocation::SetNextLocation(class CLocation *)
?SetNextLocation@CLocation@@QAEXPAV1@@Z
; public: void __thiscall CTitle::SetNextTitle(class CTitle *)
?SetNextTitle@CTitle@@QAEXPAV1@@Z
; public: void __thiscall CFolder::SetOrder(unsigned long)
?SetOrder@CFolder@@QAEXK@Z
; public: void __thiscall CFolder::SetParent(class CFolder *)
?SetParent@CFolder@@QAEXPAV1@@Z
; public: void __thiscall CLocation::SetPath(char const *)
?SetPath@CLocation@@QAEXPBD@Z
; public: void __thiscall CLocation::SetPath(unsigned short const *)
?SetPath@CLocation@@QAEXPBG@Z
; public: void __thiscall CCollection::SetSampleLocation(char const *)
?SetSampleLocation@CCollection@@QAEXPBD@Z
; public: void __thiscall CCollection::SetSampleLocation(unsigned short const *)
?SetSampleLocation@CCollection@@QAEXPBG@Z
; public: void __thiscall CFolder::SetTitle(char const *)
?SetTitle@CFolder@@QAEXPBD@Z
; public: void __thiscall CFolder::SetTitle(unsigned short const *)
?SetTitle@CFolder@@QAEXPBG@Z
; public: void __thiscall CLocation::SetTitle(char const *)
?SetTitle@CLocation@@QAEXPBD@Z
; public: void __thiscall CLocation::SetTitle(unsigned short const *)
?SetTitle@CLocation@@QAEXPBG@Z
; public: void __thiscall CCollection::SetVersion(unsigned long)
?SetVersion@CCollection@@QAEXK@Z
; public: void __thiscall CLocation::SetVolume(char const *)
?SetVolume@CLocation@@QAEXPBD@Z
; public: void __thiscall CLocation::SetVolume(unsigned short const *)
?SetVolume@CLocation@@QAEXPBG@Z
; private: int __thiscall CCollection::WriteFolder(class CFolder * *)
?WriteFolder@CCollection@@AAEHPAPAVCFolder@@@Z
; private: int __thiscall CCollection::WriteFolders(class CFolder * *)
?WriteFolders@CCollection@@AAEHPAPAVCFolder@@@Z
; public: int __thiscall CFolder::bIsVisable(void)
?bIsVisable@CFolder@@QAEHXZ
; private: void __thiscall CCollection::wssResetNextColNum(void)
?wssResetNextColNum@CCollection@@AAEXXZ
