COPASI API  4.40.278
CLGraphicalObject Class Reference

#include <CLGraphicalObject.h>

Inheritance diagram for CLGraphicalObject:
[legend]

Public Member Functions

virtual bool applyData (const CData &data, CUndoData::CChangeSet &changes)
 
 CLGraphicalObject (const CLGraphicalObject &src, const CDataContainer *pParent)
 
 CLGraphicalObject (const GraphicalObject &sbml, std::map< std::string, std::string > &layoutmap, const CDataContainer *pParent=NO_PARENT)
 
 CLGraphicalObject (const std::string &name="GraphicalObject", const CDataContainer *pParent=NO_PARENT)
 
virtual CLGraphicalObjectclone () const
 
virtual void exportToSBML (GraphicalObject *sbmlobject, const std::map< const CDataObject *, SBase * > &copasimodelmap, std::map< std::string, const SBase * > &sbmlIDs) const
 
CLBoundingBoxgetBoundingBox ()
 
const CLBoundingBoxgetBoundingBox () const
 
const CLDimensionsgetDimensions () const
 
const C_FLOAT64getHeight () const
 
virtual const std::string & getKey () const
 
CDataObjectgetModelObject () const
 
std::string getModelObjectDisplayName (bool regular=true, bool richtext=false) const
 
const std::string & getModelObjectKey () const
 
std::string getModelObjectName () const
 
const std::string & getObjectRole () const
 
const CLPointgetPosition () const
 
const C_FLOAT64getWidth () const
 
const C_FLOAT64getX () const
 
const C_FLOAT64getY () const
 
bool hasValidModelReference () const
 
virtual void moveBy (const CLPoint &p)
 
CLGraphicalObjectoperator= (const CLGraphicalObject &rhs)
 
void print (std::ostream *ostream) const
 
void setBoundingBox (const CLBoundingBox &bb)
 
void setDimensions (const CLDimensions &d)
 
void setHeight (const C_FLOAT64 &h)
 
void setModelObjectKey (const std::string &k)
 
void setObjectRole (const std::string &role)
 
void setPosition (const CLPoint &p)
 
void setWidth (const C_FLOAT64 &w)
 
void setX (const C_FLOAT64 &x)
 
void setY (const C_FLOAT64 &y)
 
virtual CData toData () const
 
 ~CLGraphicalObject ()
 
- Public Member Functions inherited from CLBase
 CLBase ()
 
 CLBase (const CLBase &b)
 
 CLBase (const SBase &)
 
const std::string & getTag () const
 
bool hasTag () const
 
void setTag (const std::string &tag)
 
virtual ~CLBase ()
 
- Public Member Functions inherited from CDataContainer
virtual bool add (CDataObject *pObject, const bool &adopt=true)
 
virtual bool appendDeletedDependentData (CUndoData &undoData) const
 
 CDataContainer (const CDataContainer &src, const CDataContainer *pParent)
 
 CDataContainer (const std::string &name, const CDataContainer *pParent=NO_PARENT, const std::string &type="CN", const CFlags< Flag > &flag=CFlags< Flag >::None)
 
virtual void createUndoData (CUndoData &undoData, const CUndoData::Type &type, const CData &oldData=CData(), const CCore::Framework &framework=CCore::Framework::ParticleNumbers) const override
 
virtual std::string getChildObjectUnits (const CDataObject *pObject) const
 
void getDescendants (CDataObject::DataObjectSet &descendants, const bool &recursive=false) const
 
virtual size_t getIndex (const CDataObject *pObject) const
 
virtual const CObjectInterfacegetObject (const CCommonName &cn) const override
 
virtual objectMapgetObjects ()
 
virtual const objectMapgetObjects () const
 
virtual const std::string getUnits () const override
 
virtual const CDataObjectgetValueObject () const override
 
virtual CUndoObjectInterfaceinsert (const CData &data) override
 
void objectRenamed (CDataObject *pObject, const std::string &oldName)
 
virtual bool remove (CDataObject *pObject)
 
virtual ~CDataContainer ()
 
- Public Member Functions inherited from CDataObject
void addIssue (const CIssue &issue)
 
void addReference (const CDataContainer *pReference)
 
virtual void calculateValue () override
 
 CDataObject (const CDataObject &src, const CDataContainer *pParent=NULL)
 
virtual void destruct () override
 
virtual CCommonName getCN () const override
 
virtual const CDataObjectgetDataObject () const override
 
CDataContainergetObjectAncestor (const std::string &type) const
 
CDataModelgetObjectDataModel () const
 
virtual std::string getObjectDisplayName () const override
 
const CObjectInterfacegetObjectFromCN (const CCommonName &cn) const
 
const std::string & getObjectName () const
 
CDataContainergetObjectParent () const
 
const std::string & getObjectType () const
 
virtual const CObjectInterface::ObjectSetgetPrerequisites () const override
 
virtual const CValiditygetValidity () const override
 
virtual void * getValuePointer () const override
 
bool hasFlag (const Flag &flag) const
 
virtual bool isPrerequisiteForContext (const CObjectInterface *pObject, const CCore::SimulationContextFlag &context, const CObjectInterface::ObjectSet &changedObjects) const override
 
bool prerequisitsContains (const DataObjectSet &objects) const
 
void removeIssue (const CIssue &issue)
 
void removeReference (const CDataContainer *pReference)
 
bool setObjectName (const std::string &name)
 
virtual bool setObjectParent (const CDataContainer *pParent)
 
void validityChanged (const CValidity &changedValidity) override
 
void validityRemoved (const CValidity &changedValidity)
 
virtual ~CDataObject ()
 
- Public Member Functions inherited from CObjectInterface
 CObjectInterface ()
 
 CObjectInterface (const CObjectInterface &src)
 
virtual ~CObjectInterface ()
 
- Public Member Functions inherited from CUndoObjectInterface
 CUndoObjectInterface ()
 
 CUndoObjectInterface (const CUndoObjectInterface &src)
 
bool generateUuid ()
 
const xg::Guid & getUuid () const
 
bool setUuid (const std::string &uuid)
 
bool setUuid (const xg::Guid &uuid)
 
virtual void updateIndex (const size_t &index, const CUndoObjectInterface *pUndoObject)
 
virtual ~CUndoObjectInterface ()
 

Static Public Member Functions

static CLGraphicalObjectfromData (const CData &data, CUndoObjectInterface *pParent)
 
- Static Public Member Functions inherited from CDataContainer
static CDataContainerfromData (const CData &data, CUndoObjectInterface *pParent)
 
- Static Public Member Functions inherited from CDataObject
static CDataObjectfromData (const CData &data, CUndoObjectInterface *pParent)
 
static void sanitizeObjectName (std::string &name)
 
- Static Public Member Functions inherited from CObjectInterface
static const CDataObjectDataObject (const CObjectInterface *pInterface)
 
static CObjectInterfaceGetObjectFromCN (const ContainerList &listOfContainer, const CCommonName &objName)
 
- Static Public Member Functions inherited from CUndoObjectInterface
template<class CType >
static CType * fromData (const CData &, CUndoObjectInterface *)
 

Protected Member Functions

 CLGraphicalObject (const CLGraphicalObject &src)
 
- Protected Member Functions inherited from CDataContainer
template<class CType >
CDataMatrixReference< CType > * addMatrixReference (const std::string &name, CType &reference, const CFlags< Flag > &flag=CFlags< Flag >::None)
 
template<class CType >
CDataObjectReference< CType > * addObjectReference (const std::string &name, CType &reference, const CFlags< Flag > &flag=CFlags< Flag >::None)
 
template<class CType >
CDataVectorReference< CType > * addVectorReference (const std::string &name, CType &reference, const CFlags< Flag > &flag=CFlags< Flag >::None)
 
 CDataContainer (const CDataContainer &src)
 
void initObjects ()
 
- Protected Member Functions inherited from CDataObject
 CDataObject ()
 
 CDataObject (const std::string &name, const CDataContainer *pParent=static_cast< CDataContainer * >((void *) 0), const std::string &type="CN", const CFlags< Flag > &flag=CFlags< Flag >::None)
 

Protected Attributes

CLBoundingBox mBBox
 
std::string mKey
 
std::string mModelObjectKey
 
std::string mObjectRole
 
- Protected Attributes inherited from CLBase
std::string mTag
 
- Protected Attributes inherited from CDataContainer
objectMap mObjects
 
- Protected Attributes inherited from CDataObject
ObjectSet mPrerequisits
 
std::set< CDataContainer * > mReferences
 
- Protected Attributes inherited from CObjectInterface
CValidity mValidity
 

Friends

std::ostream & operator<< (std::ostream &os, const CLGraphicalObject &g)
 

Additional Inherited Members

- Public Types inherited from CDataContainer
typedef CDataObjectMap objectMap
 
- Public Types inherited from CDataObject
typedef std::set< const CDataObject * > DataObjectSet
 
enum  Flag {
  Container , Vector , Matrix , NameVector ,
  Reference , ValueBool , ValueInt , ValueInt64 ,
  ValueDbl , NonUniqueName , StaticString , ValueString ,
  Separator , DisplayName , ModelEntity , Array ,
  DataModel , Root , Gui , __SIZE
}
 
- Public Types inherited from CObjectInterface
typedef std::vector< const CDataContainer * > ContainerList
 
typedef std::set< const CObjectInterface * > ObjectSet
 
- Static Public Attributes inherited from CDataContainer
static const CObjectInterface::ContainerList EmptyList
 

Detailed Description

This is the base class for the layout objects in copasi. It is a CDataObject. It also has a key (which is used if one layout object refers to another one) It provides the mechanism for refering to a copasi model object by key. This needs to be specialized in the derived classes

Constructor & Destructor Documentation

◆ CLGraphicalObject() [1/4]

CLGraphicalObject::CLGraphicalObject ( const CLGraphicalObject src)
protected

Referenced by clone(), and fromData().

◆ CLGraphicalObject() [2/4]

CLGraphicalObject::CLGraphicalObject ( const std::string &  name = "GraphicalObject",
const CDataContainer pParent = NO_PARENT 
)

◆ CLGraphicalObject() [3/4]

CLGraphicalObject::CLGraphicalObject ( const CLGraphicalObject src,
const CDataContainer pParent 
)

◆ CLGraphicalObject() [4/4]

CLGraphicalObject::CLGraphicalObject ( const GraphicalObject &  sbml,
std::map< std::string, std::string > &  layoutmap,
const CDataContainer pParent = NO_PARENT 
)

constructor from libsbml object

References mKey, and mObjectRole.

◆ ~CLGraphicalObject()

CLGraphicalObject::~CLGraphicalObject ( )

Member Function Documentation

◆ applyData()

bool CLGraphicalObject::applyData ( const CData data,
CUndoData::CChangeSet changes 
)
virtual

Apply the provided data to the object

Parameters
constCData & data
Returns
bool success

Reimplemented from CDataContainer.

Reimplemented in CLReactionGlyph, CLGeneralGlyph, CLMetabReferenceGlyph, CLReferenceGlyph, CLTextGlyph, CLCompartmentGlyph, and CLMetabGlyph.

References fatalError.

◆ clone()

virtual CLGraphicalObject* CLGraphicalObject::clone ( ) const
inlinevirtual

◆ exportToSBML()

void CLGraphicalObject::exportToSBML ( GraphicalObject *  sbmlobject,
const std::map< const CDataObject *, SBase * > &  copasimodelmap,
std::map< std::string, const SBase * > &  sbmlIDs 
) const
virtual

◆ fromData()

CLGraphicalObject * CLGraphicalObject::fromData ( const CData data,
CUndoObjectInterface pParent 
)
static

Static method to create a CDataObject based on the provided data

Parameters
constCData & data
Returns
CLGraphicalObject * pDataObject

References CLGraphicalObject(), CData::getProperty(), NO_PARENT, CData::OBJECT_NAME, and CDataValue::toString().

◆ getBoundingBox() [1/2]

CLBoundingBox& CLGraphicalObject::getBoundingBox ( )
inline

References mBBox.

◆ getBoundingBox() [2/2]

◆ getDimensions()

const CLDimensions& CLGraphicalObject::getDimensions ( ) const
inline

◆ getHeight()

◆ getKey()

◆ getModelObject()

◆ getModelObjectDisplayName()

std::string CLGraphicalObject::getModelObjectDisplayName ( bool  regular = true,
bool  richtext = false 
) const

if the graphical object refers to a model object this method will return the display name of that object.

References getModelObject(), and CDataObject::getObjectName().

Referenced by CLTextGlyph::getText().

◆ getModelObjectKey()

const std::string& CLGraphicalObject::getModelObjectKey ( ) const
inline

◆ getModelObjectName()

std::string CLGraphicalObject::getModelObjectName ( ) const

if the graphical object refers to a model object this method will return the name of that object.

References getModelObject(), and CDataObject::getObjectName().

◆ getObjectRole()

◆ getPosition()

◆ getWidth()

◆ getX()

◆ getY()

◆ hasValidModelReference()

bool CLGraphicalObject::hasValidModelReference ( ) const

This method is used for the export of several layout elements. Layout elements can reference model elements, but when a referenced model element is deleted, the layout is not infomred about this yet, so we end up with dangling references. If the key belongs to an object in the same datamodel, true is returned, else false is returned.

This method is used for the export of several layout elements. Layout elements can reference model elements, but when a referenced model element is deleted, the layout is not infomred about this yet, so we end up with dnagling references. In order to not write these dangling references to file, we check if the reference belongs to a valid object in the same datamodel. If not, we issue a warning. This warning is only issued once during a save process.

If the key belongs to an object in the same datamodel, true is returned, else false is returned.

References CKeyFactory::get(), CRootContainer::getKeyFactory(), CDataObject::getObjectParent(), and mModelObjectKey.

Referenced by getModelObject(), and CCopasiXML::saveLayoutList().

◆ moveBy()

void CLGraphicalObject::moveBy ( const CLPoint p)
virtual

Reimplemented from CLBase.

Reimplemented in CLReactionGlyph, CLGeneralGlyph, and CLGlyphWithCurve.

References mBBox, and CLBoundingBox::moveBy().

Referenced by CLayout::moveBy(), and CLGlyphWithCurve::moveBy().

◆ operator=()

◆ print()

void CLGraphicalObject::print ( std::ostream *  ostream) const
virtual

This is the output method for any object. The default implementation provided with CDataObject uses the ostream operator<< of the object to print the object.To override this default behavior one needs to reimplement the virtual print function.

Parameters
std::ostream* ostream

Reimplemented from CDataObject.

Reimplemented in CLReactionGlyph, CLGeneralGlyph, CLMetabReferenceGlyph, CLReferenceGlyph, and CLGlyphWithCurve.

◆ setBoundingBox()

◆ setDimensions()

void CLGraphicalObject::setDimensions ( const CLDimensions d)
inline

◆ setHeight()

void CLGraphicalObject::setHeight ( const C_FLOAT64 h)
inline

◆ setModelObjectKey()

◆ setObjectRole()

◆ setPosition()

◆ setWidth()

void CLGraphicalObject::setWidth ( const C_FLOAT64 w)
inline

◆ setX()

void CLGraphicalObject::setX ( const C_FLOAT64 x)
inline

◆ setY()

void CLGraphicalObject::setY ( const C_FLOAT64 y)
inline

◆ toData()

CData CLGraphicalObject::toData ( ) const
virtual

Retrieve the data describing the object

Returns
CData data

Reimplemented from CDataContainer.

Reimplemented in CLReactionGlyph, CLGeneralGlyph, CLMetabReferenceGlyph, CLReferenceGlyph, CLTextGlyph, CLCompartmentGlyph, and CLMetabGlyph.

References fatalError.

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const CLGraphicalObject g 
)
friend

insert operator

Member Data Documentation

◆ mBBox

◆ mKey

std::string CLGraphicalObject::mKey
protected

The key of the layout object itself

Referenced by CLGraphicalObject(), getKey(), and ~CLGraphicalObject().

◆ mModelObjectKey

std::string CLGraphicalObject::mModelObjectKey
protected

The key of an object of the COPASI model. This is not used in this base class. It is provided as a service for the derived classes

Referenced by getModelObject(), getModelObjectKey(), hasValidModelReference(), operator=(), and setModelObjectKey().

◆ mObjectRole

std::string CLGraphicalObject::mObjectRole
protected

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