#include <wagparser.h>
Public Types | |
enum | WagPropertyCode { PC_GAMEDESC = 129, PC_GAMEAUTHOR, PC_GAMEID, PC_INTVERSION, PC_GAMELAST, PC_GAMEVERSION, PC_GAMEABOUT, PC_GAMEEXEC, PC_RESDIR, PC_DEFSYNTAX, PC_INVOBJDESC = 144, PC_VOCABWORDDESC = 160, PC_PALETTE = 172, PC_USERESNAMES = 180, PC_LOGIC = 192, PC_PICTURE = 208, PC_SOUND = 224, PC_VIEW = 240, PC_UNDEFINED = 0x100 } |
enum | WagPropertyType { PT_ID, PT_DESC, PT_SYNTAX, PT_CRC32, PT_KEY, PT_INST0, PT_INST1, PT_INST2, PT_MUTE0, PT_MUTE1, PT_MUTE2, PT_MUTE3, PT_TPQN, PT_ROOM, PT_VIS0, PT_VIS1, PT_VIS2, PT_VIS3, PT_ALL = 0xff, PT_UNDEFINED = 0x100 } |
Public Member Functions | |
WagProperty () | |
~WagProperty () | |
WagProperty (const WagProperty &other) | |
WagProperty & | operator= (const WagProperty &other) |
bool | read (Common::SeekableReadStream &stream) |
void | clear () |
bool | readOk () const |
enum WagPropertyCode | getCode () const |
enum WagPropertyType | getType () const |
byte | getNumber () const |
uint16 | getSize () const |
const char * | getData () const |
void | setPropCode (WagPropertyCode propCode) |
void | setPropDataSize (Common::String str) |
Protected Member Functions | |
void | setDefaults () |
void | deleteData () |
void | deepCopy (const WagProperty &other) |
Protected Attributes | |
bool | _readOk |
Was the property read ok from the source stream? | |
enum WagPropertyCode | _propCode |
Property code (Part of the property's header) | |
enum WagPropertyType | _propType |
Property type (Part of the property's header) | |
byte | _propNum |
Property number (Part of the property's header) | |
uint16 | _propSize |
Property's size (Part of the property's header) | |
char * | _propData |
The property's data (Plus a trailing zero for C-style string access) | |
WagProperty represents a single property from WinAGI's *.wag file. A property consists of a header and of data. The header consists of the following:
Property codes taken from WinAGI 1.1.21's source code file WinAGI/AGIObjects.bas.
Agi::WagProperty::WagProperty | ( | ) |
Creates an empty WagProperty object. No property header or property data in it.
Agi::WagProperty::~WagProperty | ( | ) |
Destructor. Releases allocated memory if any etc. The usual.
Agi::WagProperty::WagProperty | ( | const WagProperty & | other | ) |
Copy constructor. Deep copies the variables.
WagProperty& Agi::WagProperty::operator= | ( | const WagProperty & | other | ) |
Assignment operator. Deep copies the variables.
|
protected |
Sets the default values for member variables.
|
protected |
Delete's the property's data from memory if we have it, otherwise does nothing.
|
protected |
Deep copies the parameter object to this object.
other | The object to be deep copied to this object. |
bool Agi::WagProperty::read | ( | Common::SeekableReadStream & | stream | ) |
Read in a property (Header and data).
void Agi::WagProperty::clear | ( | ) |
Clears the property. After this the property is empty. No header or data.
|
inline |
Was the property read ok from the source stream?
|
inline |
Return the property's code.
|
inline |
Return the property's type.
|
inline |
Return the property's number.
|
inline |
Return the property's data's length.
|
inline |
Return property's data. Constant access version. Can be used as a C-style string (i.e. this is guaranteed to have a trailing zero).
void Agi::WagProperty::setPropCode | ( | WagPropertyCode | propCode | ) |
Set property's code
propCode | the code value to set |
void Agi::WagProperty::setPropDataSize | ( | Common::String | str | ) |
Set property's data and property's size
str | the string that according to it these are set |