/********************************************************************
*
* File: fsCSerialisableToStr.h
*
* Purpose: Save to str implementation
*
*********************************************************************/
#ifndef fsCSerialisableToStrhdr
#define fsCSerialisableToStrhdr
#include "../fsISerialisable.h"
class fsCSerialisableToStr : public fsISerialisable
{
friend class fsISerialisable;
public:
static fsStr strStipFromSaveStr(fsStr& pStr);
static fsS32 s32StipFromSaveStr(fsStr& pStr);
virtual ~fsCSerialisableToStr()<--- Destructor in derived class
{
}
protected:
fsCSerialisableToStr()
{
}
fsBool deserialiseInitDo(const fsStr& pName, fsStr& pLoadStr) override;
void serialiseInitDo(const fsStr& pName) override;
fsStr serialiseFinaliseDo() override;
void s32SerialiseDo(fsS32 pVal) override;
fsS32 s32DeserialiseDo() override;
void boolSerialiseDo(fsBool pVal) override;
fsBool boolDeserialiseDo() override;
void strSerialiseDo(const fsStr& pVal) override;
fsStr strDeserialiseDo() override;
void pointSerialiseDo(const fsPoint& pVal) override;
fsPoint pointDeserialiseDo() override;
private:
fsStr myNameHashGet(const fsStr& pName) const;
};
#endif