#include <NFcore.hh>
The base unit of the NFsim program, this class maintains instances of individual objects that exist in the simulation. Molecules are able to interact with their MoleculeType so that they also 'know' about the reactions and observables they need to keep updated as they react and change states. There are also two static functions which are used to create and delete bonds (bind and unbind).
Public Member Functions | |
Molecule (MoleculeType *parentMoleculeType, int listId) | |
~Molecule () | |
int | getMolListId () const |
string | getMoleculeTypeName () const |
MoleculeType * | getMoleculeType () const |
int | getUniqueID () const |
bool | isAlive () const |
void | setAlive (bool isAlive) |
void | setComplexID (int currentComplex) |
int | getComplexID () const |
Complex * | getComplex () const |
int | getDegree () |
int | getComponentState (int cIndex) const |
int | getComponentIndexOfBond (int cIndex) const |
void | setComponentState (int cIndex, int newValue) |
void | setComponentState (string cName, int newValue) |
void | setLocalFunctionValue (double newValue, int localFunctionIndex) |
double | getLocalFunctionValue (int localFunctionIndex) |
LocalFunction * | getLocalFunction (int localFunctionIndex) |
void | setUpLocalFunctionList () |
bool | isBindingSiteOpen (int bIndex) const |
bool | isBindingSiteBonded (int bIndex) const |
Molecule * | getBondedMolecule (int bSiteIndex) const |
int | getBondedMoleculeBindingSiteIndex (int cIndex) const |
int | getRxnListMappingId (int rxnIndex) const |
void | setRxnListMappingId (int rxnIndex, int rxnListMappingId) |
void | setBondTo (Molecule *m2, int bindingSiteIndex) |
void | moveToNewComplex (int newComplexID) |
void | traverseBondedNeighborhood (list< Molecule * > &members, int traversalLimit) |
void | depthFirstSearch (list< Molecule * > &members) |
void | prepareForSimulation () |
void | updateRxnMembership () |
void | removeFromObservables () |
void | addToObservables () |
void | updateTypeIIFunctions () |
void | updateDORRxnValues () |
void | printDetails () |
void | printDetails (ostream &o) |
int | isObs (int oIndex) const |
void | setIsObs (int oIndex, int isObs) |
Static Public Member Functions | |
static void | bind (Molecule *m1, int cIndex1, Molecule *m2, int cIndex2) |
static void | bind (Molecule *m1, string compName1, Molecule *m2, string compName2) |
static void | unbind (Molecule *m1, int bSiteIndex) |
static void | unbind (Molecule *m1, char *bSiteName) |
static void | breadthFirstSearch (list< Molecule * > &members, Molecule *m, int depth) |
static void | printMoleculeList (list< Molecule * > &members) |
static int | getUniqueIdCount () |
Public Attributes | |
bool | hasVisitedMolecule |
bool * | hasVisitedBond |
TemplateMolecule * | isMatchedTo |
bool | hasEvaluatedMolecule |
Static Public Attributes | |
static const int | NOT_IN_RXN = -1 |
static const int | NOSTATE = -1 |
static const int | NOBOND = 0 |
static const int | NOINDEX = -1 |
Protected Attributes | |
bool | isPrepared |
bool | isAliveInSim |
int | ID_complex |
int | ID_type |
int | ID_unique |
int | listId |
MoleculeType * | parentMoleculeType |
bool | useComplex |
int * | component |
int | numOfComponents |
Molecule ** | bond |
int * | indexOfBond |
double * | localFunctionValues |
int * | isObservable |
int * | rxnListMappingId |
int | nReactions |
Static Protected Attributes | |
static int | uniqueIdCount = 0 |
Molecule::Molecule | ( | MoleculeType * | parentMoleculeType, | |
int | listId | |||
) |
Molecule::~Molecule | ( | ) |
int NFcore::Molecule::getMolListId | ( | ) | const [inline] |
string NFcore::Molecule::getMoleculeTypeName | ( | ) | const [inline] |
MoleculeType* NFcore::Molecule::getMoleculeType | ( | ) | const [inline] |
int NFcore::Molecule::getUniqueID | ( | ) | const [inline] |
bool NFcore::Molecule::isAlive | ( | ) | const [inline] |
void NFcore::Molecule::setAlive | ( | bool | isAlive | ) | [inline] |
void NFcore::Molecule::setComplexID | ( | int | currentComplex | ) | [inline] |
int NFcore::Molecule::getComplexID | ( | ) | const [inline] |
Complex* NFcore::Molecule::getComplex | ( | ) | const [inline] |
int Molecule::getDegree | ( | ) |
int NFcore::Molecule::getComponentState | ( | int | cIndex | ) | const [inline] |
int NFcore::Molecule::getComponentIndexOfBond | ( | int | cIndex | ) | const [inline] |
void Molecule::setComponentState | ( | int | cIndex, | |
int | newValue | |||
) |
void Molecule::setComponentState | ( | string | cName, | |
int | newValue | |||
) |
void Molecule::setLocalFunctionValue | ( | double | newValue, | |
int | localFunctionIndex | |||
) |
double Molecule::getLocalFunctionValue | ( | int | localFunctionIndex | ) |
LocalFunction * Molecule::getLocalFunction | ( | int | localFunctionIndex | ) |
void Molecule::setUpLocalFunctionList | ( | ) |
bool Molecule::isBindingSiteOpen | ( | int | bIndex | ) | const |
bool Molecule::isBindingSiteBonded | ( | int | bIndex | ) | const |
Molecule * Molecule::getBondedMolecule | ( | int | bSiteIndex | ) | const |
int Molecule::getBondedMoleculeBindingSiteIndex | ( | int | cIndex | ) | const |
int NFcore::Molecule::getRxnListMappingId | ( | int | rxnIndex | ) | const [inline] |
void NFcore::Molecule::setRxnListMappingId | ( | int | rxnIndex, | |
int | rxnListMappingId | |||
) | [inline] |
void NFcore::Molecule::setBondTo | ( | Molecule * | m2, | |
int | bindingSiteIndex | |||
) |
void NFcore::Molecule::moveToNewComplex | ( | int | newComplexID | ) | [inline] |
void Molecule::unbind | ( | Molecule * | m1, | |
int | bSiteIndex | |||
) | [static] |
void Molecule::unbind | ( | Molecule * | m1, | |
char * | bSiteName | |||
) | [static] |
void Molecule::traverseBondedNeighborhood | ( | list< Molecule * > & | members, | |
int | traversalLimit | |||
) |
void Molecule::breadthFirstSearch | ( | list< Molecule * > & | members, | |
Molecule * | m, | |||
int | depth | |||
) | [static] |
void Molecule::depthFirstSearch | ( | list< Molecule * > & | members | ) |
void Molecule::prepareForSimulation | ( | ) |
void Molecule::updateRxnMembership | ( | ) |
void Molecule::removeFromObservables | ( | ) |
void Molecule::addToObservables | ( | ) |
void Molecule::updateTypeIIFunctions | ( | ) |
void Molecule::updateDORRxnValues | ( | ) |
void Molecule::printDetails | ( | ) |
void Molecule::printDetails | ( | ostream & | o | ) |
void Molecule::printMoleculeList | ( | list< Molecule * > & | members | ) | [static] |
static int NFcore::Molecule::getUniqueIdCount | ( | ) | [inline, static] |
int NFcore::Molecule::isObs | ( | int | oIndex | ) | const [inline] |
void NFcore::Molecule::setIsObs | ( | int | oIndex, | |
int | isObs | |||
) | [inline] |
const int NFcore::Molecule::NOT_IN_RXN = -1 [static] |
const int NFcore::Molecule::NOSTATE = -1 [static] |
const int NFcore::Molecule::NOBOND = 0 [static] |
const int NFcore::Molecule::NOINDEX = -1 [static] |
bool NFcore::Molecule::isPrepared [protected] |
bool NFcore::Molecule::isAliveInSim [protected] |
int NFcore::Molecule::ID_complex [protected] |
int NFcore::Molecule::ID_type [protected] |
int NFcore::Molecule::ID_unique [protected] |
int NFcore::Molecule::listId [protected] |
int Molecule::uniqueIdCount = 0 [static, protected] |
MoleculeType* NFcore::Molecule::parentMoleculeType [protected] |
bool NFcore::Molecule::useComplex [protected] |
int* NFcore::Molecule::component [protected] |
int NFcore::Molecule::numOfComponents [protected] |
Molecule** NFcore::Molecule::bond [protected] |
int* NFcore::Molecule::indexOfBond [protected] |
double* NFcore::Molecule::localFunctionValues [protected] |
int* NFcore::Molecule::isObservable [protected] |
int* NFcore::Molecule::rxnListMappingId [protected] |
int NFcore::Molecule::nReactions [protected] |