OS  2.9.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Public Attributes | List of all members
BaseMatrix Class Reference

a data structure to represent a point of departure for constructing a matrix by modifying parts of a previously defined matrix More...

#include <OSMatrix.h>

+ Inheritance diagram for BaseMatrix:
+ Collaboration diagram for BaseMatrix:

Public Member Functions

 BaseMatrix ()
 
 ~BaseMatrix ()
 
virtual
ENUM_MATRIX_CONSTRUCTOR_TYPE 
getNodeType ()
 
virtual std::string getNodeName ()
 
virtual std::string getMatrixNodeInXML ()
 
virtual BaseMatrixcloneMatrixNode ()
 The implementation of the virtual functions. More...
 
bool IsEqual (BaseMatrix *that)
 A function to check for the equality of two objects. More...
 
bool setRandom (double density, bool conformant, int iMin, int iMax)
 A function to make a random instance of this class. More...
 
bool deepCopyFrom (BaseMatrix *that)
 A function to make a deep copy of an instance of this class. More...
 
- Public Member Functions inherited from MatrixConstructor
 MatrixConstructor ()
 constructor More...
 
 ~MatrixConstructor ()
 destructor More...
 
bool IsEqual (MatrixConstructor *that)
 A function to check for the equality of two objects. More...
 
bool setRandom (double density, bool conformant, int iMin, int iMax)
 A function to make a random instance of this class. More...
 
bool deepCopyFrom (MatrixConstructor *that)
 A function to make a deep copy of an instance of this class. More...
 
- Public Member Functions inherited from MatrixNode
 MatrixNode ()
 default constructor More...
 
virtual ~MatrixNode ()
 destructor More...
 
std::vector< MatrixNode * > getPrefixFromNodeTree ()
 
std::vector< MatrixNode * > preOrderMatrixNodeTraversal (std::vector< MatrixNode * > *prefixVector)
 
std::vector< MatrixNode * > getPostfixFromNodeTree ()
 
std::vector< MatrixNode * > postOrderMatrixNodeTraversal (std::vector< MatrixNode * > *postfixVector)
 
virtual bool IsEqual (MatrixNode *that)
 A function to check for the equality of two objects. More...
 
bool setRandom (double density, bool conformant, int iMin, int iMax)
 A function to make a random instance of this class. More...
 
bool deepCopyFrom (MatrixNode *that)
 A function to make a deep copy of an instance of this class. More...
 

Public Attributes

int baseMatrixIdx
 the index of the base matrix More...
 
int targetMatrixFirstRow
 to pinpoint the position of the upper left corner of the base matrix within the target matrix More...
 
int targetMatrixFirstCol
 
int baseMatrixStartRow
 to select the position of the upper left corner of the portion of the base matrix that is to be selected More...
 
int baseMatrixStartCol
 
int baseMatrixEndRow
 to select the position of the lower right corner of the portion of the base matrix that is to be selected More...
 
int baseMatrixEndCol
 
bool baseTranspose
 to allow the base matrix to be transposed before it is attached to the target matrix More...
 
double scalarMultiplier
 to allow the base matrix to be scaled before it is attached to the target matrix More...
 
- Public Attributes inherited from MatrixNode
ENUM_MATRIX_TYPE matrixType
 matrixType tracks the type of elements contained in this MatrixNode, which may be useful in solver selection More...
 
ENUM_MATRIX_CONSTRUCTOR_TYPE nType
 nType is a unique integer assigned to each type of matrix node More...
 
unsigned int inumberOfChildren
 inumberOfChildren is the number of MatrixNode child elements For the matrix types (OSMatrix and MatrixBlock) this number is not fixed and is temporarily set to 0 More...
 
MatrixNode ** m_mChildren
 m_mChildren holds all the children, that is, nodes used in the definition or construction of the current node. More...
 

Detailed Description

a data structure to represent a point of departure for constructing a matrix by modifying parts of a previously defined matrix

Definition at line 994 of file OSMatrix.h.

Constructor & Destructor Documentation

BaseMatrix::BaseMatrix ( )
BaseMatrix::~BaseMatrix ( )

Member Function Documentation

virtual ENUM_MATRIX_CONSTRUCTOR_TYPE BaseMatrix::getNodeType ( )
virtual
Returns
the value of nType

Reimplemented from MatrixNode.

virtual std::string BaseMatrix::getNodeName ( )
virtual
Returns
the name of the operator

Implements MatrixNode.

virtual std::string BaseMatrix::getMatrixNodeInXML ( )
virtual

The following method writes a matrix node in OSgL format. it is used by OSgLWriter to write a <matrix> element.

Returns
the MatrixNode and its children as an OSgL string.

Implements MatrixNode.

BaseMatrix * BaseMatrix::cloneMatrixNode ( )
virtual

The implementation of the virtual functions.

Returns
a pointer to a new MatrixNode of the proper type.

Implements MatrixNode.

bool BaseMatrix::IsEqual ( BaseMatrix that)

A function to check for the equality of two objects.

bool BaseMatrix::setRandom ( double  density,
bool  conformant,
int  iMin,
int  iMax 
)

A function to make a random instance of this class.

Parameters
density,:corresponds to the probability that a particular child element is created
conformant,:if true enforces side constraints not enforceable in the schema (e.g., agreement of "numberOfXXX" attributes and <XXX> children)
iMin,:lowest index value (inclusive) that a variable reference in this matrix can take
iMax,:greatest index value (inclusive) that a variable reference in this matrix can take
bool BaseMatrix::deepCopyFrom ( BaseMatrix that)

A function to make a deep copy of an instance of this class.

Parameters
that,:the instance from which information is to be copied
Returns
whether the copy was created successfully

Member Data Documentation

int BaseMatrix::baseMatrixIdx

the index of the base matrix

Definition at line 1000 of file OSMatrix.h.

int BaseMatrix::targetMatrixFirstRow

to pinpoint the position of the upper left corner of the base matrix within the target matrix

Definition at line 1005 of file OSMatrix.h.

int BaseMatrix::targetMatrixFirstCol

Definition at line 1006 of file OSMatrix.h.

int BaseMatrix::baseMatrixStartRow

to select the position of the upper left corner of the portion of the base matrix that is to be selected

Definition at line 1012 of file OSMatrix.h.

int BaseMatrix::baseMatrixStartCol

Definition at line 1013 of file OSMatrix.h.

int BaseMatrix::baseMatrixEndRow

to select the position of the lower right corner of the portion of the base matrix that is to be selected

Definition at line 1019 of file OSMatrix.h.

int BaseMatrix::baseMatrixEndCol

Definition at line 1020 of file OSMatrix.h.

bool BaseMatrix::baseTranspose

to allow the base matrix to be transposed before it is attached to the target matrix

Definition at line 1025 of file OSMatrix.h.

double BaseMatrix::scalarMultiplier

to allow the base matrix to be scaled before it is attached to the target matrix

Definition at line 1030 of file OSMatrix.h.


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