YAMLParser
Public Member Functions | Public Attributes | List of all members
Structure Class Reference

This class represents the entire FE structure in which the FE data instances are members. The FE data types are grouped and stored in a list and a map for each data instance. More...

#include <Structure.h>

Public Member Functions

 Structure (int structureID)
 
 ~Structure ()
 
bool checkElementExistence (int id, std::string type)
 
bool checkCoordSysExistence (int id)
 
bool checkCrossSectionExistence (int id, std::string &type)
 
bool checkCompSectionExistence (int id)
 
bool checkMaterialExistence (int id)
 
bool checkNodeExistence (int id)
 
bool checkNodeLoadExistence (int id)
 
bool checkLoadCombExistence (int id)
 
FECoordSysfetchCoordSys (int id)
 
GenericFEfetchObject (int id, std::string type)
 
GenericCrossSectionfetchCrossSection (int id)
 
GenericCompSectionfetchCompSection (int id)
 
GenericMaterialfetchMaterial (int id)
 
FENodefetchNode (int id)
 
FENodeLoadfetchNodeLoad (int id)
 
FELoadCombfetchLoadComb (int id)
 
bool addNode (FENode *node)
 
bool addElement (GenericFE *element)
 
bool addCoordSys (FECoordSys *coordSys)
 
bool addCrossSection (GenericCrossSection *crossSection)
 
bool addCompSection (GenericCompSection *section)
 
bool addMaterial (GenericMaterial *material)
 
bool addNodeLoad (FENodeLoad *nodeLoad)
 
bool addLoadComb (FELoadComb *loadComb)
 
void printData ()
 

Public Attributes

int structureID
 Identifier for the structure. More...
 
std::vector< FECoordSys * > coordSysList
 List of ptrs to coordSys instances. More...
 
std::map< int, FECoordSys * > coordSysMap
 Map from ID to corresponding coordSys instance ptr. More...
 
std::vector< GenericCrossSection * > crossSectionList
 List of ptrs to cross-section instances. More...
 
std::map< int, GenericCrossSection * > crossSectionMap
 Map from ID to corresponding cross-section instance. More...
 
std::vector< GenericCompSection * > compSectionList
 List of ptrs to composite section instances. More...
 
std::map< int, GenericCompSection * > compSectionMap
 Map from ID to corresponding composite section instance. More...
 
std::vector< GenericMaterial * > materialList
 List of ptrs to material instances. More...
 
std::map< int, GenericMaterial * > materialMap
 Map from ID to corresponding material instance ptr. More...
 
std::vector< FENode * > nodeList
 List of ptrs to nodes. More...
 
std::map< int, FENode * > nodeMap
 Map from ID to corresponding node instance ptr. More...
 
std::vector< GenericFE * > elementList
 List of ptrs to Identifiables (used to generalize FE elements) More...
 
std::map< int, GenericFE * > elementMap
 Map from ID to corresponding Identifiable ptr for a specific FE element. More...
 
std::vector< FENodeLoad * > nodeLoadList
 List of ptrs to node load instances. More...
 
std::map< int, FENodeLoad * > nodeLoadMap
 Map from ID to corresponding node load instance ptr. More...
 
std::vector< FELoadComb * > loadCombList
 List of ptrs to load combination instances. More...
 
std::map< int, FELoadComb * > loadCombMap
 Map from ID to corresponding load combination instance ptr. More...
 

Detailed Description

This class represents the entire FE structure in which the FE data instances are members. The FE data types are grouped and stored in a list and a map for each data instance.

Todo:

checkElementExistence traverses a list. The check should be performed wrt. a map ( list search = O(n) / map search = (Olog(n)) )

fetchObject traveses a list. It should rather obtain the value from the corresponding map (list search = O(n) / map search = (O(log(n)) ).

Constructor & Destructor Documentation

◆ Structure()

Structure::Structure ( int  structureID)

◆ ~Structure()

Structure::~Structure ( )

Member Function Documentation

◆ addCompSection()

bool Structure::addCompSection ( GenericCompSection section)

Add a new section instance to the corresponding map and vector containers

◆ addCoordSys()

bool Structure::addCoordSys ( FECoordSys coordSys)

Add a new coordinate system instance to the corresponding map and vector containers

◆ addCrossSection()

bool Structure::addCrossSection ( GenericCrossSection crossSection)

Add a new cross-section instance to the corresponding map and vector containers

◆ addElement()

bool Structure::addElement ( GenericFE element)

Add a new FE element instance to the corresponding map and vector containers

◆ addLoadComb()

bool Structure::addLoadComb ( FELoadComb loadComb)

Add a new load combination instance to the corresponding map and vector containers

◆ addMaterial()

bool Structure::addMaterial ( GenericMaterial material)

Add a new material instance to the corresponding map and vector containers

◆ addNode()

bool Structure::addNode ( FENode node)

Add a new node instance to the corresponding map and vector containers

◆ addNodeLoad()

bool Structure::addNodeLoad ( FENodeLoad nodeLoad)

Add a new node load instance to the corresponding map and vector containers

◆ checkCompSectionExistence()

bool Structure::checkCompSectionExistence ( int  id)

Check if a specific section instance exists in the structure

◆ checkCoordSysExistence()

bool Structure::checkCoordSysExistence ( int  id)

Check if a specific coordinate system instance exists in the structure

◆ checkCrossSectionExistence()

bool Structure::checkCrossSectionExistence ( int  id,
std::string &  type 
)

Check if a specific cross-section instance exists in the structure

◆ checkElementExistence()

bool Structure::checkElementExistence ( int  id,
std::string  type 
)

Check if a specific FE element instance exists in the structure

◆ checkLoadCombExistence()

bool Structure::checkLoadCombExistence ( int  id)

Check if a specific load combination instance exists in the structure

◆ checkMaterialExistence()

bool Structure::checkMaterialExistence ( int  id)

Check if a specific material instance exists in the structure

◆ checkNodeExistence()

bool Structure::checkNodeExistence ( int  id)

Check if a specific node instance exists in the structure

◆ checkNodeLoadExistence()

bool Structure::checkNodeLoadExistence ( int  id)

Check if a specific node load instance exists in the structure

◆ fetchCompSection()

GenericCompSection * Structure::fetchCompSection ( int  id)

Fetch a specific section instance

◆ fetchCoordSys()

FECoordSys * Structure::fetchCoordSys ( int  id)

Fetch a specific coordinate system instance

◆ fetchCrossSection()

GenericCrossSection * Structure::fetchCrossSection ( int  id)

Fetch a specific cross-section instance

◆ fetchLoadComb()

FELoadComb * Structure::fetchLoadComb ( int  id)

Fetch a specific load combination instance

◆ fetchMaterial()

GenericMaterial * Structure::fetchMaterial ( int  id)

Fetch a specific material instance

◆ fetchNode()

FENode * Structure::fetchNode ( int  id)

Fetch a specific node instance

◆ fetchNodeLoad()

FENodeLoad * Structure::fetchNodeLoad ( int  id)

Fetch a specific node load instance

◆ fetchObject()

GenericFE * Structure::fetchObject ( int  id,
std::string  type 
)

Fetch a specific FE element instance instance

◆ printData()

void Structure::printData ( )

Member Data Documentation

◆ compSectionList

std::vector<GenericCompSection*> Structure::compSectionList

List of ptrs to composite section instances.

◆ compSectionMap

std::map<int, GenericCompSection*> Structure::compSectionMap

Map from ID to corresponding composite section instance.

◆ coordSysList

std::vector<FECoordSys*> Structure::coordSysList

List of ptrs to coordSys instances.

◆ coordSysMap

std::map<int, FECoordSys*> Structure::coordSysMap

Map from ID to corresponding coordSys instance ptr.

◆ crossSectionList

std::vector<GenericCrossSection*> Structure::crossSectionList

List of ptrs to cross-section instances.

◆ crossSectionMap

std::map<int, GenericCrossSection*> Structure::crossSectionMap

Map from ID to corresponding cross-section instance.

◆ elementList

std::vector<GenericFE*> Structure::elementList

List of ptrs to Identifiables (used to generalize FE elements)

◆ elementMap

std::map<int, GenericFE*> Structure::elementMap

Map from ID to corresponding Identifiable ptr for a specific FE element.

◆ loadCombList

std::vector<FELoadComb*> Structure::loadCombList

List of ptrs to load combination instances.

◆ loadCombMap

std::map<int, FELoadComb*> Structure::loadCombMap

Map from ID to corresponding load combination instance ptr.

◆ materialList

std::vector<GenericMaterial*> Structure::materialList

List of ptrs to material instances.

◆ materialMap

std::map<int, GenericMaterial*> Structure::materialMap

Map from ID to corresponding material instance ptr.

◆ nodeList

std::vector<FENode*> Structure::nodeList

List of ptrs to nodes.

◆ nodeLoadList

std::vector<FENodeLoad*> Structure::nodeLoadList

List of ptrs to node load instances.

◆ nodeLoadMap

std::map<int, FENodeLoad*> Structure::nodeLoadMap

Map from ID to corresponding node load instance ptr.

◆ nodeMap

std::map<int, FENode*> Structure::nodeMap

Map from ID to corresponding node instance ptr.

◆ structureID

int Structure::structureID

Identifier for the structure.


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