An abstract class for elements of the topology. More...

#include <connector.hh>

Inheritance diagram for concepts::Connector:
concepts::OutputOperator concepts::Connector0 concepts::Connector1 concepts::Connector2 concepts::Connector3 concepts::Vertex test::ResetConnector0 concepts::Edge concepts::InfiniteEdge test::ResetConnector1 concepts::InfiniteQuad concepts::Quad concepts::SphericalSurface concepts::Triangle test::ResetConnector2 concepts::Hexahedron concepts::Sphere concepts::Tetrahedron test::ResetConnector3

Public Member Functions

const Attributeattrib () const
 Returns the attribute of the connector. More...
 
virtual const Connectorchild (uint i) const =0
 
virtual Connectorchild (uint i, bool mode=0)=0
 Returns the ith child of the connector. More...
 
 Connector (const uint key, const Attribute attrib)
 Constructor. More...
 
const Keykey () const
 Returns the key of the connector. More...
 
int operator== (const Connector &cntr) const
 Comparison operator. More...
 
int related (const Connector &conn) const
 Checks if this connector is related to conn. More...
 
void setAttrib (uint attrb)
 

Protected Member Functions

virtual std::ostream & info (std::ostream &os) const
 Returns information in an output stream. More...
 

Protected Attributes

Attribute attrib_
 Attribute. More...
 
Key key_
 Unique key of the connector. More...
 

Detailed Description

An abstract class for elements of the topology.

The topology contains the informations about the inter-element connections.

This class prescribes the common interface for all topological elements (connectors). This interface consists of a method to query the children of a connector.

Definition at line 85 of file connector.hh.

Constructor & Destructor Documentation

◆ Connector()

concepts::Connector::Connector ( const uint  key,
const Attribute  attrib 
)
inline

Constructor.

Definition at line 88 of file connector.hh.

Member Function Documentation

◆ attrib()

const Attribute& concepts::Connector::attrib ( ) const
inline

Returns the attribute of the connector.

Definition at line 108 of file connector.hh.

◆ child() [1/2]

◆ child() [2/2]

virtual Connector* concepts::Connector::child ( uint  i,
bool  mode = 0 
)
pure virtual

Returns the ith child of the connector.

Parameters
iIndex of the child
modeIf mode = false(0) the child is created if it does not yet exist, if mode = true(1) no new children are created (ie. 0 is returned if no children exist).
Invariant
Either all children or no children exist.

Implemented in concepts::Connector3, concepts::Connector2, concepts::Connector1, concepts::Connector0, concepts::Hexahedron, concepts::Tetrahedron, concepts::InfiniteQuad, concepts::Quad, concepts::Triangle, concepts::InfiniteEdge, concepts::Edge, concepts::Vertex, concepts::Sphere, and concepts::SphericalSurface.

◆ info()

virtual std::ostream& concepts::Connector::info ( std::ostream &  os) const
protectedvirtual

◆ key()

const Key& concepts::Connector::key ( ) const
inline

Returns the key of the connector.

Definition at line 105 of file connector.hh.

◆ operator==()

int concepts::Connector::operator== ( const Connector cntr) const
inline

Comparison operator.

Definition at line 102 of file connector.hh.

◆ related()

int concepts::Connector::related ( const Connector conn) const

Checks if this connector is related to conn.

It is being checked if one of the two is an ancestor of the other.

Parameters
connOther connector
Returns
An integer i.
i=0 if there is no relationship or the connectors are identical
i>0 if conn is an ancestor of this connector
i<0 if conn is a descendant of this connector
|i| gives the number of generations between the connectors

◆ setAttrib()

void concepts::Connector::setAttrib ( uint  attrb)
inline

Definition at line 111 of file connector.hh.

Member Data Documentation

◆ attrib_

Attribute concepts::Connector::attrib_
protected

Attribute.

Definition at line 132 of file connector.hh.

◆ key_

Key concepts::Connector::key_
protected

Unique key of the connector.

Definition at line 129 of file connector.hh.


The documentation for this class was generated from the following file:
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich