FARGOS/VISTA Object Management Environment Core  ..
FARGOS/VISTA Object Management Environment Core Table of Contents
OMEoidStorage Class Referencefinal

Reference-counted link to OMEoidStorageBase object. More...

#include <OMEoid.h>

+ Inheritance diagram for OMEoidStorage:

Public Types

enum  OMErefType { _NOT_SET = 0, internal = 1, external = 5 }
 

Public Member Functions

 OMEoidStorage (class OMEoidStorageInternal *ptr)
 
 OMEoidStorage (class OMEoidStorageExternal *ptr)
 
 ~OMEoidStorage ()
 
OMEstringencodeOID (const class OMEencodeBuffer *bfr) const
 
void getObjectOID (OMEoidID *arg) const
 
const OMEassocgetObjectACL () const
 
const class OMEoidgetProxyObject (const OMEstring **method) const
 
void setProxyObject (const class OMEoid &proxy, const OMEstring &method)
 
const class OMEobjectgetInstanceInMemory () const
 
virtual OMEreferenceCountdeepCopy () 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)
 
- Public Member Functions inherited from OMEreferenceCount
 OMEreferenceCount ()
 
virtual ~OMEreferenceCount ()
 
void addReadOnlyReference ()
 
int_fast32_t dropReference ()
 
OMEreferenceCountgetUniqueReference ()
 
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 OMEstringOMEencodeOID (const OMEoidID &, const OMEassoc &, int encodingVersion)
 
static int OMEdecodeOID (uint_fast32_t version, const OMEstring *encodedData, size_t *offset, OMEoidID *resultOID, OMEassoc **resultACL)
 
static OMEoidStoragefindReference (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)
 
- Protected Member Functions inherited from OMEreferenceCount
void lockMe ()
 
void unlockMe ()
 

Protected Attributes

class OMEoidStorageBasestorageRef
 
- Protected Attributes inherited from OMEreferenceCount
int32_t references
 
int32_t mutexID
 

Private Member Functions

void addLink ()
 
void removeLink ()
 
 OMEoidStorage ()
 

Private Attributes

OMEoidStoragenextInChain
 
OMEoidStorageprevInChain
 

Static Private Attributes

static OMEoidStoragestartOfChain = nullptr
 

Friends

class OMEoid
 
class OMEoidStorageInternal
 
class OMEoidStorageExternal
 
class OMEreferenceToData< OMEoidStorage >
 

Detailed Description

Reference-counted link to OMEoidStorageBase object.

Member Enumeration Documentation

◆ OMErefType

Enumerator
_NOT_SET 
internal 
external 

Constructor & Destructor Documentation

◆ OMEoidStorage() [1/2]

OMEoidStorage::OMEoidStorage ( )
inlineprivate

References nextInChain, and prevInChain.

◆ OMEoidStorage() [2/2]

OMEoidStorage::OMEoidStorage ( class OMEoidStorageInternal ptr)
explicit

◆ ~OMEoidStorage()

OMEoidStorage::~OMEoidStorage ( )

References removeLink(), and storageRef.

Member Function Documentation

◆ addLink()

void OMEoidStorage::addLink ( )
private

◆ convertExternalReferences()

int OMEoidStorage::convertExternalReferences ( const OMEoidID id,
class OMEobject o 
)
static

◆ convertExternalToInternalRef()

◆ convertInternalToExternalRef()

void OMEoidStorage::convertInternalToExternalRef ( const OMEoidID entity,
const class OMEoidStorageInternal checkPtr 
)
protected

◆ deepCopy()

virtual OMEreferenceCount* OMEoidStorage::deepCopy ( ) const
inlineoverridevirtual

Reimplemented from OMEreferenceCount.

◆ encodeOID()

OMEstring* OMEoidStorage::encodeOID ( const class OMEencodeBuffer bfr) const
inline

◆ findReference()

OMEoidStorage * OMEoidStorage::findReference ( const OMEoidID id,
const OMEassoc acl = nullptr,
OMEoidStorage **  sameEntity = nullptr,
bool  externalOnly = false 
)
static

◆ getInstanceInMemory()

const class OMEobject* OMEoidStorage::getInstanceInMemory ( ) const
inline

◆ getObjectACL()

const OMEassoc& OMEoidStorage::getObjectACL ( ) const
inline

◆ getObjectOID()

void OMEoidStorage::getObjectOID ( OMEoidID arg) const
inline

◆ getProxyObject()

const class OMEoid* OMEoidStorage::getProxyObject ( const OMEstring **  method) const
inline

◆ objectIsLocal()

bool OMEoidStorage::objectIsLocal ( ) const

◆ OMEdecodeOID()

int OMEoidStorage::OMEdecodeOID ( uint_fast32_t  version,
const OMEstring encodedData,
size_t *  offset,
OMEoidID resultOID,
OMEassoc **  resultACL 
)
static

◆ OMEdumpOIDchain()

template<typename STREAMTYPE >
STREAMTYPE & OMEoidStorage::OMEdumpOIDchain ( STREAMTYPE &  o)
static

Internal dereferencing element used by OMEoid.

class OMEoidStorage

References nextInChain, outputOnStream(), referenceType, and startOfChain.

◆ OMEencodeOID()

◆ operator!=()

bool OMEoidStorage::operator!= ( const OMEoidStorage arg) const

◆ operator==()

bool OMEoidStorage::operator== ( const OMEoidStorage arg) const

◆ removeLink()

void OMEoidStorage::removeLink ( )
private

◆ setProxyObject()

void OMEoidStorage::setProxyObject ( const class OMEoid proxy,
const OMEstring method 
)
inline

Friends And Related Function Documentation

◆ OMEoid

friend class OMEoid
friend

◆ OMEoidStorageExternal

friend class OMEoidStorageExternal
friend

◆ OMEoidStorageInternal

friend class OMEoidStorageInternal
friend

◆ OMEreferenceToData< OMEoidStorage >

friend class OMEreferenceToData< OMEoidStorage >
friend

Member Data Documentation

◆ nextInChain

OMEoidStorage* OMEoidStorage::nextInChain
private

◆ prevInChain

OMEoidStorage* OMEoidStorage::prevInChain
private

Referenced by OMEoidStorage().

◆ referenceType

◆ startOfChain

OMEoidStorage * OMEoidStorage::startOfChain = nullptr
staticprivate

Referenced by findReference(), and OMEdumpOIDchain().

◆ storageRef


The documentation for this class was generated from the following files:
Generated: Fri Jul 31 2020 18:19:16
Support Information