Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

AltDeMuxPatternMaster.h

Go to the documentation of this file.
00001 #ifndef ALT_DEMUX_PATTERN_MASTER_H
00002 #define ALT_DEMUX_PATTERN_MASTER_H
00003 
00004 #include <set>
00005 #include <vector>
00006 #include "TObject.h"
00007 #include "AltDeMuxStructures.h"
00008 
00009 class AltDeMuxPatternMaster;  // Forward declaration of THIS class 
00010 class AltDeMuxPattern;  // Forward declaration of THIS class 
00011 
00012 
00013 class AltDeMuxPattern: public TObject
00014 {
00015 
00016 public:
00017 
00018   AltDeMuxPattern(int i1);
00019   AltDeMuxPattern(int i1, int i2);
00020   AltDeMuxPattern(int i1, int i2, int i3);
00021   AltDeMuxPattern(int i1, int i2, int i3, int i4);
00022   AltDeMuxPattern(int i1, int i2, int i3, int i4, int i5);
00023   PatternPair GetI(int i);
00024   int Size(){return isize;};
00025 
00026 private:
00027 
00028   int isize;
00029   std::vector<PatternPair> pattern;
00030 
00031   ClassDef(AltDeMuxPattern,1);
00032 
00033 };
00034 
00035 class AltDeMuxPatternMaster : public TObject
00036 {
00037 public:
00038 
00039   AltDeMuxPatternMaster();
00040   bool SelectPattern(int entriesE, int entriesW);                             
00041   AltDeMuxPattern* Next();
00042 
00043 private:
00044 
00045   int icursor;
00046   int imax;
00047 
00048   /* --------------Data Structures---------------- */
00049 
00050   std::vector<AltDeMuxPattern*> pattern11;
00051   std::vector<AltDeMuxPattern*> pattern22;
00052   std::vector<AltDeMuxPattern*> pattern23;
00053   std::vector<AltDeMuxPattern*> pattern24;
00054   std::vector<AltDeMuxPattern*> pattern32;
00055   std::vector<AltDeMuxPattern*> pattern33;
00056   std::vector<AltDeMuxPattern*> pattern34;
00057   std::vector<AltDeMuxPattern*> pattern35;
00058   std::vector<AltDeMuxPattern*> pattern43;
00059   std::vector<AltDeMuxPattern*> pattern44;
00060   std::vector<AltDeMuxPattern*> pattern45;
00061   std::vector<AltDeMuxPattern*> pattern53;
00062   std::vector<AltDeMuxPattern*> pattern54;
00063   std::vector<AltDeMuxPattern*> pattern55;
00064   std::vector<AltDeMuxPattern*> *pCurrentSet;
00065 
00066   ClassDef(AltDeMuxPatternMaster,1);
00067 
00068 }; 
00069 #endif // MY_DEMUX_PATTERN_MASTER_H
00070 

Generated on Mon Feb 15 11:06:21 2010 for loon by  doxygen 1.3.9.1