Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

class Geo::IGeoSerialisable

    └>Geo::IGeoReleasable

A class implementing IGeoSerialisable adds the ability to save and load instances of the type from an IGeoStream.

It also implements IGeoReleasable, meaning that the data is allocated and freed from within the Enlighten libraries. Many API calls return classes that implement this interface, you can usually call Save() on a returned object and then create a new instance, call Load() and have the data ready for another API call.

Functions

NameDescription
Load(IGeoInputStream &, Geo::u32)

Load an instance of this class from an IGeoInputStream.

NonCopyable(NonCopyable &&)

Defaulted to allow move.

operator=(NonCopyable &&)

Defaulted to allow move.

Release()

Free this object that was created within the Enlighten libraries.

Save(IGeoStream &, Geo::u32)

Save an instance of this class to an IGeoStream.


Anchor
ae5fb810c8f4470cb3c9fcb16c6f7f7fe
ae5fb810c8f4470cb3c9fcb16c6f7f7fe

virtual bool Geo::IGeoSerialisable::Load

...

public: bool Load
(
    IGeoInputStream & stream,
    Geo::u32 section
)

...

Load an instance of this class from an IGeoInputStream.

The stream must be ready to read from. You can load sections of an object by passing a bitmask representing the desired sections rather than Iff::AllSectionsMask, which will load all sections. It is also safe to call this method on an object multiple times with different section arguments to load multiple parts.


Anchor
adaed81b4c59f263dcb4e78c4126f4683
adaed81b4c59f263dcb4e78c4126f4683

Geo::NonCopyable::NonCopyable

...

public: NonCopyable
(
    NonCopyable &&
)

...

Defaulted to allow move.


Anchor
a6abc781e23b8f4864e0b868806e0acbf
a6abc781e23b8f4864e0b868806e0acbf

NonCopyable& Geo::NonCopyable::operator=

...

public: NonCopyable & operator=
(
    NonCopyable &&
)

...

Defaulted to allow move.


Anchor
af6bdf30b42adde386c428e9dc2821eb9
af6bdf30b42adde386c428e9dc2821eb9

virtual void Geo::IGeoReleasable::Release

...

public: void Release()

...

Free this object that was created within the Enlighten libraries.

Expect this to behave in a similar way to calling 'delete(this)'


Anchor
a5b03439626a3dac9b9c27feb1a3978d3
a5b03439626a3dac9b9c27feb1a3978d3

virtual bool Geo::IGeoSerialisable::Save

...

public: bool Save
(
    IGeoStream & stream,
    Geo::u32 section
) const

...

Save an instance of this class to an IGeoStream.

The stream must be ready to write to. You can save sections of an object by passing a bitmask representing the desired sections rather than Iff::AllSectionsMask, which will save all sections that are available.