IAddInfoContainer Class Referenceabstract

Interface of an add info container object (used by geometry objects) More...

#include "IAddInfoContainer.hpp"

+ Inheritance diagram for IAddInfoContainer:

Public Member Functions

virtual bool hasInfo () const =0
 
virtual const IAddInfoinfo () const =0
 
virtual IAddInfoinfo ()=0
 
virtual AddInfoHandle getAddInfo () const =0
 
virtual void setAddInfo (const AddInfoHandle &)=0
 
virtual void setAddInfoView (const AddInfoLayoutHandle &layout, bool readOnly)=0
 applies a certain layout view onto the current addinfo object More...
 
virtual void restoreAddInfoFullLayout ()=0
 removes any view layout and sets the true storage layout as (internal) layout
 
virtual void cloneAddInfoView (const AddInfoLayoutHandle &layout, bool readOnly) const =0
 internal creates a new addinfo object with the provide view layout that refers to the same storage object More...
 
virtual void cloneAddInfoView (const AddInfoLayoutHandle &viewLayout, const AddInfoLayoutHandle &dataLayout) const =0
 internal creates a new addinfo object with the provide view layout and secures that the storage object contains the dataLayout More...
 
virtual void cloneAddInfoFullLayout () const =0
 internal creates a new addinfo object using the true storage layout that referring to the same storage object
 
virtual bool getAsDoubleByView (const AddInfoLayoutHandle &, unsigned index, double &value) const =0
 
virtual bool getAsInt64ByView (const AddInfoLayoutHandle &, unsigned index, int64_t &value) const =0
 
virtual void eraseLayout (const AddInfoLayoutHandle &)=0
 removes the specified attributs from current object
 

Detailed Description

Interface of an add info container object (used by geometry objects)

Managing attributes, layout and views is a core feature of the DM library. Please refer to the Managing Attributes section for implementation concepts and to the examples section (attribute handling) for further details.

Member Function Documentation

◆ cloneAddInfoView() [1/2]

virtual void cloneAddInfoView ( const AddInfoLayoutHandle layout,
bool  readOnly 
) const
pure virtual

internal creates a new addinfo object with the provide view layout that refers to the same storage object

for further details see IAddInfo::cloneView

Parameters
[in]layoutview layout that should be set
[in]readOnlyflag if the layout of storage object should be changed, in case the view layout is not a true subset of the storage layout

◆ cloneAddInfoView() [2/2]

virtual void cloneAddInfoView ( const AddInfoLayoutHandle viewLayout,
const AddInfoLayoutHandle dataLayout 
) const
pure virtual

internal creates a new addinfo object with the provide view layout and secures that the storage object contains the dataLayout

for further details see IAddInfo::cloneView

Parameters
[in]viewLayoutview layout that should be set
[in]dataLayoutdefines columns that have to exist in the storage object

◆ getAsDoubleByView()

virtual bool getAsDoubleByView ( const AddInfoLayoutHandle ,
unsigned  index,
double &  value 
) const
pure virtual

optimised variante to access a view column

Returns
true is value is not null otherwise false

◆ setAddInfoView()

virtual void setAddInfoView ( const AddInfoLayoutHandle layout,
bool  readOnly 
)
pure virtual

applies a certain layout view onto the current addinfo object

for further details see IAddInfo::setView

Parameters
[in]layoutview layout that should be set
[in]readOnlyflag if the layout of storage object should be changed, in case the view layout is not a true subset of the storage layout