Free Electron
Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
fe::RecordAV Class Reference

Reference to an instance of a Layout. More...

#include <RecordAV.h>

Public Member Functions

 RecordAV (I32 ignored=0)
 
 RecordAV (const RecordAV &other)
 
sp< Layout > layout (void) const
 Return the Layout. More...
 
RecordAVoperator= (const RecordAV &r_other)
 
bool operator== (const RecordAV &r_other) const
 
bool operator!= (const RecordAV &r_other) const
 
FE_UWORD idr (void) const
 Return a unique runtime id (id-runtime, idr, since 'rid' has other meaning. More...
 
bool isValid (void) const
 Return true if the Record points to a valid state block. More...
 
bool extractInstance (Instance &instance, const String &attrName)
 
RecordAV clone (void)
 
template<class T >
T & accessAttribute (FE_UWORD aLocator) const
 
void * rawAttribute (FE_UWORD aLocator) const
 

Private Member Functions

void acquire (void)
 
void release (void)
 
void set (FE_UWORD aArrayIndex, sp< LayoutAV > a_spLayout)
 
FE_UWORD arrayIndex (void) const
 

Private Attributes

sp< LayoutAVm_spLayout
 WARNING: this constructor avoids reference counting. More...
 
FE_UWORD m_arrayIndex
 

Static Private Attributes

static const FE_DL_PUBLIC FE_UWORD ms_invalidIndex = (FE_UWORD)(-1)
 

Friends

class WeakRecordAV
 
class LayoutAV
 
class RecordArrayAV
 

Detailed Description

Reference to an instance of a Layout.

A record is simply a pointer to a Layout and a pointer to a state block. A state block is a block of memory with Attributes laid out as specified by a Layout object.

Member Function Documentation

◆ idr()

FE_UWORD fe::RecordAV::idr ( void  ) const
inline

Return a unique runtime id (id-runtime, idr, since 'rid' has other meaning.

◆ isValid()

bool fe::RecordAV::isValid ( void  ) const
inline

Return true if the Record points to a valid state block.

Referenced by fe::Accessor< fe::sp< fe::RecordGroup > >::operator()().

◆ layout()

sp< Layout > fe::RecordAV::layout ( void  ) const
inline

Return the Layout.

Member Data Documentation

◆ m_spLayout

sp<LayoutAV> fe::RecordAV::m_spLayout
private

WARNING: this constructor avoids reference counting.


The documentation for this class was generated from the following files: