Cytosim PI Cytoskeleton Simulator

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

List of all members | Public Member Functions
SingleSet Class Reference

## Detailed Description

A Single is stored in one of 2 NodeList, depending on its state:

- fList = free,
- aList = attached.

Each list is accessible via its head firstF() and firstA(). This way, the state of the Single are known when accessing them.

A Single is automatically transfered to the appropriate list, if its Hand binds or unbind. This is one role of HandMonitor: HandMonitor::afterAttachment() and HandMonitor::afterDetachment() are called by the Hand, and calls SingleSet::relink().

Inheritance diagram for SingleSet:

## Public Member Functions
| SingleSet (Simul &s)
| creator
virtual | ~SingleSet ()
| destructor
std::string | kind () const
| identifies the class
Property * | newProperty (const std::string &kind, const std::string &name, Glossary &) const
| create a new property for class kind with given name More...
Object * | newObject (const std::string &kind, const std::string &prop, Glossary &opt)
| create a new object from the corresponding property
Object * | newObjectT (const Tag tag, int prop_index)
| construct object
ObjectList | newObjects (const std::string &kind, const std::string &prop, Glossary &)
| create a new object directly from a glossary
void | removeWrists (Object *obj)
| remove all Wrists anchored on Object 'obj'
Single * | firstF () const
| returns the first free Single
Single * | firstA () const
| returns the first bound Single
Single * | find (Number n) const
| return pointer to the Object of given Number, or zero if not found
ObjectList | collect (bool(*func)(Object const *, void *), void *) const
| collect Object for which func(obj, val) == true
void | erase ()
| erase all Object and all Property
unsigned int | size () const
| number of elements
void | mix ()
| mix order of elements
void | freeze ()
| transfer all object to ice
void | thaw (bool erase)
| delete objects, or put them back in normal list
void | step (FiberSet const &, FiberGrid const &)
| Monte-Carlo step.
void | write (OutputWrapper &) const
| write
void | foldPosition (const Modulo *) const
| modulo the position (periodic boundary conditions)
int | bad () const
| check internal consistency, returns 0 if everything is OK
Public Member Functions inherited from ObjectSet
| ObjectSet (Simul &s)
| creator
virtual | ~ObjectSet ()
| destructor
virtual ObjectList | newPlacedObjects (const std::string &kind, const std::string &name, Glossary &opt)
| create new objects, translate and rotate them according to specifications in opt More...
virtual void | add (Object *)
| register Object, and add it at the end of the list
void | add (ObjectList &)
| remove Object in ObjectList
virtual void | remove (Object *)
| remove Object
void | remove (ObjectList &)
| remove Object in ObjectList
virtual void | relink (Object *)
| unlink and relink object. This places it last in the list More...
void | erase (Object *)
| remove Object, and delete it
Object * | first () const
| first Object in the list
Object * | first (const Property *) const
| return an Object which has this property More...
Object * | last () const
| last Object
Object * | find (const Number n) const
| find Object of given serial-number (see Inventoried)
Object * | findObject (long n) const
| return Object with serial-number if ( n > 0 ) or object from the end of the list if ( n <= 0 ) More...
void | readObject (InputWrapper &, Tag, char pretag)
| read one Object from file More...

## Additional Inherited Members
Static Public Member Functions inherited from ObjectSet
static void | translateObjects (ObjectList const &, Vector const &)
| apply translation to all Objects in ObjectList More...
static void | rotateObjects (ObjectList const &, Rotation const &)
| apply rotation to all Objects in ObjectList More...
Public Attributes inherited from ObjectSet
Inventory | inventory
| holds pointers to the Objects in a array of Numbers
NodeList | nodes
| holds pointers to the Objects in a doubly linked list
Simul & | simul
| the Simul containing this ObjectSet
Protected Member Functions inherited from ObjectSet
void | forget (NodeList &)
| remove all nodes in the list from the inventory
Static Protected Member Functions inherited from ObjectSet
static ObjectList | collect (const NodeList &, bool(*func)(Object const *, void *), void *)
| collect Object from NodeList for which func(obj, val) == true
static void | write (const NodeList &, OutputWrapper &)
| write Object in NodeList to file More...
static Vector | placeObjects (ObjectList const &, Glossary &opt, const Space *)
| place all Objects in ObjectList using the same combinations of translation/rotation More...
Protected Attributes inherited from ObjectSet
NodeList | ice
| a list used to store the objects temporarily while a state is imported

## Member Function Documentation

Property * newProperty | ( | const std::string & | kd,
|  | const std::string & | nm,
|  | Glossary & | opt
| ) |  | const
| virtual

List of classes accessible by specifying single:activity:

`activity` | Class | Description
--- | --- | ---
`diffuse` | Single | a single Hand that is mobile (default)
`fixed` | Picket | a single Hand anchored at a fixed position

Another class Wrist is used automatically to anchor a Single to a Mecable.

Example:

set single grafted
{
hand = kinesin
stiffness = 100
activity = fixed
}

A newly created Single can be anchored to a Mecable:

new single NAME {
base = CLASS_NAME, INTEGER_REF, INTEGER_INDEX
}

where:

- CLASS_NAME is the name of the object class (eg. solid)
- INTEGER_REF designates the object:
  - 1 for first object
  - 2 for second...
  - 0 designates the last object,
  - -1 is the penultimate one, etc.
- INTEGER_INDEX designates a point on this object:
  - 0 = first point
  - 1 = second point...

if INTERGER1 is negative, the last object is used.

You can attach a Single to a fiber:

new single protein
{
attach = INTEGER, REAL
}

where:

- INTEGER designates the fiber:
  - 1 for the first fiber
  - 2 for the second, etc
  - a negative number indicates the last fiber created
- REAL is the abscissa of the attachment point (0=MINUS_END)

Implements ObjectSet.