Changeset 394 in Sophya for trunk/Poubelle/archTOI.old/ssthandler.h
- Timestamp:
- Sep 1, 1999, 2:45:54 PM (26 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Poubelle/archTOI.old/ssthandler.h
r350 r394 5 5 #define SSTHANDLER_H 6 6 7 #include <math.h> 7 8 #include <vector> 9 #include <map> 8 10 9 11 #ifndef nb_max_bolo … … 15 17 #endif 16 18 19 class ArcheopsFile; 20 21 // Zone findStar 22 #include "sstetoile.h" 23 #include "pisteetoile.h" 24 25 //#define SST_DEBUG 26 #define NbChanDump (10) 27 #define NbPhotDiodBarette (46) 28 #define NbEtInMapMax (100) 29 #define SSTChassLog (true) 30 #define NbSampleBlock (2*nb_per_block) 31 // Fin Zone findStar 17 32 18 33 class SSTHandler { … … 23 38 virtual ~SSTHandler(); 24 39 25 enum process { rmveOffset= 1,40 enum process { permDiode = 1, 26 41 findStars = 2, 27 42 findPeriod = 4, … … 33 48 static void Has2Bars(bool, int elecOffset=0); // elecOffset : which wired together 34 49 50 long getLastBlkNum() {return lastBlkNum;} 35 51 int getRawSignal(int imesure, int idiode); // for last block 36 52 int getSignal(int imesure, int idiode); // for last block, imesure<0 -> history 37 int getStarZ(int imesure, int istar); // for last block, imesure<0 -> history 38 int getStarF(int imesure, int istar); // for last block, imesure<0 -> history 39 long getLastBlkNum() {return lastBlkNum;} 53 54 // Zone findStar 55 int getNumbStar(int iSampl); 56 // return number of star found in sample number iSampl 57 int getStarZ(int iSampl, int istar); 58 // return diode number of the star 59 double getStarF(int iSampl, int istar); 60 // return star flux in Ampère 61 double getStarTime(int iSampl, int istar); 62 // return star time in this sample 40 63 41 64 protected: … … 46 69 int starHistLength; 47 70 long lastBlkNum; 48 int seuil;49 71 72 // Is there two photoDiod Arrays and how are they connected? 50 73 static bool has2bars; 51 74 static int elecOffset; … … 53 76 inline int& diode(int iSamp, int iDiod) {return diodeT[iSamp*nb_photo_diodes+iDiod];} 54 77 55 struct star { 56 float z; 57 float m; 58 double t; 59 }; 60 61 vector<star>* stars; 62 78 static int diodpermut[46]; // diodpermut[i] = channel de la diode i 63 79 64 80 void DecodeTMBlock(block_type_sst*, int i, int* diodes); // mesure i -> diodes 65 void RemoveOffset(); // diodeRaw -> diode, avec decalage, 1 echantillon. 66 void FindStars(); // sur les 72 derniers echantillons dans diode. 81 void PermutDiode(); // diodeRaw -> diode, avec decalage, 1 echantillon. 82 int FindStars(block_type_sst* blk); // sur les 72 derniers echantillons dans diode. 83 // return nmber of star found in last block 67 84 68 static int diodpermut[46]; // diodpermut[i] = channel de la diode i 85 // Zone findStar 86 int NbStarInBlock; 87 88 PisteEtoile** PisteBar; 89 90 #ifdef SST_DEBUG 91 ofstream** pPisteDump; 92 #endif 93 94 map<double,SSTEtoile> StarHistoryMap; 95 // On stocke les etoiles de manière ordonnée en temps 96 typedef map<double,SSTEtoile>::iterator StarHistIter; 97 typedef map<double,SSTEtoile>::const_iterator StarConstHistIter; 98 99 vector<SSTEtoile> LastBlockStarVec; 100 // Vecteur des SSTEtoile du block classees en ordre de temps decroissant. 101 //vector<SSTEtoile> reverse_iterator StarVecRevIter LastBlockStarVec.rbegin(); 102 SSTEtoile LastStar; 103 PisteEtoile* pPiste; // Piste courante d'analyse 104 int Diodedata[NbSampleBlock]; 105 int offseDataDiod; 106 int LastBlockSSTNb; // Gère la disparition des blocs défectueux 107 int noStarDet; 108 int FirstSplNb(block_type_sst* blk); // Calcule l'index du premier echantillon du block analysé 109 ofstream sstchass; 110 111 void findStarConstruct(); 112 void findStarDestruct(); 69 113 }; 70 114
Note:
See TracChangeset
for help on using the changeset viewer.