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

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

#include <RecordSB.h>

Public Member Functions

 RecordSB (I32 ignored=0)
 
 RecordSB (const RecordSB &other)
 
RecordSBoperator= (const RecordSB &r_other)
 
bool operator== (const RecordSB &r_other) const
 
bool operator!= (const RecordSB &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...
 
sp< Layout > layout (void) const
 Return the Layout. More...
 
bool extractInstance (Instance &instance, const String &attrName)
 
RecordSB clone (void)
 
template<class T >
T & accessAttribute (FE_UWORD aLocator) const
 
void * rawAttribute (FE_UWORD aLocator) const
 

Private Member Functions

void * data (void) const
 Return the state block. More...
 
LayoutSBrawLayout (void) const
 Return a raw pointer to the Layout. More...
 
void acquire (void)
 
void release (void)
 
void set (void *datablock)
 Set the state block. More...
 

Private Attributes

sp< LayoutSBm_spLayout
 
void * m_pStateBlock
 

Friends

class WeakRecordSB
 
class LayoutSB
 
class RecordArraySB
 
class SegmentStore
 

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

◆ data()

void * fe::RecordSB::data ( void  ) const
inlineprivate

◆ idr()

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

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

◆ isValid()

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

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

Referenced by fe::RecordCookbook::cook_internal(), fe::ext::RecordView::finalize(), and fe::ext::RecordView::produce().

◆ layout()

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

Return the Layout.

Referenced by fe::Scope::finalize().

◆ rawLayout()

LayoutSB * fe::RecordSB::rawLayout ( void  ) const
inlineprivate

Return a raw pointer to the Layout.

Mainly intended for Accessor for speed.

◆ set()

void fe::RecordSB::set ( void *  datablock)
inlineprivate

Set the state block.


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