mirror of
https://github.com/copyrighttxt/watrbx-game-engine.git
synced 2026-09-04 20:57:49 +00:00
fahhh
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
|
||||
#ifndef _568E368F53F1431aB7D4923F6D45021A
|
||||
#define _568E368F53F1431aB7D4923F6D45021A
|
||||
|
||||
#include "rbx/Debug.h"
|
||||
|
||||
#include "Util/Object.h"
|
||||
#include "Util/Handle.h"
|
||||
|
||||
#include <list>
|
||||
#include <map>
|
||||
#include <set>
|
||||
#include <string>
|
||||
|
||||
class XmlNameValuePair;
|
||||
|
||||
namespace RBX {
|
||||
|
||||
namespace Reflection
|
||||
{
|
||||
class DescribedBase;
|
||||
}
|
||||
|
||||
// Used for streaming
|
||||
class RBXInterface IIDREF
|
||||
{
|
||||
private:
|
||||
friend class IReferenceBinder;
|
||||
virtual void assignIDREF(Reflection::DescribedBase* propertyOwner, const InstanceHandle& handle) const = 0;
|
||||
};
|
||||
|
||||
// Used for streaming
|
||||
class RBXBaseClass IReferenceBinder
|
||||
{
|
||||
public:
|
||||
virtual void announceID(const XmlNameValuePair* valueID, Reflection::DescribedBase* source) = 0;
|
||||
virtual void announceIDREF(const XmlNameValuePair* valueIDREF, Reflection::DescribedBase* propertyOwner, const IIDREF* idref) = 0;
|
||||
virtual bool resolveRefs() = 0;
|
||||
virtual ~IReferenceBinder(){}
|
||||
protected:
|
||||
void assign(const IIDREF* idref, Reflection::DescribedBase* propertyOwner, const InstanceHandle& handle) {
|
||||
idref->assignIDREF(propertyOwner, handle);
|
||||
}
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user