/home/msneddon/eclipse/galileoSR1_cpp/workspace/NFsim/src/NFreactions/reactantLists/reactantList.hh

Go to the documentation of this file.
00001 #ifndef REACTANTLIST_HH_
00002 #define REACTANTLIST_HH_
00003 
00004 
00005 
00006 
00007 #include "../NFreactions.hh"
00008 
00009 namespace NFcore
00010 {
00011         //Forward Declarations
00012         class TransformationSet;
00013         class MappingSet;
00014 
00015 
00017 
00034         class ReactantList : public ReactantContainer
00035         {
00036                 public:
00037 
00044                         ReactantList(unsigned int reactantIndex, TransformationSet *ts, unsigned int init_capacity);
00045 
00046 
00050                         virtual ~ReactantList();
00051 
00052 
00056                         virtual int size() const { return n_mappingSets; };
00057 
00063                         virtual MappingSet * pushNextAvailableMappingSet();
00064 
00068                         virtual void popLastMappingSet();
00069 
00074                         virtual void removeMappingSet(unsigned int mappingSetId);
00075 
00079                         void pickRandom(MappingSet *&ms);
00080 
00081 
00082                         virtual MappingSet * getMappingSet(unsigned int mappingSetId) const;
00083 
00084 
00088                         virtual void printDetails() const;
00089 
00090                 protected:
00091 
00093                         int n_mappingSets;
00094 
00096                         int capacity;
00097 
00099                         TransformationSet *ts;
00100 
00102                         unsigned int reactantIndex;
00103 
00106                         unsigned int * msPositionMap;
00107 
00109                         MappingSet **mappingSets;
00110         };
00111 }
00112 
00113 
00114 
00115 
00116 
00117 
00118 
00119 
00120 
00121 
00122 
00123 
00124 
00125 
00126 
00127 
00128 #endif /*REACTANTLIST_HH_*/

Generated on Thu Dec 9 11:02:48 2010 for NFsim by  doxygen 1.5.4