Files
Work/browse/HOLD/PAKENTRY.HPP
2024-08-07 09:12:07 -04:00

117 lines
1.9 KiB
C++

#ifndef _BROWSE_PAKENTRY_HPP_
#define _BROWSE_PAKENTRY_HPP_
#ifndef _COMMON_WINDOWS_HPP_
#include <common/windows.hpp>
#endif
#ifndef _COMMON_STRING_HPP_
#include <common/string.hpp>
#endif
#ifndef _COMMON_GLOBALDATA_HPP_
#include <common/gdata.hpp>
#endif
class PakEntry
{
public:
enum EntryType{Sound,Bitmap,Blob};
PakEntry(void);
PakEntry(const PakEntry &pakEntry);
virtual ~PakEntry();
PakEntry &operator=(const PakEntry &pakEntry);
BOOL operator==(const PakEntry &pakEntry)const;
EntryType type(void)const;
void type(EntryType entryType);
const String &name(void)const;
void name(const String &name);
int id(void)const;
void id(int id);
GlobalData<BYTE> &rawData(void);
void rawData(GlobalData<BYTE> &rawData);
private:
EntryType mEntryType;
int mID;
String mName;
GlobalData<BYTE> mRawData;
};
inline
PakEntry::PakEntry(void)
{
}
inline
PakEntry::PakEntry(const PakEntry &pakEntry)
{
*this=pakEntry;
}
inline
PakEntry::~PakEntry()
{
}
inline
PakEntry &PakEntry::operator=(const PakEntry &pakEntry)
{
type(pakEntry.type());
name(pakEntry.name());
rawData(((PakEntry&)pakEntry).rawData());
return *this;
}
inline
BOOL PakEntry::operator==(const PakEntry &pakEntry)const
{
return (type()==pakEntry.type()&&
name()==pakEntry.name()&&
((PakEntry&)*this).rawData()==((PakEntry&)pakEntry).rawData());
}
inline
PakEntry::EntryType PakEntry::type(void)const
{
return mEntryType;
}
inline
void PakEntry::type(EntryType entryType)
{
mEntryType=entryType;
}
inline
const String &PakEntry::name(void)const
{
return mName;
}
inline
void PakEntry::name(const String &name)
{
mName=name;
}
inline
int PakEntry::id(void)const
{
return mID;
}
inline
void PakEntry::id(int id)
{
mID=id;
}
inline
GlobalData<BYTE> &PakEntry::rawData(void)
{
return mRawData;
}
inline
void PakEntry::rawData(GlobalData<BYTE> &rawData)
{
mRawData=rawData;
}
#endif