Mechanics of Defect Evolution Library
Loading...
Searching...
No Matches
model::NetworkLink< Derived > Class Template Reference

#include <NetworkLink.h>

Inheritance diagram for model::NetworkLink< Derived >:
Collaboration diagram for model::NetworkLink< Derived >:

Public Types

typedef TypeTraits< Derived >::LoopNodeType LoopNodeType
typedef TypeTraits< Derived >::NetworkNodeType NetworkNodeType
typedef TypeTraits< Derived >::LoopLinkType LoopLinkType
typedef TypeTraits< Derived >::LoopType LoopType
typedef TypeTraits< Derived >::LoopNetworkType LoopNetworkType
typedef NetworkBase< Derived, std::pair< size_t, size_t > > NetworkBaseType
typedef std::set< LoopLinkType * > LoopLinkContainerType
Public Types inherited from model::NetworkBase< Derived, std::pair< size_t, size_t > >
typedef std::pair< size_t, size_t > KeyType

Public Member Functions

 NetworkLink (LoopNetworkType *const loopNetwork, const std::shared_ptr< NetworkNodeType > &nI, const std::shared_ptr< NetworkNodeType > &nJ)
 ~NetworkLink ()
std::set< LoopType * > loops () const
std::set< size_t > loopIDs () const
LoopLinkContainerType & loopLinks ()
const LoopLinkContainerType & loopLinks () const
void addLoopLink (LoopLinkType *const pL)
void removeLoopLink (LoopLinkType *const pL)
std::string tag () const
Public Member Functions inherited from model::StaticID< Derived >
 StaticID ()
 StaticID (const StaticID &)
Public Member Functions inherited from model::CRTP< Derived >
 CRTP ()
 The default constructor.
Public Member Functions inherited from model::NetworkBase< Derived, std::pair< size_t, size_t > >
 NetworkBase (const NetworkBase< LoopNetworkType, KeyType > &)=delete
NetworkBase & operator= (const NetworkBase< LoopNetworkType, KeyType > &other)=delete
 NetworkBase (LoopNetworkType *const metwork_in, WeakPtrContainerType *const wpc, const KeyType &key_in)
 ~NetworkBase ()
const LoopNetworkType & network () const
LoopNetworkType & network ()
LoopNetworkType * p_network () const
size_t networkID () const

Static Public Member Functions

static NetworkBaseType::KeyType getKey (const LoopLinkType *const pL)
static NetworkBaseType::KeyType getKey (const std::shared_ptr< NetworkNodeType > &Ni, const std::shared_ptr< NetworkNodeType > &Nj)
static NetworkBaseType::KeyType getKey (const size_t &i, const size_t &j)
Static Public Member Functions inherited from model::StaticID< Derived >
static size_t nextID ()
static size_t & get_count ()
static void set_count (const size_t &newCount)
static void force_count (const size_t &newCount)
static void set_increment (const size_t &newIncrement)

Public Attributes

const std::shared_ptr< NetworkNodeType > source
const std::shared_ptr< NetworkNodeType > sink
Public Attributes inherited from model::StaticID< Derived >
const size_t sID
 The static ID of this.
Public Attributes inherited from model::NetworkBase< Derived, std::pair< size_t, size_t > >
const KeyType key

Static Public Attributes

static int verboseLevel

Additional Inherited Members

Protected Member Functions inherited from model::CRTP< Derived >
Derived & derived ()
 A reference to the derived object.
Derived * p_derived ()
 A pointer to the derived object.
const Derived & derived () const
 A reference to the const derived object.
const Derived * p_derived () const
 A pointer to the const derived object.

Detailed Description

template<typename Derived>
class model::NetworkLink< Derived >

Definition at line 30 of file NetworkLink.h.

Member Typedef Documentation

◆ LoopLinkContainerType

template<typename Derived>
typedef std::set<LoopLinkType*> model::NetworkLink< Derived >::LoopLinkContainerType

Definition at line 45 of file NetworkLink.h.

◆ LoopLinkType

template<typename Derived>
typedef TypeTraits<Derived>::LoopLinkType model::NetworkLink< Derived >::LoopLinkType

Definition at line 40 of file NetworkLink.h.

◆ LoopNetworkType

template<typename Derived>
typedef TypeTraits<Derived>::LoopNetworkType model::NetworkLink< Derived >::LoopNetworkType

Definition at line 42 of file NetworkLink.h.

◆ LoopNodeType

template<typename Derived>
typedef TypeTraits<Derived>::LoopNodeType model::NetworkLink< Derived >::LoopNodeType

Definition at line 38 of file NetworkLink.h.

◆ LoopType

template<typename Derived>
typedef TypeTraits<Derived>::LoopType model::NetworkLink< Derived >::LoopType

Definition at line 41 of file NetworkLink.h.

◆ NetworkBaseType

template<typename Derived>
typedef NetworkBase<Derived,std::pair<size_t,size_t> > model::NetworkLink< Derived >::NetworkBaseType

Definition at line 43 of file NetworkLink.h.

◆ NetworkNodeType

template<typename Derived>
typedef TypeTraits<Derived>::NetworkNodeType model::NetworkLink< Derived >::NetworkNodeType

Definition at line 39 of file NetworkLink.h.

Constructor & Destructor Documentation

◆ NetworkLink()

template<typename Derived>
model::NetworkLink< Derived >::NetworkLink ( LoopNetworkType *const loopNetwork,
const std::shared_ptr< NetworkNodeType > & nI,
const std::shared_ptr< NetworkNodeType > & nJ )
inline

Definition at line 131 of file NetworkLink.h.

◆ ~NetworkLink()

template<typename Derived>
model::NetworkLink< Derived >::~NetworkLink ( )
inline

Definition at line 153 of file NetworkLink.h.

Member Function Documentation

◆ addLoopLink()

template<typename Derived>
void model::NetworkLink< Derived >::addLoopLink ( LoopLinkType *const pL)
inline

Definition at line 233 of file NetworkLink.h.

◆ getKey() [1/3]

template<typename Derived>
NetworkBaseType::KeyType model::NetworkLink< Derived >::getKey ( const LoopLinkType *const pL)
inlinestatic

Definition at line 200 of file NetworkLink.h.

◆ getKey() [2/3]

template<typename Derived>
NetworkBaseType::KeyType model::NetworkLink< Derived >::getKey ( const size_t & i,
const size_t & j )
inlinestatic

Definition at line 213 of file NetworkLink.h.

◆ getKey() [3/3]

template<typename Derived>
NetworkBaseType::KeyType model::NetworkLink< Derived >::getKey ( const std::shared_ptr< NetworkNodeType > & Ni,
const std::shared_ptr< NetworkNodeType > & Nj )
inlinestatic

Definition at line 206 of file NetworkLink.h.

◆ loopIDs()

template<typename Derived>
std::set< size_t > model::NetworkLink< Derived >::loopIDs ( ) const
inline

Definition at line 189 of file NetworkLink.h.

◆ loopLinks() [1/2]

template<typename Derived>
LoopLinkContainerType & model::NetworkLink< Derived >::loopLinks ( )
inline

Definition at line 220 of file NetworkLink.h.

◆ loopLinks() [2/2]

template<typename Derived>
const LoopLinkContainerType & model::NetworkLink< Derived >::loopLinks ( ) const
inline

Definition at line 226 of file NetworkLink.h.

◆ loops()

template<typename Derived>
std::set< LoopType * > model::NetworkLink< Derived >::loops ( ) const
inline

Definition at line 179 of file NetworkLink.h.

◆ removeLoopLink()

template<typename Derived>
void model::NetworkLink< Derived >::removeLoopLink ( LoopLinkType *const pL)
inline

Definition at line 243 of file NetworkLink.h.

◆ tag()

template<typename Derived>
std::string model::NetworkLink< Derived >::tag ( ) const
inline

Definition at line 253 of file NetworkLink.h.

Member Data Documentation

◆ sink

template<typename Derived>
const std::shared_ptr<NetworkNodeType> model::NetworkLink< Derived >::sink

Definition at line 125 of file NetworkLink.h.

◆ source

template<typename Derived>
const std::shared_ptr<NetworkNodeType> model::NetworkLink< Derived >::source

Definition at line 124 of file NetworkLink.h.

◆ verboseLevel

template<typename Derived>
int model::NetworkLink< Derived >::verboseLevel
static

Definition at line 127 of file NetworkLink.h.


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