chrono::ChLinkMask Class Reference
Description
Mask structure for N scalar constraint equations between two bodies.
#include <ChLinkMask.h>
Inheritance diagram for chrono::ChLinkMask:
Public Member Functions | |
ChLinkMask () | |
Build a link mask with no constraints. | |
ChLinkMask (int mnconstr) | |
Build a link mask with a default array of mnconstr constraints of class ChConstraintTwoBodies(). | |
ChLinkMask (const ChLinkMask &source) | |
Copy constructor. | |
virtual | ~ChLinkMask () |
Destructor. | |
ChLinkMask & | operator= (const ChLinkMask &other) |
Assignment operator. | |
void | SetTwoBodiesVariables (ChVariables *var1, ChVariables *var2) |
Set references to variables of two connected bodies to all constraints at once, therefore also sets all the constraints as active. | |
ChConstraintTwoBodies & | Constr_N (int i) |
Obtain the reference to the i-th scalar constraint data in the collection link mask. | |
void | ResetNconstr (int newnconstr) |
Utility: to change the size of the mask, reallocating constraints (all of type ChConstraintTwo). More... | |
void | AddConstraint (ChConstraintTwoBodies *aconstr) |
Add a ChConstraintTwoBodies to mask (NOTE: later, the constraint will be automatically deleted when the mask will be deleted) | |
bool | IsEqual (ChLinkMask &mask2) |
To compare two masks, return true if equal. | |
int | GetMaskDoc () |
Count both bilaterals and unilaterals. | |
int | GetMaskDoc_c () |
Count only bilaterals. | |
int | GetMaskDoc_d () |
Count only unilaterals. | |
ChConstraintTwoBodies * | GetActiveConstrByNum (int mnum) |
Get the i-th active scalar constraint (not active constr. won't be considered) | |
int | SetActiveRedundantByArray (int *mvector, int mcount) |
Sets some active constraints as redundant. | |
int | RestoreRedundant () |
Set lock =ON for constraints which were disabled because redundant. | |
int | SetAllDisabled (bool mdis) |
If SetAllDisabled(true), all the constraints are temporarily turned off (inactive) at once, because marked as 'disabled'. More... | |
int | SetAllBroken (bool mdis) |
If SetAllBroken(true), all the constraints are temporarily turned off (broken) at once, because marked as 'broken'. More... | |
virtual void | ArchiveOUT (ChArchiveOut &marchive) |
Method to allow serialization of transient data to archives. | |
virtual void | ArchiveIN (ChArchiveIn &marchive) |
Method to allow de-serialization of transient data from archives. | |
Public Attributes | |
int | nconstr |
number of scalar constraint equations. | |
Protected Attributes | |
std::vector< ChConstraintTwoBodies * > | constraints |
array of pointers to 'n' scalar constraints | |
Member Function Documentation
◆ ResetNconstr()
void chrono::ChLinkMask::ResetNconstr | ( | int | newnconstr | ) |
Utility: to change the size of the mask, reallocating constraints (all of type ChConstraintTwo).
No action if newnconstr == nconstr
◆ SetAllBroken()
int chrono::ChLinkMask::SetAllBroken | ( | bool | mdis | ) |
If SetAllBroken(true), all the constraints are temporarily turned off (broken) at once, because marked as 'broken'.
Return n.of changed.
◆ SetAllDisabled()
int chrono::ChLinkMask::SetAllDisabled | ( | bool | mdis | ) |
If SetAllDisabled(true), all the constraints are temporarily turned off (inactive) at once, because marked as 'disabled'.
Return n.of changed
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono/physics/ChLinkMask.h
- /builds/uwsbel/chrono/src/chrono/physics/ChLinkMask.cpp