CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

SequenceTypes::_SequenceCollection Class Reference

Inheritance diagram for SequenceTypes::_SequenceCollection:
SequenceTypes::_Sequenceable

List of all members.

Public Member Functions

def __add__
def __init__
def __mul__
def __str__
def dumpSequenceConfig
def dumpSequencePython
def index
def insert
def resolve
def visitNode

Private Member Functions

def _appendToCollection

Private Attributes

 _collection

Detailed Description

Holds representation of the operations without having to use recursion.
Operations are added to the beginning of the list and their operands are
added to the end of the list, with the left added before the right

Definition at line 56 of file SequenceTypes.py.


Constructor & Destructor Documentation

def SequenceTypes::_SequenceCollection::__init__ (   self,
  seqList 
)

Definition at line 61 of file SequenceTypes.py.

00062                                :
00063         self._collection = list()
00064         for s in seqList:
00065             _checkIfSequenceable(self,s)
            s._appendToCollection(self._collection)

Member Function Documentation

def SequenceTypes::_SequenceCollection::__add__ (   self,
  rhs 
)

Reimplemented from SequenceTypes::_Sequenceable.

Definition at line 70 of file SequenceTypes.py.

00071                          :
00072         _checkIfSequenceable(self,rhs)
00073         rhs._appendToCollection(self._collection)
        return self
def SequenceTypes::_SequenceCollection::__mul__ (   self,
  rhs 
)

Reimplemented from SequenceTypes::_Sequenceable.

Definition at line 66 of file SequenceTypes.py.

00067                          :
00068         _checkIfSequenceable(self,rhs)
00069         rhs._appendToCollection(self._collection)
        return self
def SequenceTypes::_SequenceCollection::__str__ (   self)

Definition at line 74 of file SequenceTypes.py.

00075                      :
00076         sep = ''
00077         returnValue = ''
00078         for m in self._collection:
00079             if m is not None:
00080                 returnValue += sep+str(m)
00081                 sep = '+'
        return returnValue
def SequenceTypes::_SequenceCollection::_appendToCollection (   self,
  collection 
) [private]

Reimplemented from SequenceTypes::_Sequenceable.

Definition at line 82 of file SequenceTypes.py.

00083                                             :
        collection.extend(self._collection)
def SequenceTypes::_SequenceCollection::dumpSequenceConfig (   self)

Definition at line 89 of file SequenceTypes.py.

00090                                 :
00091         returnValue = self._collection[0].dumpSequenceConfig()
00092         for m in self._collection[1:]:
00093             returnValue += '&'+m.dumpSequenceConfig()        
        return returnValue
def SequenceTypes::_SequenceCollection::dumpSequencePython (   self)

Definition at line 84 of file SequenceTypes.py.

00085                                 :
00086         returnValue = self._collection[0].dumpSequencePython()
00087         for m in self._collection[1:]:
00088             returnValue += '+'+m.dumpSequencePython()        
        return returnValue
def SequenceTypes::_SequenceCollection::index (   self,
  item 
)

Definition at line 100 of file SequenceTypes.py.

00101                         :
        return self._collection.index(item)
def SequenceTypes::_SequenceCollection::insert (   self,
  index,
  item 
)

Definition at line 102 of file SequenceTypes.py.

00103                                :
00104         self._collection.insert(index,item)
00105 
00106 

def SequenceTypes::_SequenceCollection::resolve (   self,
  processDict 
)

Reimplemented from SequenceTypes::_Sequenceable.

Definition at line 97 of file SequenceTypes.py.

00098                                   :
00099         self._collection = [x.resolve(processDict) for x in self._collection]
        return self
def SequenceTypes::_SequenceCollection::visitNode (   self,
  visitor 
)

Reimplemented from SequenceTypes::_Sequenceable.

Definition at line 94 of file SequenceTypes.py.

00095                                :
00096         for m in self._collection:
            m.visitNode(visitor)

Member Data Documentation

Definition at line 61 of file SequenceTypes.py.