FEI Package Browser (Single Doxygen Collection) Version of the Day
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Private Attributes | List of all members
fei::Pattern Class Reference

#include <fei_Pattern.hpp>

Public Types

enum  PatternType { NO_FIELD , SIMPLE , SINGLE_IDTYPE , GENERAL }
 

Public Member Functions

 Pattern (int numIDs, int idType, snl_fei::RecordCollection *records)
 
 Pattern (int numIDs, int idType, snl_fei::RecordCollection *records, int fieldID, int fieldSize)
 
 Pattern (int numIDs, int idType, snl_fei::RecordCollection *records, const int *numFieldsPerID, const int *fieldIDs, const int *fieldSizes)
 
 Pattern (int numIDs, const int *idTypes, snl_fei::RecordCollection *const *records, const int *numFieldsPerID, const int *fieldIDs, const int *fieldSizes)
 
virtual ~Pattern ()
 
PatternType getPatternType () const
 
int getNumIDs () const
 
const int * getIDTypes () const
 
snl_fei::RecordCollection *const * getRecordCollections () const
 
const int * getNumFieldsPerID () const
 
const int * getFieldIDs () const
 
const int * getNumIndicesPerID () const
 
int getTotalNumFields () const
 
int getNumIndices () const
 
bool operator== (const Pattern &rhs) const
 
bool operator!= (const Pattern &rhs) const
 

Private Attributes

PatternType type_
 
int numIDs_
 
int totalNumFields_
 
int numIndices_
 
std::vector< int > data_
 
std::vector< snl_fei::RecordCollection * > recordCollections_
 
const int * idTypes_
 
const int * numFieldsPerID_
 
const int * fieldIDs_
 
const int * numIndicesPerID_
 

Detailed Description

Stencil-like pattern definition/description. Describes the layout of a set of field-identifiers associated with a set of identifiers and identifier-types.

Example: Can be used to describe the layout of nodes with associated fields on an element ('element' as in finite-elements).

Definition at line 29 of file fei_Pattern.hpp.

Member Enumeration Documentation

◆ PatternType

enumeration of different pattern-types

Enumerator
NO_FIELD 
SIMPLE 
SINGLE_IDTYPE 
GENERAL 

Definition at line 32 of file fei_Pattern.hpp.

Constructor & Destructor Documentation

◆ Pattern() [1/4]

fei::Pattern::Pattern ( int numIDs,
int idType,
snl_fei::RecordCollection * records )

Constructor, Pattern::PatternType == NO_FIELD

Definition at line 12 of file fei_Pattern.cpp.

References data_, fieldIDs_, idTypes_, numFieldsPerID_, numIDs_, and numIndicesPerID_.

◆ Pattern() [2/4]

fei::Pattern::Pattern ( int numIDs,
int idType,
snl_fei::RecordCollection * records,
int fieldID,
int fieldSize )

Constructor, Pattern::PatternType == SIMPLE There is only one id-type, and only one field.

Definition at line 51 of file fei_Pattern.cpp.

References data_, fieldIDs_, idTypes_, numFieldsPerID_, numIDs_, numIndices_, and numIndicesPerID_.

◆ Pattern() [3/4]

fei::Pattern::Pattern ( int numIDs,
int idType,
snl_fei::RecordCollection * records,
const int * numFieldsPerID,
const int * fieldIDs,
const int * fieldSizes )

Constructor, Pattern::PatternType == SINGLE_IDTYPE There is only one id-type, but there may be multiple fields per id.

Definition at line 93 of file fei_Pattern.cpp.

References data_, fieldIDs_, idTypes_, numFieldsPerID_, numIDs_, numIndices_, numIndicesPerID_, SIMPLE, totalNumFields_, and type_.

◆ Pattern() [4/4]

fei::Pattern::Pattern ( int numIDs,
const int * idTypes,
snl_fei::RecordCollection *const * records,
const int * numFieldsPerID,
const int * fieldIDs,
const int * fieldSizes )

Constructor, Pattern::PatternType == GENERAL There may be multiple id-types as well as multiple fields-per-id.

Definition at line 154 of file fei_Pattern.cpp.

References data_, fieldIDs_, idTypes_, numFieldsPerID_, numIDs_, numIndices_, numIndicesPerID_, SIMPLE, SINGLE_IDTYPE, totalNumFields_, and type_.

◆ ~Pattern()

fei::Pattern::~Pattern ( )
virtual

Definition at line 224 of file fei_Pattern.cpp.

Member Function Documentation

◆ getPatternType()

PatternType fei::Pattern::getPatternType ( ) const
inline

◆ getNumIDs()

int fei::Pattern::getNumIDs ( ) const
inline

◆ getIDTypes()

const int * fei::Pattern::getIDTypes ( ) const
inline

◆ getRecordCollections()

snl_fei::RecordCollection *const * fei::Pattern::getRecordCollections ( ) const
inline

◆ getNumFieldsPerID()

const int * fei::Pattern::getNumFieldsPerID ( ) const
inline

◆ getFieldIDs()

const int * fei::Pattern::getFieldIDs ( ) const
inline

◆ getNumIndicesPerID()

const int * fei::Pattern::getNumIndicesPerID ( ) const
inline

◆ getTotalNumFields()

int fei::Pattern::getTotalNumFields ( ) const
inline

◆ getNumIndices()

int fei::Pattern::getNumIndices ( ) const
inline

◆ operator==()

bool fei::Pattern::operator== ( const Pattern & rhs) const

return true if the 'rhs' pattern is the same as 'this' pattern.

Definition at line 229 of file fei_Pattern.cpp.

References data_, numIDs_, numIndices_, totalNumFields_, and type_.

◆ operator!=()

bool fei::Pattern::operator!= ( const Pattern & rhs) const

return true if the 'rhs' pattern is different than 'this' pattern.

Definition at line 239 of file fei_Pattern.cpp.

Member Data Documentation

◆ type_

PatternType fei::Pattern::type_
private

Definition at line 103 of file fei_Pattern.hpp.

Referenced by getPatternType(), operator==(), Pattern(), and Pattern().

◆ numIDs_

int fei::Pattern::numIDs_
private

Definition at line 104 of file fei_Pattern.hpp.

Referenced by getNumIDs(), operator==(), Pattern(), Pattern(), Pattern(), and Pattern().

◆ totalNumFields_

int fei::Pattern::totalNumFields_
private

Definition at line 105 of file fei_Pattern.hpp.

Referenced by getTotalNumFields(), operator==(), Pattern(), and Pattern().

◆ numIndices_

int fei::Pattern::numIndices_
private

Definition at line 106 of file fei_Pattern.hpp.

Referenced by getNumIndices(), operator==(), Pattern(), Pattern(), and Pattern().

◆ data_

std::vector<int> fei::Pattern::data_
private

Definition at line 107 of file fei_Pattern.hpp.

Referenced by operator==(), Pattern(), Pattern(), Pattern(), and Pattern().

◆ recordCollections_

std::vector<snl_fei::RecordCollection*> fei::Pattern::recordCollections_
private

Definition at line 108 of file fei_Pattern.hpp.

Referenced by getRecordCollections().

◆ idTypes_

const int* fei::Pattern::idTypes_
private

Definition at line 110 of file fei_Pattern.hpp.

Referenced by getIDTypes(), Pattern(), Pattern(), Pattern(), and Pattern().

◆ numFieldsPerID_

const int* fei::Pattern::numFieldsPerID_
private

Definition at line 111 of file fei_Pattern.hpp.

Referenced by getNumFieldsPerID(), Pattern(), Pattern(), Pattern(), and Pattern().

◆ fieldIDs_

const int* fei::Pattern::fieldIDs_
private

Definition at line 112 of file fei_Pattern.hpp.

Referenced by getFieldIDs(), Pattern(), Pattern(), Pattern(), and Pattern().

◆ numIndicesPerID_

const int* fei::Pattern::numIndicesPerID_
private

Definition at line 113 of file fei_Pattern.hpp.

Referenced by getNumIndicesPerID(), Pattern(), Pattern(), Pattern(), and Pattern().


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