FARGOS/VISTA Object Management Environment Core
..
|
Reference-counted link to OMEoidStorageBase object. More...
#include <OMEoid.h>
Public Types | |
enum | OMErefType { _NOT_SET = 0, internal = 1, external = 5 } |
Public Member Functions | |
OMEoidStorage (class OMEoidStorageInternal *ptr) | |
OMEoidStorage (class OMEoidStorageExternal *ptr) | |
~OMEoidStorage () | |
OMEstring * | encodeOID (const class OMEencodeBuffer *bfr) const |
void | getObjectOID (OMEoidID *arg) const |
const OMEassoc & | getObjectACL () const |
const class OMEoid * | getProxyObject (const OMEstring **method) const |
void | setProxyObject (const class OMEoid &proxy, const OMEstring &method) |
const class OMEobject * | getInstanceInMemory () const |
virtual OMEreferenceCount * | deepCopy () const override |
bool | operator== (const OMEoidStorage &arg) const |
bool | operator!= (const OMEoidStorage &arg) const |
template<typename STREAMTYPE > | |
STREAMTYPE & | outputOnStream (STREAMTYPE &outputStream, int_fast16_t indent=0, bool fullInfo=false) const |
bool | objectIsLocal () const |
void | convertExternalToInternalRef (OMEobject *b) |
![]() | |
OMEreferenceCount () | |
virtual | ~OMEreferenceCount () |
void | addReadOnlyReference () |
int_fast32_t | dropReference () |
OMEreferenceCount * | getUniqueReference () |
int_fast32_t | totalReferences () const OME_ALWAYS_INLINE |
Static Public Member Functions | |
template<typename STREAMTYPE > | |
static STREAMTYPE & | OMEdumpOIDchain (STREAMTYPE &outputStream) |
Internal dereferencing element used by OMEoid. More... | |
static OMEstring * | OMEencodeOID (const OMEoidID &, const OMEassoc &, int encodingVersion) |
static int | OMEdecodeOID (uint_fast32_t version, const OMEstring *encodedData, size_t *offset, OMEoidID *resultOID, OMEassoc **resultACL) |
static OMEoidStorage * | findReference (const OMEoidID *id, const OMEassoc *acl=nullptr, OMEoidStorage **sameEntity=nullptr, bool externalOnly=false) |
static int | convertExternalReferences (const OMEoidID *id, class OMEobject *o) |
Public Attributes | |
OMErefType | referenceType |
Protected Member Functions | |
void | convertInternalToExternalRef (const OMEoidID *entity, const class OMEoidStorageInternal *checkPtr) |
![]() | |
void | lockMe () |
void | unlockMe () |
Protected Attributes | |
class OMEoidStorageBase * | storageRef |
![]() | |
int32_t | references |
int32_t | mutexID |
Private Member Functions | |
void | addLink () |
void | removeLink () |
OMEoidStorage () | |
Private Attributes | |
OMEoidStorage * | nextInChain |
OMEoidStorage * | prevInChain |
Static Private Attributes | |
static OMEoidStorage * | startOfChain = nullptr |
Friends | |
class | OMEoid |
class | OMEoidStorageInternal |
class | OMEoidStorageExternal |
class | OMEreferenceToData< OMEoidStorage > |
Reference-counted link to OMEoidStorageBase object.
|
inlineprivate |
References nextInChain, and prevInChain.
|
explicit |
References addLink(), referenceType, OMEoidStorageInternal::setOwningRecord(), and storageRef.
OMEoidStorage::~OMEoidStorage | ( | ) |
References removeLink(), and storageRef.
|
private |
References OME_CRITICAL_SECTION_OID_REFERENCE, and OMEstartCriticalSection().
Referenced by OMEoidStorage().
Referenced by OMEobjectInstance::importObject().
void OMEoidStorage::convertExternalToInternalRef | ( | OMEobject * | b | ) |
|
protected |
References OMEoidStorageBase::acl, external, internal, OMEoidStorageExternal, referenceType, and storageRef.
Referenced by OMEoidStorageInternal::noteReferencedObjectDeleted().
|
inlineoverridevirtual |
Reimplemented from OMEreferenceCount.
|
inline |
References OMEoidStorageBase::encodeOID(), and storageRef.
|
static |
References external, OMEoidStorageBase::getObjectACL(), internal, nextInChain, OMEoidStorageExternal::oidData, and startOfChain.
Referenced by OMEoid::decodeOID().
|
inline |
References OMEoidStorageBase::getInstanceInMemory(), and storageRef.
|
inline |
References OMEoidStorageBase::getObjectACL(), and storageRef.
|
inline |
References OMEoidStorageBase::getObjectOID(), and storageRef.
References OMEoidStorageBase::getProxyObject(), and storageRef.
Referenced by OMEoid::getProxyObject().
bool OMEoidStorage::objectIsLocal | ( | ) | const |
|
static |
References OMEtype::assoc, OMEoidID::birthplace, OMEentityID::bootTime, OMEoidID::classHashIndex, OMEoidID::classVersionID, OMEentityID::hostNameHash, OMEoidID::instanceIndex, ntohl, OME_ASSOC, OME_NIL, OME_OID, OMEentityID::processID, OMEtype::type, and OMEtype::value.
Referenced by OMEoid::decodeOID().
|
static |
Internal dereferencing element used by OMEoid.
class OMEoidStorage
References nextInChain, outputOnStream(), referenceType, and startOfChain.
|
static |
References OMEoidID::birthplace, OMEentityID::bootTime, OMEoidID::classHashIndex, OMEoidID::classVersionID, OMEencodeBuffer::condenseIntoString(), OMEtype::encode(), OMEentityID::hostNameHash, htonl, OMEoidID::instanceIndex, OME_OID, and OMEentityID::processID.
Referenced by OMEoidStorageExternal::encodeOID().
bool OMEoidStorage::operator!= | ( | const OMEoidStorage & | arg | ) | const |
References external, internal, referenceType, and storageRef.
bool OMEoidStorage::operator== | ( | const OMEoidStorage & | arg | ) | const |
References external, internal, referenceType, and storageRef.
|
private |
References OME_CRITICAL_SECTION_OID_REFERENCE, and OMEstartCriticalSection().
Referenced by ~OMEoidStorage().
References OMEoidStorageBase::setProxyObject(), and storageRef.
Referenced by OMEoid::setProxyObject().
|
friend |
Referenced by OMEoidStorageExternal::setProxyObject().
|
friend |
Referenced by convertInternalToExternalRef().
|
friend |
Referenced by convertExternalToInternalRef().
|
friend |
|
private |
Referenced by findReference(), OMEdumpOIDchain(), and OMEoidStorage().
|
private |
Referenced by OMEoidStorage().
OMErefType OMEoidStorage::referenceType |
Referenced by convertExternalToInternalRef(), convertInternalToExternalRef(), OMEdumpOIDchain(), OMEoidStorage(), operator!=(), OMEoidStorageInternal::operator!=(), OMEoidStorageExternal::operator!=(), operator==(), OMEoidStorageInternal::operator==(), OMEoidStorageExternal::operator==(), and outputOnStream().
|
staticprivate |
Referenced by findReference(), and OMEdumpOIDchain().
|
protected |
Referenced by convertExternalToInternalRef(), convertInternalToExternalRef(), encodeOID(), getInstanceInMemory(), getObjectACL(), getObjectOID(), getProxyObject(), OMEoidStorage(), operator!=(), OMEoidStorageInternal::operator!=(), OMEoidStorageExternal::operator!=(), operator==(), OMEoidStorageInternal::operator==(), OMEoidStorageExternal::operator==(), outputOnStream(), setProxyObject(), and ~OMEoidStorage().
![]() | Generated: Fri Jul 31 2020 18:19:16
Support Information |