Computer Assited Medical Intervention Tool Kit  version 5.0
Structure Class Referenceabstract

Pure virtual class that represent an element of the structure. This implies that every structure could be represented in 3D and is a part of a structural component. More...

#include <Structure.h>

+ Inheritance diagram for Structure:
+ Collaboration diagram for Structure:

Public Member Functions

virtual void addStructuralComponent (StructuralComponent *)
 add a particular StructuralComponent in the list More...
 
std::vector< StructuralComponent * > getAllStructuralComponents ()
 get the list of all the StructuralComponent that are using this structure More...
 
unsigned int getIndex () const
 get the structure unique index (stored in its property) More...
 
std::string getName () const
 get the name of the structure More...
 
unsigned int getNumberOfStructuralComponents () const
 get the number of StructuralComponent that are using this structure More...
 
StructuralComponentgetStructuralComponent (unsigned int i)
 get a particular StructuralComponent that is using this structure More...
 
StructureProperties::GeometricType getType () const
 get the type of index More...
 
virtual bool isInstanceOf (const char *) const =0
 pure virtual method, implemented in the child-class More...
 
void removeStructuralComponent (StructuralComponent *)
 remove a particular StructuralComponent from the list More...
 
virtual bool setIndex (const unsigned int)
 set the index. More...
 
void setName (std::string)
 set the name of the structure More...
 
virtual void setPhysicalModel (PhysicalModel *)
 set the physical model More...
 
 Structure ()
 Base constructor. More...
 
virtual void xmlPrint (std::ostream &, const StructuralComponent *)=0
 print to an output stream in "pseaudo" XML format. More...
 
virtual ~Structure ()=default
 Virtual destructor needed here as this is an abstract class (pure virtual) More...
 

Public Attributes

bool hasIndex
 indicate if the Structure has an index (which is not the case all the time) More...
 

Protected Attributes

StructurePropertiesproperties {nullptr}
 Property of the current structure. More...
 

Private Attributes

std::vector< StructuralComponent * > mySCs
 list of StructuralComponent that are using this structure More...
 

Detailed Description

Pure virtual class that represent an element of the structure. This implies that every structure could be represented in 3D and is a part of a structural component.

Constructor & Destructor Documentation

◆ Structure()

Structure::Structure ( )
inline

Base constructor.

References hasIndex.

◆ ~Structure()

virtual Structure::~Structure ( )
virtualdefault

Virtual destructor needed here as this is an abstract class (pure virtual)

Member Function Documentation

◆ addStructuralComponent()

void Structure::addStructuralComponent ( StructuralComponent sc)
inlinevirtual

add a particular StructuralComponent in the list

Reimplemented in Cell.

References mySCs.

Referenced by Cell::addStructuralComponent(), and StructuralComponent::addStructure().

+ Here is the caller graph for this function:

◆ getAllStructuralComponents()

std::vector< StructuralComponent * > Structure::getAllStructuralComponents ( )
inline

get the list of all the StructuralComponent that are using this structure

References mySCs.

◆ getIndex()

◆ getName()

std::string Structure::getName ( ) const

get the name of the structure

References Properties::getName(), and properties.

+ Here is the call graph for this function:

◆ getNumberOfStructuralComponents()

unsigned int Structure::getNumberOfStructuralComponents ( ) const
inline

get the number of StructuralComponent that are using this structure

References mySCs.

Referenced by Cell::makePrintData().

+ Here is the caller graph for this function:

◆ getStructuralComponent()

StructuralComponent * Structure::getStructuralComponent ( unsigned int  i)
inline

get a particular StructuralComponent that is using this structure

References mySCs.

Referenced by Cell::makePrintData().

+ Here is the caller graph for this function:

◆ getType()

StructureProperties::GeometricType Structure::getType ( ) const

get the type of index

References StructureProperties::getType(), and properties.

Referenced by SurfaceExtractor::AddCell(), PMLComponent::cellToVTK(), PhysicalModel::exportAnsysMesh(), PhysicalModel::exportPatran(), PMLTransform::generateExternalSurface(), PMLTransform::generateNeighborhood(), Cell::getQuadFaces(), Cell::getTriangleFaces(), Cell::normal(), SofaSimulator::SofaSimulator(), Cell::surface(), and Cell::volume().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isInstanceOf()

virtual bool Structure::isInstanceOf ( const char *  ) const
pure virtual

pure virtual method, implemented in the child-class

Implemented in Atom, and Cell.

Referenced by StructuralComponent::getAtoms(), StructuralComponent::isCompatible(), and PhysicalModel::optimizeIndexes().

+ Here is the caller graph for this function:

◆ removeStructuralComponent()

void Structure::removeStructuralComponent ( StructuralComponent sc)
inline

remove a particular StructuralComponent from the list

References mySCs.

Referenced by StructuralComponent::removeStructure().

+ Here is the caller graph for this function:

◆ setIndex()

bool Structure::setIndex ( const unsigned int  newIndex)
virtual

set the index.

The index have to be unique otherwise this method has no effect. The sub-classes method will check that this index is not in use.

Returns
true only if the index of the structure was changed

Reimplemented in Cell, and Atom.

References hasIndex, properties, and StructureProperties::setIndex().

Referenced by Atom::setIndex(), and Cell::setIndex().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setName()

void Structure::setName ( std::string  n)

set the name of the structure

References properties, and Properties::setName().

Referenced by PMLExplorerWidget::propertyChanged().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setPhysicalModel()

void Structure::setPhysicalModel ( PhysicalModel pm)
virtual

set the physical model

References properties, and Properties::setPhysicalModel().

Referenced by StructuralComponent::setPhysicalModel().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ xmlPrint()

virtual void Structure::xmlPrint ( std::ostream &  ,
const StructuralComponent  
)
pure virtual

print to an output stream in "pseaudo" XML format.

this method is called by the structural component that includes this structure.

Implemented in Atom, and Cell.

Member Data Documentation

◆ hasIndex

bool Structure::hasIndex

indicate if the Structure has an index (which is not the case all the time)

Referenced by PMLExplorerWidget::buildCellTreeWidgetItem(), setIndex(), and Structure().

◆ mySCs

◆ properties


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