Line 251: |
Line 251: |
| { | | { |
| public: | | public: |
− | virtual m0(); | + | virtual CMwNod(); |
| virtual ~CMwNod(); | | virtual ~CMwNod(); |
− | virtual CMwClassInfo* GetClassInfo(); // Gets information about the object's class | + | virtual CMwClassInfo* MwGetClassInfo(); // Gets information about the object's class |
− | virtual int GetClassID(); | + | virtual int GetMwClassId(); |
− | virtual bool Is(int classID); // Returns true if the object's class is equal to or derives from | + | virtual bool MwIsKindOf(int classID); // Returns true if the object's class is equal to or derives from the specified class |
− | // the specified class
| + | virtual CMwId* MwGetId(); // Returns meta information about the object, like name and author |
− | virtual SGameCtnIdentifier* GetIdentifier(); // Returns meta information about the object, like name and author | + | virtual void SetIdName(char* psz); // Sets the name of the object (affects MwGetId()) |
− | virtual void SetUID(char* psz); // Sets the name of the object (affects GetIdentifier()) | |
| virtual void m1C(); | | virtual void m1C(); |
− | virtual void m20(); | + | virtual void MwIsUnreferenced(CMwNod*); |
− | virtual void GetPropertyIndirect(CMwStack* pStack, void** ppValue); // Gets the value of a property | + | virtual void VirtualParam_Get(CMwStack* pStack, CMwValueStd* ppValue); // Gets the value of a property |
− | virtual void CallMethodIndirect(CMwStack* pStack, void* pValue); // Calls a method or sets a property | + | virtual void VirtualParam_Set(CMwStack* pStack, void* pValue); // Calls a method or sets a property |
− | virtual void m2C(); | + | virtual void VirtualParam_Add(CMwStack* pStack, void* pValue); |
− | virtual void m30(); | + | virtual void VirtualParam_Sub(CMwStack* pStack, void* pValue); |
− | virtual void ReadWriteChunks(CClassicArchive* pArchive); // (De)serializes the nod from a stream | + | virtual void Archive(CClassicArchive* pArchive); // (De)serializes the nod from a stream |
− | virtual void ReadWriteChunk(CClassicArchive* pArchive, int chunkID); // (De)serializes a single chunk from a stream | + | virtual void Chunk(CClassicArchive* pArchive, int chunkID); // (De)serializes a single chunk from a stream |
| virtual void m3C(); | | virtual void m3C(); |
− | virtual int GetChunkLoadFlags(int chunkID); // Gets chunk-specific flags, e.g. if it is skippable | + | virtual int GetChunkInfo(int chunkID); // Gets chunk-specific flags, e.g. if it is skippable |
− | virtual int GetChunkIDByIndex(int index); // Used during serialization: which chunk to write next | + | virtual int GetUidMessageFromIndex(int index); // Used during serialization: which chunk to write next |
− | virtual int GetNumChunks(); // Used during serialization: how many chunks to write | + | virtual int GetHeaderChunkCount(); // Used during serialization: how many chunks to write |
− | virtual void OnFinishReadWriteChunks(); // Called after the last chunk has been read/written | + | virtual void OnNodLoaded(); // Called after the last chunk has been read/written |
| virtual void m50(); | | virtual void m50(); |
| virtual void m54(); | | virtual void m54(); |
| virtual void m58(); | | virtual void m58(); |
− | virtual void m5C(); | + | virtual void OnCrashDump(CFastString*); |
| virtual void m60(); | | virtual void m60(); |
− | virtual void WriteHeaderChunk(CClassicArchive* pArchive, int* pHeaderChunkID, bool* pbLight); | + | virtual void HeaderChunk(CClassicArchive* pArchive, int* pHeaderChunkID, bool* pbLight); // Writes a header chunk to a stream |
− | // Writes a header chunk to a stream
| |
− | virtual int GetHeaderChunkIDByIndex(int index); // Used during serialization: which header chunk to write next
| |
− | virtual int GetNumHeaderChunks(); // Used during serialization: how many header chunks to write
| |
| | | |
| private: | | private: |
Line 289: |
Line 285: |
| }; | | }; |
| | | |
− | GetPropertyIndirect() and CallMethodIndirect() should not be used directly. These only exist for handling calculated properties (where the value doesn't come directly from a field in the class but is calculated). Instead, use the nonvirtual wrapper methods GetProperty() and CallMethod() which handle both field properties and calculated properties.
| + | VirtualParam_Get() and VirtualParam_Set() should not be used directly. These only exist for handling calculated properties (where the value doesn't come directly from a field in the class but is calculated). Instead, use the nonvirtual wrapper methods GetProperty() and CallMethod() which handle both field properties and calculated properties. |
| | | |
| ===Runtime class inspection=== | | ===Runtime class inspection=== |