#include <ContactLocalFlexPlugin.h>


Public Member Functions | |
| ContactLocalFlexPlugin () | |
| virtual | ~ContactLocalFlexPlugin () |
| BasicClassAccessor < ContactLocalFlexDataContainer > * | getContactDataContainerAccessorPtr () |
| void | initializeContactLocalFlexData () |
| virtual void | field3DChange (const Point3D &pt, CellG *newCell, CellG *oldCell) |
| virtual double | changeEnergy (const Point3D &pt, const CellG *newCell, const CellG *oldCell) |
| virtual void | init (Simulator *simulator, CC3DXMLElement *_xmlData=0) |
| virtual void | extraInit (Simulator *simulator) |
| virtual std::string | toString () |
| virtual void | update (CC3DXMLElement *_xmlData, bool _fullInitFlag=false) |
| virtual std::string | steerableName () |
| double | contactEnergy (const CellG *cell1, const CellG *cell2) |
| double | defaultContactEnergy (const CellG *cell1, const CellG *cell2) |
| void | setContactEnergy (const std::string typeName1, const std::string typeName2, const double energy) |
Protected Member Functions | |
| int | getIndex (const int type1, const int type2) const |
Private Types | |
| typedef std::map< int, double > | contactEnergies_t |
| typedef std::vector < std::vector< double > > | contactEnergyArray_t |
Private Member Functions | |
| void | updateContactEnergyData (CellG *_cell) |
Private Attributes | |
| BasicClassAccessor < ContactLocalFlexDataContainer > | contactDataContainerAccessor |
| Potts3D * | potts |
| Simulator * | sim |
| bool | initializadContactData |
| contactEnergies_t | contactEnergies |
| contactEnergyArray_t | contactEnergyArray |
| std::string | autoName |
| double | depth |
| Automaton * | automaton |
| bool | weightDistance |
| unsigned int | maxNeighborIndex |
| BoundaryStrategy * | boundaryStrategy |
| CC3DXMLElement * | xmlData |
Definition at line 54 of file ContactLocalFlexPlugin.h.
typedef std::map<int, double> CompuCell3D::ContactLocalFlexPlugin::contactEnergies_t [private] |
Definition at line 65 of file ContactLocalFlexPlugin.h.
typedef std::vector<std::vector<double> > CompuCell3D::ContactLocalFlexPlugin::contactEnergyArray_t [private] |
Definition at line 66 of file ContactLocalFlexPlugin.h.
| ContactLocalFlexPlugin::ContactLocalFlexPlugin | ( | ) |
| ContactLocalFlexPlugin::~ContactLocalFlexPlugin | ( | ) | [virtual] |
Definition at line 54 of file ContactLocalFlexPlugin.cpp.
| void ContactLocalFlexPlugin::updateContactEnergyData | ( | CellG * | _cell | ) | [private] |
Definition at line 230 of file ContactLocalFlexPlugin.cpp.
References CompuCell3D::NeighborTracker::cellNeighbors, contactDataContainerAccessor, defaultContactEnergy(), CompuCell3D::CellG::extraAttribPtr, BasicClassAccessor< T >::get(), CompuCell3D::NeighborTrackerPlugin::getNeighborTrackerAccessorPtr(), CompuCell3D::ContactLocalFlexData::J, CompuCell3D::NeighborSurfaceData::neighborAddress, CompuCell3D::ContactLocalFlexData::neighborAddress, and CompuCell3D::Simulator::pluginManager.
Referenced by field3DChange(), and initializeContactLocalFlexData().
| BasicClassAccessor<ContactLocalFlexDataContainer>* CompuCell3D::ContactLocalFlexPlugin::getContactDataContainerAccessorPtr | ( | ) | [inline] |
Definition at line 86 of file ContactLocalFlexPlugin.h.
| void ContactLocalFlexPlugin::initializeContactLocalFlexData | ( | ) |
Definition at line 207 of file ContactLocalFlexPlugin.cpp.
References CompuCell3D::CellInventory::cellInventoryBegin(), CompuCell3D::CellInventory::cellInventoryEnd(), contactDataContainerAccessor, contactEnergyArray, CompuCell3D::CellG::extraAttribPtr, CompuCell3D::Potts3D::getCellInventory(), CompuCell3D::ContactLocalFlexDataContainer::localDefaultContactEnergies, potts, and updateContactEnergyData().
Referenced by field3DChange().
| void ContactLocalFlexPlugin::field3DChange | ( | const Point3D & | pt, | |
| CellG * | newCell, | |||
| CellG * | oldCell | |||
| ) | [virtual] |
Definition at line 289 of file ContactLocalFlexPlugin.cpp.
References CompuCell3D::Simulator::getStep(), initializadContactData, initializeContactLocalFlexData(), sim, and updateContactEnergyData().
| double ContactLocalFlexPlugin::changeEnergy | ( | const Point3D & | pt, | |
| const CellG * | newCell, | |||
| const CellG * | oldCell | |||
| ) | [virtual] |
| pt | The point of change. | |
| newCell | The new spin. |
Reimplemented from CompuCell3D::EnergyFunction.
Definition at line 81 of file ContactLocalFlexPlugin.cpp.
References boundaryStrategy, contactEnergy(), CompuCell3D::Neighbor::distance, CompuCell3D::Field3DImpl< T >::get(), CompuCell3D::Potts3D::getCellFieldG(), CompuCell3D::BoundaryStrategy::getNeighborDirect(), maxNeighborIndex, potts, CompuCell3D::Neighbor::pt, and weightDistance.
| void ContactLocalFlexPlugin::init | ( | Simulator * | simulator, | |
| CC3DXMLElement * | _xmlData = 0 | |||
| ) | [virtual] |
Reimplemented from CompuCell3D::SimObject.
Definition at line 58 of file ContactLocalFlexPlugin.cpp.
References contactDataContainerAccessor, CompuCell3D::Potts3D::getCellFactoryGroupPtr(), CompuCell3D::Simulator::getPotts(), CompuCell3D::SimObject::init(), SimpleVolumeCallFromPython::plugin, CompuCell3D::Simulator::pluginManager, potts, CompuCell3D::Potts3D::registerCellGChangeWatcher(), BasicClassGroupFactory::registerClass(), CompuCell3D::Potts3D::registerEnergyFunction(), CompuCell3D::Simulator::registerSteerableObject(), sim, and xmlData.
| void ContactLocalFlexPlugin::extraInit | ( | Simulator * | simulator | ) | [virtual] |
Reimplemented from CompuCell3D::SimObject.
Definition at line 77 of file ContactLocalFlexPlugin.cpp.
| std::string ContactLocalFlexPlugin::toString | ( | ) | [virtual] |
Reimplemented from CompuCell3D::Plugin.
Definition at line 375 of file ContactLocalFlexPlugin.cpp.
Referenced by steerableName().
| void ContactLocalFlexPlugin::update | ( | CC3DXMLElement * | _xmlData, | |
| bool | _fullInitFlag = false | |||
| ) | [virtual] |
Reimplemented from CompuCell3D::SteerableObject.
Definition at line 305 of file ContactLocalFlexPlugin.cpp.
References ASSERT_OR_THROW, automaton, boundaryStrategy, contactEnergies, contactEnergyArray, CompuCell3D::Potts3D::getAutomaton(), CC3DXMLElement::getDouble(), CC3DXMLElement::getElements(), CC3DXMLElement::getFirstElement(), getIndex(), CompuCell3D::BoundaryStrategy::getInstance(), CompuCell3D::BoundaryStrategy::getMaxNeighborIndexFromDepth(), CompuCell3D::BoundaryStrategy::getMaxNeighborIndexFromNeighborOrder(), CompuCell3D::Automaton::getTypeId(), CC3DXMLElement::getUInt(), maxNeighborIndex, potts, and setContactEnergy().
Referenced by extraInit().
| std::string ContactLocalFlexPlugin::steerableName | ( | ) | [virtual] |
Reimplemented from CompuCell3D::SteerableObject.
Definition at line 380 of file ContactLocalFlexPlugin.cpp.
References toString().
Definition at line 168 of file ContactLocalFlexPlugin.cpp.
References contactDataContainerAccessor, defaultContactEnergy(), CompuCell3D::CellG::extraAttribPtr, and CompuCell3D::ContactLocalFlexData::neighborAddress.
Referenced by changeEnergy().
Definition at line 198 of file ContactLocalFlexPlugin.cpp.
References contactEnergyArray, and CompuCell3D::CellG::type.
Referenced by contactEnergy(), and updateContactEnergyData().
| void CompuCell3D::ContactLocalFlexPlugin::setContactEnergy | ( | const std::string | typeName1, | |
| const std::string | typeName2, | |||
| const double | energy | |||
| ) |
Sets the contact energy for two cell types. A -1 type is interpreted as the medium.
Referenced by update().
| int ContactLocalFlexPlugin::getIndex | ( | const int | type1, | |
| const int | type2 | |||
| ) | const [protected] |
Definition at line 161 of file ContactLocalFlexPlugin.cpp.
Referenced by update().
BasicClassAccessor<ContactLocalFlexDataContainer> CompuCell3D::ContactLocalFlexPlugin::contactDataContainerAccessor [private] |
Definition at line 56 of file ContactLocalFlexPlugin.h.
Referenced by contactEnergy(), init(), initializeContactLocalFlexData(), and updateContactEnergyData().
Definition at line 57 of file ContactLocalFlexPlugin.h.
Referenced by changeEnergy(), init(), initializeContactLocalFlexData(), and update().
bool CompuCell3D::ContactLocalFlexPlugin::initializadContactData [private] |
Definition at line 60 of file ContactLocalFlexPlugin.h.
Referenced by ContactLocalFlexPlugin(), and field3DChange().
Definition at line 70 of file ContactLocalFlexPlugin.h.
Referenced by defaultContactEnergy(), initializeContactLocalFlexData(), and update().
std::string CompuCell3D::ContactLocalFlexPlugin::autoName [private] |
Definition at line 72 of file ContactLocalFlexPlugin.h.
double CompuCell3D::ContactLocalFlexPlugin::depth [private] |
Definition at line 73 of file ContactLocalFlexPlugin.h.
bool CompuCell3D::ContactLocalFlexPlugin::weightDistance [private] |
unsigned int CompuCell3D::ContactLocalFlexPlugin::maxNeighborIndex [private] |
1.5.6