ITK  4.13.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Protected Member Functions | List of all members
itk::fem::FEMLightObject Class Reference

#include <itkFEMLightObject.h>

+ Inheritance diagram for itk::fem::FEMLightObject:
+ Collaboration diagram for itk::fem::FEMLightObject:

Detailed Description

Base class for all classes that define the FEM system.

Base class for all classes that define FEM system (Elements, Nodes...). Every FEM object requires a global number that can be used to find that object. It is also required that the object can be written to and read from a file (stream). This functionality is implemented inside FEMLightObject class.

Definition at line 46 of file itkFEMLightObject.h.

Public Types

typedef Self Baseclass
 
typedef SmartPointer< const SelfConstPointer
 
typedef SmartPointer< SelfPointer
 
typedef FEMLightObject Self
 
typedef itk::LightObject Superclass
 
- Public Types inherited from itk::LightObject
typedef SmartPointer< const SelfConstPointer
 
typedef SmartPointer< SelfPointer
 
typedef LightObject Self
 

Public Member Functions

int GetGlobalNumber () const
 
virtual const char * GetNameOfClass () const
 
void SetGlobalNumber (int)
 
- Public Member Functions inherited from itk::LightObject
virtual Pointer CreateAnother () const
 
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
 itkCloneMacro (Self)
 
void Print (std::ostream &os, Indent indent=0) const
 
virtual void Register () const
 
virtual void SetReferenceCount (int)
 
virtual void UnRegister () const noexcept
 

Protected Member Functions

 FEMLightObject ()
 
 FEMLightObject (const FEMLightObject &o)
 
virtual void PrintSelf (std::ostream &os, Indent indent) const override
 
virtual ~FEMLightObject () override
 
- Protected Member Functions inherited from itk::LightObject
virtual LightObject::Pointer InternalClone () const
 
 LightObject ()
 
virtual void PrintHeader (std::ostream &os, Indent indent) const
 
virtual void PrintTrailer (std::ostream &os, Indent indent) const
 
virtual ~LightObject ()
 

Protected Attributes

int m_GlobalNumber
 
- Protected Attributes inherited from itk::LightObject
AtomicInt< int > m_ReferenceCount
 

Additional Inherited Members

- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 

Member Typedef Documentation

Definition at line 53 of file itkFEMLightObject.h.

Definition at line 55 of file itkFEMLightObject.h.

Definition at line 54 of file itkFEMLightObject.h.

Standard class typedefs.

Definition at line 51 of file itkFEMLightObject.h.

Definition at line 52 of file itkFEMLightObject.h.

Constructor & Destructor Documentation

itk::fem::FEMLightObject::FEMLightObject ( )
inlineprotected

Default constructor

Definition at line 75 of file itkFEMLightObject.h.

virtual itk::fem::FEMLightObject::~FEMLightObject ( )
inlineoverrideprotectedvirtual

Virtual destructor

Definition at line 82 of file itkFEMLightObject.h.

itk::fem::FEMLightObject::FEMLightObject ( const FEMLightObject o)
inlineprotected

Copy constructor must be available for the FEM objects...

Definition at line 89 of file itkFEMLightObject.h.

References m_GlobalNumber.

Member Function Documentation

int itk::fem::FEMLightObject::GetGlobalNumber ( ) const

Get the global number of the object

Referenced by itk::fem::LoadTest< TClass >::CreateAnother().

virtual const char* itk::fem::FEMLightObject::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::LightObject.

Reimplemented in itk::fem::Element::Node, itk::fem::Element, itk::fem::ImageMetricLoad< TMoving, TFixed >, itk::fem::LoadGravConst, itk::fem::FiniteDifferenceFunctionLoad< TMoving, TFixed >, itk::fem::Element2DC0LinearTriangularMembrane, itk::fem::Element2DC0QuadraticTriangularStrain, itk::fem::Element3DC0LinearHexahedron, itk::fem::Element2DC0LinearTriangularStrain, itk::fem::Element3DC0LinearTetrahedron, itk::fem::Element2DC0QuadraticTriangularStress, itk::fem::Element2DC0LinearQuadrilateralMembrane, itk::fem::Element2DC0LinearQuadrilateralStress, itk::fem::Element2DC0LinearQuadrilateralStrain, itk::fem::Element2DC0LinearTriangular, itk::fem::Element2DC0QuadraticTriangular, itk::fem::LoadBCMFC, itk::fem::Element2DC0LinearQuadrilateral, itk::fem::ElementStd< 3, 2 >, itk::fem::ElementStd< 2, 2 >, itk::fem::ElementStd< 8, 3 >, itk::fem::ElementStd< 6, 2 >, itk::fem::ElementStd< 4, 3 >, itk::fem::ElementStd< 4, 2 >, itk::fem::ElementStd< 3, 3 >, itk::fem::Element2DMembrane< Element2DC0LinearQuadrilateral >, itk::fem::Element2DMembrane< Element2DC0LinearTriangular >, itk::fem::Element3DC0LinearTriangular, itk::fem::Element2DStrain< Element2DC0QuadraticTriangular >, itk::fem::Element2DStrain< Element2DC0LinearQuadrilateral >, itk::fem::Element2DStrain< Element2DC0LinearTriangular >, itk::fem::Element3DMembrane< Element3DC0LinearHexahedron >, itk::fem::Element3DMembrane< Element3DC0LinearTetrahedron >, itk::fem::Element3DMembrane< Element3DC0LinearTriangular >, itk::fem::Element3DC0LinearHexahedronMembrane, itk::fem::Element3DC0LinearHexahedronStrain, itk::fem::LoadElement, itk::fem::Element2DC0LinearTriangularStress, itk::fem::Element3DC0LinearTetrahedronMembrane, itk::fem::Element3DStrain< Element3DC0LinearHexahedron >, itk::fem::Element3DStrain< Element3DC0LinearTetrahedron >, itk::fem::Material, itk::fem::Element3DC0LinearTetrahedronStrain, itk::fem::Element3DC0LinearTriangularLaplaceBeltrami, itk::fem::LoadNoisyLandmark, itk::fem::Element1DStress< Element2DC0LinearLine >, itk::fem::Element2DStress< Element2DC0QuadraticTriangular >, itk::fem::Element2DStress< Element2DC0LinearQuadrilateral >, itk::fem::Element2DStress< Element2DC0LinearTriangular >, itk::fem::Element3DMembrane1DOF< Element3DC0LinearTriangular >, itk::fem::Element3DC0LinearTriangularMembrane, itk::fem::LoadNode, itk::fem::Element2DC1Beam, itk::fem::LoadEdge, itk::fem::LoadLandmark, itk::fem::LoadTest< TClass >, itk::fem::MaterialLinearElasticity, itk::fem::Load, itk::fem::LoadGrav, itk::fem::LoadPoint, itk::fem::Element2DC0LinearLineStress, itk::fem::LoadBC, and itk::fem::Element2DC0LinearLine.

virtual void itk::fem::FEMLightObject::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
overrideprotectedvirtual

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::LightObject.

Reimplemented in itk::fem::Element, itk::fem::ImageMetricLoad< TMoving, TFixed >, itk::fem::FiniteDifferenceFunctionLoad< TMoving, TFixed >, itk::fem::Element::Node, itk::fem::LoadLandmark, itk::fem::LoadNoisyLandmark, itk::fem::LoadBCMFC, itk::fem::Element2DC1Beam, itk::fem::ElementStd< 3, 2 >, itk::fem::ElementStd< 2, 2 >, itk::fem::ElementStd< 8, 3 >, itk::fem::ElementStd< 6, 2 >, itk::fem::ElementStd< 4, 3 >, itk::fem::ElementStd< 4, 2 >, itk::fem::ElementStd< 3, 3 >, itk::fem::Element3DC0LinearTriangular, itk::fem::MaterialLinearElasticity, itk::fem::Element2DC0LinearTriangular, itk::fem::Element2DMembrane< Element2DC0LinearQuadrilateral >, itk::fem::Element2DMembrane< Element2DC0LinearTriangular >, itk::fem::Element2DStrain< Element2DC0QuadraticTriangular >, itk::fem::Element2DStrain< Element2DC0LinearQuadrilateral >, itk::fem::Element2DStrain< Element2DC0LinearTriangular >, itk::fem::Element1DStress< Element2DC0LinearLine >, itk::fem::Element3DMembrane< Element3DC0LinearHexahedron >, itk::fem::Element3DMembrane< Element3DC0LinearTetrahedron >, itk::fem::Element3DMembrane< Element3DC0LinearTriangular >, itk::fem::Element2DStress< Element2DC0QuadraticTriangular >, itk::fem::Element2DStress< Element2DC0LinearQuadrilateral >, itk::fem::Element2DStress< Element2DC0LinearTriangular >, itk::fem::Element3DMembrane1DOF< Element3DC0LinearTriangular >, itk::fem::Element3DC0LinearHexahedron, itk::fem::Element2DC0LinearQuadrilateral, itk::fem::Element3DStrain< Element3DC0LinearHexahedron >, itk::fem::Element3DStrain< Element3DC0LinearTetrahedron >, itk::fem::Element2DC0QuadraticTriangular, itk::fem::LoadElement, itk::fem::LoadGravConst, itk::fem::Element3DC0LinearTetrahedron, itk::fem::Element2DC0LinearLine, itk::fem::Element2DC0QuadraticTriangularStrain, itk::fem::Element2DC0QuadraticTriangularStress, itk::fem::LoadNode, itk::fem::Element2DC0LinearQuadrilateralMembrane, itk::fem::Element2DC0LinearQuadrilateralStress, itk::fem::Element2DC0LinearTriangularMembrane, itk::fem::Load, itk::fem::Element2DC0LinearQuadrilateralStrain, itk::fem::Element2DC0LinearTriangularStrain, itk::fem::LoadEdge, itk::fem::Element3DC0LinearTriangularLaplaceBeltrami, itk::fem::LoadPoint, itk::fem::Element2DC0LinearTriangularStress, itk::fem::Element3DC0LinearHexahedronMembrane, itk::fem::Element3DC0LinearHexahedronStrain, itk::fem::Element3DC0LinearTetrahedronMembrane, itk::fem::Element3DC0LinearTetrahedronStrain, itk::fem::Element2DC0LinearLineStress, itk::fem::Element3DC0LinearTriangularMembrane, itk::fem::LoadBC, itk::fem::Material, and itk::fem::LoadGrav.

void itk::fem::FEMLightObject::SetGlobalNumber ( int  )

Set the global number of the object

Member Data Documentation

int itk::fem::FEMLightObject::m_GlobalNumber
protected

Global number of an object (ID of an object) In general the ID's are required to be unique only within a specific type of derived classes (Elements, Nodes, ...) If the GN is not required, it can be ignored. (normally you need the GN when writing or reading objects to/from stream.

Definition at line 101 of file itkFEMLightObject.h.

Referenced by FEMLightObject().


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