SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE > Class Template Reference

#include <SECompartmentGraph.h>

Inherits Loggable.

Public Member Functions

virtual ~SECompartmentGraph ()
 
virtual void Clear ()
 
virtual std::string GetName () const
 
virtual void AddCompartment (CompartmentType &cmpt)
 
virtual void ForceAddCompartment (CompartmentType &cmpt)
 
virtual CompartmentType * GetCompartment (const std::string &name)
 
virtual const CompartmentType * GetCompartment (const std::string &name) const
 
virtual const std::vector< CompartmentType * > & GetCompartments () const
 
virtual void RemoveCompartment (const CompartmentType &cmpt)
 
virtual void RemoveCompartment (const std::string &name)
 
virtual void AddLink (CompartmentLinkType &link)
 
virtual void ForceAddLink (CompartmentLinkType &link)
 
virtual CompartmentLinkType * GetLink (const std::string &name)
 
virtual const CompartmentLinkType * GetLink (const std::string &name) const
 
virtual const std::vector< CompartmentLinkType * > & GetLinks () const
 
virtual void RemoveLink (const CompartmentLinkType &link)
 
virtual void RemoveLink (const std::string &name)
 
- Public Member Functions inherited from Loggable
 Loggable (Logger *logger=nullptr)
 
 Loggable (std::string const &logfile)
 
virtual ~Loggable ()
 
virtual LoggerGetLogger () const
 
virtual void SetLogger (Logger &logger)
 
virtual void Debug (std::string const &msg) const
 
virtual void Debug (std::stringstream &msg) const
 
virtual void Debug (std::ostream &msg) const
 
virtual void Info (std::string const &msg) const
 
virtual void Info (std::stringstream &msg) const
 
virtual void Info (const std::stringstream &msg) const
 
virtual void Info (std::ostream &msg) const
 
virtual void Warning (std::string const &msg) const
 
virtual void Warning (std::stringstream &msg) const
 
virtual void Warning (std::ostream &msg) const
 
virtual void Error (std::string const &msg) const
 
virtual void Error (std::stringstream &msg) const
 
virtual void Error (std::ostream &msg) const
 
virtual void Fatal (std::string const &msg) const
 
virtual void Fatal (std::stringstream &msg) const
 
virtual void Fatal (std::ostream &msg) const
 

Protected Member Functions

 SECompartmentGraph (const std::string &name, Logger *logger)
 

Protected Attributes

std::string m_Name
 
std::vector< CompartmentType * > m_Compartments
 
std::vector< CompartmentLinkType * > m_CompartmentLinks
 
- Protected Attributes inherited from Loggable
bool myLogger
 
Loggerm_Logger
 

Friends

class PBCompartment
 

Constructor & Destructor Documentation

◆ SECompartmentGraph()

template<COMPARTMENT_GRAPH_TEMPLATE >
SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::SECompartmentGraph ( const std::string &  name,
Logger logger 
)
protected

◆ ~SECompartmentGraph()

template<COMPARTMENT_GRAPH_TEMPLATE >
virtual SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::~SECompartmentGraph ( )
virtual

Member Function Documentation

◆ AddCompartment()

template<COMPARTMENT_GRAPH_TEMPLATE >
virtual void SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::AddCompartment ( CompartmentType &  cmpt)
virtual

◆ AddLink()

template<COMPARTMENT_GRAPH_TEMPLATE >
virtual void SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::AddLink ( CompartmentLinkType &  link)
virtual

◆ Clear()

◆ ForceAddCompartment()

template<COMPARTMENT_GRAPH_TEMPLATE >
virtual void SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::ForceAddCompartment ( CompartmentType &  cmpt)
virtual

◆ ForceAddLink()

template<COMPARTMENT_GRAPH_TEMPLATE >
virtual void SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::ForceAddLink ( CompartmentLinkType &  link)
virtual

◆ GetCompartment() [1/2]

template<COMPARTMENT_GRAPH_TEMPLATE >
virtual CompartmentType * SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::GetCompartment ( const std::string &  name)
virtual

◆ GetCompartment() [2/2]

template<COMPARTMENT_GRAPH_TEMPLATE >
virtual const CompartmentType * SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::GetCompartment ( const std::string &  name) const
virtual

◆ GetCompartments()

template<COMPARTMENT_GRAPH_TEMPLATE >
virtual const std::vector< CompartmentType * > & SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::GetCompartments ( ) const
virtual

◆ GetLink() [1/2]

template<COMPARTMENT_GRAPH_TEMPLATE >
virtual CompartmentLinkType * SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::GetLink ( const std::string &  name)
virtual

◆ GetLink() [2/2]

template<COMPARTMENT_GRAPH_TEMPLATE >
virtual const CompartmentLinkType * SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::GetLink ( const std::string &  name) const
virtual

◆ GetLinks()

template<COMPARTMENT_GRAPH_TEMPLATE >
virtual const std::vector< CompartmentLinkType * > & SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::GetLinks ( ) const
virtual

◆ GetName()

◆ RemoveCompartment() [1/2]

template<COMPARTMENT_GRAPH_TEMPLATE >
virtual void SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::RemoveCompartment ( const CompartmentType &  cmpt)
virtual

◆ RemoveCompartment() [2/2]

template<COMPARTMENT_GRAPH_TEMPLATE >
virtual void SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::RemoveCompartment ( const std::string &  name)
virtual

◆ RemoveLink() [1/2]

template<COMPARTMENT_GRAPH_TEMPLATE >
virtual void SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::RemoveLink ( const CompartmentLinkType &  link)
virtual

◆ RemoveLink() [2/2]

template<COMPARTMENT_GRAPH_TEMPLATE >
virtual void SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::RemoveLink ( const std::string &  name)
virtual

Friends And Related Function Documentation

◆ PBCompartment

template<COMPARTMENT_GRAPH_TEMPLATE >
friend class PBCompartment
friend

Member Data Documentation

◆ m_CompartmentLinks

template<COMPARTMENT_GRAPH_TEMPLATE >
std::vector<CompartmentLinkType*> SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::m_CompartmentLinks
protected

◆ m_Compartments

template<COMPARTMENT_GRAPH_TEMPLATE >
std::vector<CompartmentType*> SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::m_Compartments
protected

◆ m_Name

template<COMPARTMENT_GRAPH_TEMPLATE >
std::string SECompartmentGraph< COMPARTMENT_GRAPH_TEMPLATE >::m_Name
protected

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.