struct CCL::Persistence::IPersistentObject

Overview

Interface for classes that are stored in a PersistentStore. More…

#include <ipersistentstore.h>

struct IPersistentObject: public CCL::IUnknown
{
    // methods

    virtual void CCL_API connectPersistentOwner (
        IPersistentOwner* owner,
        ObjectID oid
    ) = 0;

    virtual ObjectID CCL_API getObjectID () = 0;
    virtual void CCL_API storeMembers (IObjectState& state) const = 0;
    virtual void CCL_API restoreMembers (IObjectState& state) = 0;
};

Inherited Members

public:
    // methods

    virtual tresult CCL_API queryInterface (UIDRef iid, void** ptr) = 0;
    virtual unsigned int CCL_API retain () = 0;
    virtual unsigned int CCL_API release () = 0;

Detailed Documentation

Interface for classes that are stored in a PersistentStore.

Methods

virtual void CCL_API connectPersistentOwner (
    IPersistentOwner* owner,
    ObjectID oid
) = 0

Connect object to an owner.

virtual ObjectID CCL_API getObjectID () = 0

Get object id passed in connectPersistentOwner.

virtual void CCL_API storeMembers (IObjectState& state) const = 0

Store member values into state.

virtual void CCL_API restoreMembers (IObjectState& state) = 0

Restore member values from state.