FEDRA emulsion software from the OPERA Collaboration
EdbScanProc.h
Go to the documentation of this file.
1 #ifndef ROOT_EdbScanProc
2 #define ROOT_EdbScanProc
3 
4 #include "EdbRunAccess.h"
5 #include "EdbDataSet.h"
6 #include "EdbScanClient.h"
7 #include "EdbScanSet.h"
8 
9 class TEnv;
10 
11 class EdbScanProc : public TNamed
12 {
13  public:
14  TString eProcDirClient; // directory path for root data
15  TString eProcDirServer; // directory path for root data
16  TString eParDir; // directory path for off-line processing parameters
17 
18 private:
19  TString eServerCreatedRunName; //EdbRun file name that is created by scanserver side
20 
21 public:
23  virtual ~EdbScanProc(){}
24 
25  char *BrickDir(int brick);
26  bool CheckDir(const char *dir, bool create=true);
27  bool CheckDirWritable(const char *dir);
28  bool CheckAFFDir(int brick, bool create=true);
29  bool CheckBrickDir(EdbID id, bool create=true);
30  bool CheckPlateDir(EdbID id, bool create=true);
31  bool CheckProcDir(int id[4], bool create=true);
32  bool CheckProcDir( EdbID id, bool create=true) {int id4[4]; id.Get(id4); return CheckProcDir(id4,create); }
33  void MakeFileName(TString &s, int id[4], const char *suffix, bool inplate=true);
34  void MakeFileName(TString &s, EdbID id, const char *suffix, bool inplate=true)
35  {int id4[4]; id.Get(id4); return MakeFileName(s,id4,suffix,inplate);}
36  void MakeFileNameSrv(TString &s, int id[4], const char *suffix, bool inplate=true);
37  void MakeFileNameSrv(TString &s, EdbID id, const char *suffix, bool inplate=true)
38  {int id4[4]; id.Get(id4); return MakeFileNameSrv(s,id4,suffix,inplate);}
39  void MakeAffName(TString &s, int id1[4], int id2[4], const char *suffix="aff.par");
40  void MakeAffName(TString &s, EdbID id1, EdbID id2, const char *suffix="aff.par")
41  { int id14[4]; id1.Get(id14); int id24[4]; id2.Get(id24); return MakeAffName(s,id14,id24,suffix); }
42  bool GetMap(int brick, TString &map);
43  bool AddParLine(const char *file, const char *line, bool recreate=false );
44  bool MakeInPar(int id[4], const char *option);
45  bool MakeInPar(EdbID id, const char *option) {int id4[4]; id.Get(id4); return MakeInPar(id4,option);}
46  void MakeInParSet(EdbID id, const char *option);
47  int CopyFile(int id1[4], int id2[4], const char *suffix, bool overwrite);
48  int CopyPar(EdbID id1, EdbID id2, bool overwrite=true) {
49  int id14[4], id24[4]; id1.Get(id14); id2.Get(id24);
50  return CopyPar(id14,id24,overwrite);}
51  int CopyPar(int id1[4], int id2[4], bool overwrite=true) {return CopyFile(id1,id2,"par",overwrite);}
52  int CopyPred(int id1[4],int id2[4], bool overwrite=true) {return CopyFile(id1,id2,"pred.root",overwrite);}
53  int CopyAFFPar(int id1c[4],int id2c[4], int id1p[4], int id2p[4], bool overwrite=true);
54  int RemoveFile(EdbID id, const char *suffix);
55  void CopyParSet(EdbID idset1, EdbID idset2);
56  bool ReadPiecePar(EdbID id, EdbPlateP &plate);
57 
58  void MakeScannedIDList( EdbID id0, EdbScanSet &sc, int pl_from, int pl_to, const char *suffix );
59  void CheckFiles( EdbScanSet &sc, const char *suffix );
60 
61  int ReadPatTXT(EdbPattern &pred, EdbID id, const char *suffix, int flag=-1) {int id4[4]; id.Get(id4); return ReadPatTXT(pred,id4,suffix,flag);}
62  int ReadPatTXT(EdbPattern &pred, int id[4], const char *suffix, int flag=-1);
63  int ReadPatTXT(const char *file, EdbPattern &pred, int flag=-1);
64  int WritePatTXT(EdbPattern &pred, int id[4], const char *suffix, int flag=-1);
65  int WriteSBcndTXT(int id[4], const char *suffix="man.sbt.txt");
66  int ReadPatRoot(EdbPattern &pred, int id[4], const char *suffix, int flag=-1);
67  int WritePatRoot(EdbPattern &pred, int id[4], const char *suffix, int flag=-1);
68  int ReadPred(EdbPattern &pred, int id[4], int flag=-1) {return ReadPatRoot(pred,id,"pred.root",flag);}
69  int WritePred(EdbPattern &pred, int id[4], int flag=-1) {return WritePatRoot(pred,id,"pred.root",flag);}
70  int ReadFound(EdbPattern &pred, int id[4], int flag=-1) {return ReadPatRoot(pred,id,"found.root",flag);}
71  int WriteFound(EdbPattern &pred, int id[4], int flag=-1) {return WritePatRoot(pred,id,"found.root",flag);}
72  int ReadFound(EdbPattern &pred, EdbID id, int flag=-1) {int id4[4]; id.Get(id4); return ReadFound(pred,id4,flag);}
73  int ReadPred(EdbPattern &pred, EdbID id, int flag=-1) {int id4[4]; id.Get(id4); return ReadPred(pred,id4,flag);}
74  int WritePred(EdbPattern &pred, EdbID id, int flag=-1) {int id4[4]; id.Get(id4); return WritePred(pred,id4,flag);}
75  int WriteFound(EdbPattern &found, EdbID id, int flag=-1) {int id4[4]; id.Get(id4); return WriteFound(found,id4,flag);}
76  int WritePatTXT(EdbPattern &pred, EdbID id, const char *suffix, int flag=-1) {int id4[4]; id.Get(id4); return WritePatTXT(pred,id4,suffix,flag);}
77 
78  bool WaitFileReady(const char* fname_); //waits file copied/moved, in ready state
79  EdbRun *InitRun(int id[4], char* runname_ = NULL, char* runnamesrv_ = NULL, bool createrun_=true);
80  bool FlashRawDir(EdbScanClient &scan, int id[4]);
81  int LoadPlate(EdbScanClient &scan, int id[4], int attempts=1);
82  int ScanAreas(EdbScanClient::ScanType st, EdbScanClient &scan, int id[4], int flag=-1, const char *opt="NOCLCLFRAMESUM");
83  int ScanAreas(EdbScanClient::ScanType st, EdbScanClient &scan, EdbPattern &pred, int id[4], const char *opt="NOCLCLFRAMESUM"); // NEW!!!
84 
85  bool InitPiece(EdbDataPiece &piece, int id[4]);
86  bool InitPiece(EdbDataPiece &piece, EdbID id) {int id4[4]; id.Get(id4); return InitPiece(piece,id4);}
87  int ReadPiece(EdbDataPiece &piece, EdbPattern &pat);
88  int ReadPatCP(EdbPattern &pat, int id[4], TCut c="1");
89  int ReadPatCP(EdbPattern &pat, EdbID id, TCut c="1") {int id4[4]; id.Get(id4); return ReadPatCP(pat,id4,c);}
90  int ReadPatCPnopar(EdbPattern &pat, EdbID id, TCut cut="1", bool do_erase=false, bool read_mt=false);
91  int ReadPatCPnopar(EdbPattern &pat, const char *file, TCut cut="1", EdbMask *erase_mask=0, bool read_mt=false);
93  void MakeEraseFile(EdbID id, EdbPattern &pat);
94  bool ApplyAffZ(EdbPattern &pat,int id1[4],int id2[4]);
95  bool GetAffZ(EdbAffine2D &aff, float &z,int id1[4],int id2[4]);
96  bool SetAFFDZ(int id1[4], int id2[4], float dz);
97  bool SetAFF0(int id1[4], int id2[4]);
98  bool MakeAFFSet(EdbScanSet &sc);
99  bool MakeParSet(EdbScanSet &sc);
101 
102  int ConvertAreas(EdbScanClient &scan, int id[4], int flag=-1, const char *opt="NOCLCLFRAMESUM");
103  int CorrectAngles(int id[4]);
104  int LinkRun(int id[4], int noUpdate=1);
105  int LinkRunAll(int id[4], int npre=3, int nfull=1, int correct_ang=1);
106  int LinkRunAll(EdbID id, int npre=3, int nfull=1, int correct_ang=1) {int id4[4]; id.Get(id4); return LinkRunAll(id4,npre,nfull,correct_ang);}
107  int LinkSet(EdbScanSet &sc, int npre=3, int nfull=1, int correct_ang=1);
108 
109  void GetPatternSide( EdbID id, int side, EdbLayer &la, const char *segcut, int afid, EdbPattern &p);
110  void LinkRunTest(EdbID id, EdbPlateP &plate, TEnv &cenv, Int_t ix = -1, Int_t iy = -1);
111  void LinkRunNew(EdbID id, EdbPlateP &plate, TEnv &cenv);
112  void LinkSetNew(EdbScanSet &sc, TEnv &cenv);
113  void LinkSetNewTest(EdbScanSet &sc, TEnv &cenv, Int_t ix = -1, Int_t iy = -1);
114 
115  //void WriteSetGeom(EdbScanSet &sc);
116  //void ReadSetGeom(EdbScanSet &sc);
117 
118  int AlignNewNopar(EdbID id1, EdbID id2, TEnv &cenv, EdbAffine2D *aff=0, float dz=0);
119  int AlignNewCPFiles( const char *f1, const char *f2, TEnv &cenv, EdbAffine2D *aff=0, float dz=0);
120  bool UpdateAFFPar( EdbID id1, EdbID id2, EdbLayer &l, EdbAffine2D *aff0=0);
121  bool UpdatePlatePar( EdbID id, EdbLayer &l);
122  int AlignSetNewNopar(EdbScanSet &sc, TEnv &cenv);
123  void AlignSetNewNopar(EdbID id, TEnv &cenv);
124 
125  void AlignSet(EdbID id, int npre, int nfull, const char *opt="-z" );
126  int AlignSet( EdbScanSet &sc, int npre=1, int nfull=3, const char *opt="-z");
127  int Align(EdbID id1, EdbID id2, const char *option="") {int id14[4]; id1.Get(id14); int id24[4]; id2.Get(id24); return Align(id14,id24,option);}
128  int Align(int id1[4], int id2[4], const char *option="");
129  int AlignAll(int id1[4], int id2[4], int npre=1, int nfull=3, const char *opt="-z");
130  int AlignAll(EdbID id1, EdbID id2, int npre=1, int nfull=3, const char *opt="-z")
131  {int id41[4]; id1.Get(id41); int id42[4]; id2.Get(id42); return AlignAll(id41, id42, npre, nfull, opt);}
132 
133  int TrackSetBT( EdbScanSet &sc, TEnv &cenv);
134  int ReadTracksTree(EdbID id, EdbPVRec &ali, TCut cut="1");
135  int ReadTracksTree(const char *name, EdbPVRec &ali, TCut cut="1");
136 
137  bool CorrectPredWithFound(int id1[4], int id2[4], const char *opt="-z", int patmin=6);
138  bool CorrectAffWithPred(int id1[4], int id2[4], const char *opt="-z", int patmin=6, const char *parfile="fullalignment");
139  bool ProjectFound(int id1[4],int id2[4]);
140  bool ProjectFound(EdbID id1,EdbID id2) {int id14[4]; id1.Get(id14); int id24[4]; id2.Get(id24); return ProjectFound(id14, id24); }
141 
142  int FindPredictions(EdbPattern &pred, int id[4], EdbPattern &found, int maxholes=3);
143  int FindPredictions(int id[4], int flag=-1, int maxholes=3);
144 
145  bool InitRunAccessNew(EdbRunAccess &ra, EdbID id, EdbPlateP &plate, bool do_update=false);
146  bool InitRunAccessNew(EdbRunAccess &ra, EdbID idset, int idplate, bool do_update=false);
147 
148  bool InitRunAccess(EdbRunAccess &ra, int id[4], bool do_update=false);
149  bool InitRunAccess(EdbRunAccess &ra, EdbID id, bool do_update=false) {int id4[4]; id.Get(id4); return InitRunAccess(ra, id4, do_update); }
150 
151  int FindPredictionsRawSet(EdbID idp, EdbScanSet &ss, int npl);
152  int FindPredictionsRaw(EdbID idp, EdbID idr);
153  int FindPredictionsRaw(EdbPattern &pred, EdbPattern &found, EdbRunAccess &ra,
154  EdbScanCond &condBT, EdbScanCond &condMT,
155  float delta_theta=0.1, float puls_min=5., float puls_mt=9., float chi2max=1.6, FILE *out=0 );
156  int FindCompliments( EdbSegP &s, EdbPattern &pat, TObjArray &found, float chi2max, TArrayF &chiarr );
157  void SetDefaultCondBT(EdbScanCond &cond);
158  void SetDefaultCondMT(EdbScanCond &cond);
159 
160  void OptimizeScanPath(EdbPattern &pin, EdbPattern &pout,int brick);
161  int RemoveDublets(EdbPattern &pin, EdbPattern &pout,int brick);
162 
163  bool AddAFFtoScanSet(EdbScanSet &sc, EdbID id1, EdbID id2);
164  bool AddAFFtoScanSet(EdbScanSet &sc, int id1[4], int id2[4]);
165  bool AddAFFtoScanSet(EdbScanSet &sc, int b1, int p1, int s1, int e1,int b2, int p2, int s2, int e2);
166 
168  int ReadScanSetCP( EdbScanSet &ss, EdbPVRec &ali, TCut c="1", bool do_erase=true, int minplate=-1000, int maxplate=-1000);
169  int ReadScanSetCP( EdbID id, EdbPVRec &ali, TCut c="1", bool do_erase=true, bool do_assemble=true, int minplate=-1000, int maxplate=-1000);
170  int ReadFoundSegment( EdbID id, EdbSegP &s, int flag=-1);
171  int ReadFoundTrack( EdbScanSet &ss, EdbTrackP &track, int flag=-1);
172  int ReadFoundTracks( EdbScanSet &ss, EdbPVRec &ali, int flag=-1);
173  int ReadManFoundTracks( EdbScanSet &ss, EdbPVRec &ali, int flag=-1);
174 
175  void CheckRunQualityRaw( EdbID idss ) {}
176  void CheckSetQualityRaw( EdbID idss );
177 
178  void AlignOverlaps(EdbID id, EdbPattern &p1,EdbPattern &p2, TEnv &cenv, const char *suff);
179  void CheckViewOverlaps( EdbID id, TEnv &cenv );
180 
181  int WriteScanSet(EdbID id, EdbScanSet &ss);
183  EdbScanSet *ReadScanSetGlobal(EdbID id, bool x_marks);
184 
185  int WriteSBTrack(EdbTrackP &t, int path, EdbID id); //to remove?
186  int WriteSBTracks(TObjArray &tracks, EdbID id);
187  TObjArray *ReadSBTracks(EdbID id);
188  void MergeSetSBT(EdbID id, EdbScanSet &ss);
189  void MergeSetSBT(EdbID id);
190 
191  void PrepareVolumesPred(int id[4], EdbPattern &points, int before=5, int after=5,
192  int pmin=1, int pmax=57, EdbScanSet *sc=0);
193 
194  int MakeTracksPred(TObjArray &tracks, EdbID id, EdbLayer &layer);
195 
196  int TestAl(int id1[4], int id2[4]);
197  int TestAl(EdbID id1, EdbID id2) {int id14[4]; id1.Get(id14); int id24[4]; id2.Get(id24); return TestAl(id14,id24); }
198  int TestAl(EdbPattern &p1, EdbPattern &p2);
199  int TestAl(const char *cpfile1, const char *cpfile2, TCut &cut, float dz, EdbAffine2D *aff=0);
200 
201  int ReadMarksSet(EdbMarksSet &ms, int brick, const char *filename, char spacer='_', char shape='S');
202  int WriteMarksSet(EdbMarksSet &ms, int brick, const char *filename, char spacer='_', char shape='S', int plate=1);
203 
204  int AlignRaw(EdbID id1, EdbID id2, TEnv &cenv, EdbAffine2D *applyAff=0);
205  void AlignRawSet(EdbID id1, EdbID id2, TEnv &cenv);
207  void UpdateSetWithAff( EdbID id, EdbID id1, EdbID id2 );
208  void UpdateSetWithAff( EdbID id, EdbID idu );
209  void UpdateSetWithPlatePar( EdbID id );
211 
212  void MakeLinkSetSummary( EdbID id, const char *fileformat="pdf");
213 
214  void MakeAlignSetSummary( EdbID id, const char *fileformat="pdf" );
215  void MakeAlignSetSummary( EdbID id1, EdbID id2, const char *fout, const char *opt="UPDATE" );
216 
217  int FindRawTrack( EdbTrackP &pred, EdbTrackP &found, EdbID idset, int plate, TEnv &cenv);
218  int FindRawTrack( EdbTrackP &pred, EdbTrackP &found, EdbID idset, int plate);
219 
220  void UpdateAlignSummaryTree(EdbID idset1, EdbID idset2, TTree &tree);
221  bool ReadAffToLayer( EdbLayer &la, EdbID id1, EdbID id2 );
222 
223  void ExtractRawVolume(EdbID id, EdbID idnew,EdbSegP pred, int plate, TEnv &cenv);
224  void ExtractRawVolume(EdbScanSet &ss, EdbScanSet &ssnew, EdbSegP &pred, float dR);
225 
226  void SetServerRunName(const char* fname_);
227  const char* GetServerRunName()const;
228 
230 
231  void LogPrint(int brick, int level, const char *rout, const char *msgfmt, ...);
232  void Print();
233 
234  ClassDef(EdbScanProc,2) // scanned data processing
235 };
236 #endif /* ROOT_EdbScanProc */
brick dz
Definition: RecDispMC.C:107
BRICK brick
Definition: RecDispMC.C:103
EdbScanCond * scan
Definition: RecDispNU.C:117
EdbPVRec * ali
Definition: align.C:1
TTree * t
Definition: check_shower.C:4
TCut cut
Definition: check_shower.C:6
Definition: EdbAffine.h:17
Definition: EdbDataSet.h:25
Definition: EdbID.h:7
void Get(Int_t id[])
Definition: EdbID.h:26
Definition: EdbLayer.h:40
Definition: EdbFiducial.h:88
Definition: EdbMask.h:8
Definition: EdbPVRec.h:148
Definition: EdbPattern.h:280
Definition: EdbBrick.h:13
Definition: EdbRunAccess.h:22
Definition: EdbRun.h:74
ScanType
Definition: EdbScanClientBase.h:16
Definition: EdbScanClient.h:12
Definition: EdbScanCond.h:10
Definition: EdbScanProc.h:12
void Print()
Definition: EdbScanProc.cxx:42
int WriteSBcndTXT(int id[4], const char *suffix="man.sbt.txt")
Definition: EdbScanProc.cxx:1587
int TrackSetBT(EdbScanSet &sc, TEnv &cenv)
Definition: EdbScanProc.cxx:601
int CopyPar(EdbID id1, EdbID id2, bool overwrite=true)
Definition: EdbScanProc.h:48
void LinkRunNew(EdbID id, EdbPlateP &plate, TEnv &cenv)
Definition: EdbScanProc.cxx:3334
int ReadFoundTracks(EdbScanSet &ss, EdbPVRec &ali, int flag=-1)
Definition: EdbScanProc.cxx:220
void PrepareVolumesPred(int id[4], EdbPattern &points, int before=5, int after=5, int pmin=1, int pmax=57, EdbScanSet *sc=0)
Definition: EdbScanProc.cxx:754
int WriteFound(EdbPattern &pred, int id[4], int flag=-1)
Definition: EdbScanProc.h:71
bool GetMap(int brick, TString &map)
Definition: EdbScanProc.cxx:1930
bool CorrectPredWithFound(int id1[4], int id2[4], const char *opt="-z", int patmin=6)
Definition: EdbScanProc.cxx:1154
void CheckRunQualityRaw(EdbID idss)
Definition: EdbScanProc.h:175
int FindRawTrack(EdbTrackP &pred, EdbTrackP &found, EdbID idset, int plate, TEnv &cenv)
Definition: EdbScanProc.cxx:3439
int ScanAreas(EdbScanClient::ScanType st, EdbScanClient &scan, int id[4], int flag=-1, const char *opt="NOCLCLFRAMESUM")
Definition: EdbScanProc.cxx:932
int CorrectAngles(int id[4])
Definition: EdbScanProc.cxx:2073
bool ReadAffToLayer(EdbLayer &la, EdbID id1, EdbID id2)
Definition: EdbScanProc.cxx:64
int LinkSet(EdbScanSet &sc, int npre=3, int nfull=1, int correct_ang=1)
Definition: EdbScanProc.cxx:662
int ReadScanSetCP(EdbScanSet &ss, EdbPVRec &ali, TCut c="1", bool do_erase=true, int minplate=-1000, int maxplate=-1000)
Definition: EdbScanProc.cxx:342
int ReadPatCP(EdbPattern &pat, EdbID id, TCut c="1")
Definition: EdbScanProc.h:89
void MakeLinkSetSummary(EdbID id, const char *fileformat="pdf")
Definition: EdbScanProc.cxx:2976
bool CheckProcDir(EdbID id, bool create=true)
Definition: EdbScanProc.h:32
bool FlashRawDir(EdbScanClient &scan, int id[4])
Definition: EdbScanProc.cxx:803
void MakeAffName(TString &s, EdbID id1, EdbID id2, const char *suffix="aff.par")
Definition: EdbScanProc.h:40
void CheckViewOverlaps(EdbID id, TEnv &cenv)
Definition: EdbScanProc.cxx:3305
bool UpdatePlatePar(EdbID id, EdbLayer &l)
Definition: EdbScanProc.cxx:1060
bool PrepareSetStructure(EdbScanSet &sc)
Definition: EdbScanProc.cxx:441
EdbScanSet * ReadScanSetGlobal(EdbID id, bool x_marks)
Definition: EdbScanProc.cxx:1480
bool CheckBrickDir(EdbID id, bool create=true)
Definition: EdbScanProc.cxx:1846
void ExtractRawVolume(EdbID id, EdbID idnew, EdbSegP pred, int plate, TEnv &cenv)
Definition: EdbScanProc.cxx:3391
int WritePatTXT(EdbPattern &pred, int id[4], const char *suffix, int flag=-1)
Definition: EdbScanProc.cxx:1561
int WritePred(EdbPattern &pred, EdbID id, int flag=-1)
Definition: EdbScanProc.h:74
bool SetAFFDZ(int id1[4], int id2[4], float dz)
Definition: EdbScanProc.cxx:1093
int AlignNewCPFiles(const char *f1, const char *f2, TEnv &cenv, EdbAffine2D *aff=0, float dz=0)
Definition: EdbScanProc.cxx:520
int FindCompliments(EdbSegP &s, EdbPattern &pat, TObjArray &found, float chi2max, TArrayF &chiarr)
Definition: EdbScanProc.cxx:2315
int AlignAll(int id1[4], int id2[4], int npre=1, int nfull=3, const char *opt="-z")
Definition: EdbScanProc.cxx:2661
void GetPatternSide(EdbID id, int side, EdbLayer &la, const char *segcut, int afid, EdbPattern &p)
Definition: EdbScanProc.cxx:3152
int ReadPatTXT(EdbPattern &pred, EdbID id, const char *suffix, int flag=-1)
Definition: EdbScanProc.h:61
void CheckSetQualityRaw(EdbID idss)
Definition: EdbScanProc.cxx:558
void MakeInParSet(EdbID id, const char *option)
Definition: EdbScanProc.cxx:2038
void MakeFileNameSrv(TString &s, EdbID id, const char *suffix, bool inplate=true)
Definition: EdbScanProc.h:37
void MergeSetSBT(EdbID id, EdbScanSet &ss)
Definition: EdbScanProc.cxx:1404
int RemoveDublets(EdbPattern &pin, EdbPattern &pout, int brick)
Definition: EdbScanProc.cxx:848
bool UpdateAFFPar(EdbID id1, EdbID id2, EdbLayer &l, EdbAffine2D *aff0=0)
Definition: EdbScanProc.cxx:1026
void MakeFileNameSrv(TString &s, int id[4], const char *suffix, bool inplate=true)
Definition: EdbScanProc.cxx:1901
bool CheckAFFDir(int brick, bool create=true)
Definition: EdbScanProc.cxx:1837
int AlignRaw(EdbID id1, EdbID id2, TEnv &cenv, EdbAffine2D *applyAff=0)
Definition: EdbScanProc.cxx:3023
void LogPrint(int brick, int level, const char *rout, const char *msgfmt,...)
Definition: EdbScanProc.cxx:3129
TString eProcDirServer
Definition: EdbScanProc.h:15
int FindPredictions(EdbPattern &pred, int id[4], EdbPattern &found, int maxholes=3)
Definition: EdbScanProc.cxx:2457
int ReadPatCPnopar(EdbPattern &pat, EdbID id, TCut cut="1", bool do_erase=false, bool read_mt=false)
Definition: EdbScanProc.cxx:719
int WriteFound(EdbPattern &found, EdbID id, int flag=-1)
Definition: EdbScanProc.h:75
int WriteSBTracks(TObjArray &tracks, EdbID id)
Definition: EdbScanProc.cxx:1438
int TestAl(EdbID id1, EdbID id2)
Definition: EdbScanProc.h:197
int LoadPlate(EdbScanClient &scan, int id[4], int attempts=1)
Definition: EdbScanProc.cxx:831
void LinkSetNewTest(EdbScanSet &sc, TEnv &cenv, Int_t ix=-1, Int_t iy=-1)
Definition: EdbScanProc.cxx:3345
EdbMask * ReadEraseMask(EdbID id)
Definition: EdbScanProc.cxx:705
int LinkRun(int id[4], int noUpdate=1)
Definition: EdbScanProc.cxx:2084
bool InitPiece(EdbDataPiece &piece, EdbID id)
Definition: EdbScanProc.h:86
int ReadPred(EdbPattern &pred, int id[4], int flag=-1)
Definition: EdbScanProc.h:68
int ReadManFoundTracks(EdbScanSet &ss, EdbPVRec &ali, int flag=-1)
Definition: EdbScanProc.cxx:262
int ReadFoundTrack(EdbScanSet &ss, EdbTrackP &track, int flag=-1)
Definition: EdbScanProc.cxx:191
virtual ~EdbScanProc()
Definition: EdbScanProc.h:23
bool CheckDir(const char *dir, bool create=true)
Definition: EdbScanProc.cxx:1812
int CopyAFFPar(int id1c[4], int id2c[4], int id1p[4], int id2p[4], bool overwrite=true)
Definition: EdbScanProc.cxx:1015
int FindPredictionsRawSet(EdbID idp, EdbScanSet &ss, int npl)
Definition: EdbScanProc.cxx:2098
int ReadPatCP(EdbPattern &pat, int id[4], TCut c="1")
Definition: EdbScanProc.cxx:2425
void SetServerRunName(const char *fname_)
Definition: EdbScanProc.cxx:3504
int ReadPiece(EdbDataPiece &piece, EdbPattern &pat)
Definition: EdbScanProc.cxx:2444
bool ApplyAffZ(EdbPattern &pat, int id1[4], int id2[4])
Definition: EdbScanProc.cxx:2645
void UpdateSetWithAff(EdbID idset, EdbAffine2D aff)
Definition: EdbScanProc.cxx:2796
int WriteScanSet(EdbID id, EdbScanSet &ss)
Definition: EdbScanProc.cxx:1467
void LinkRunTest(EdbID id, EdbPlateP &plate, TEnv &cenv, Int_t ix=-1, Int_t iy=-1)
Definition: EdbScanProc.cxx:3204
void AlignOverlaps(EdbID id, EdbPattern &p1, EdbPattern &p2, TEnv &cenv, const char *suff)
Definition: EdbScanProc.cxx:3283
int LinkRunAll(int id[4], int npre=3, int nfull=1, int correct_ang=1)
Definition: EdbScanProc.cxx:1104
int ReadFoundSegment(EdbID id, EdbSegP &s, int flag=-1)
Definition: EdbScanProc.cxx:180
bool CheckDirWritable(const char *dir)
Definition: EdbScanProc.cxx:1801
int RemoveFile(EdbID id, const char *suffix)
Definition: EdbScanProc.cxx:1002
int AlignAll(EdbID id1, EdbID id2, int npre=1, int nfull=3, const char *opt="-z")
Definition: EdbScanProc.h:130
void UpdateAlignSummaryTree(EdbID idset1, EdbID idset2, TTree &tree)
Definition: EdbScanProc.cxx:2939
EdbRun * InitRun(int id[4], char *runname_=NULL, char *runnamesrv_=NULL, bool createrun_=true)
Definition: EdbScanProc.cxx:1985
int ReadFound(EdbPattern &pred, EdbID id, int flag=-1)
Definition: EdbScanProc.h:72
int LinkRunAll(EdbID id, int npre=3, int nfull=1, int correct_ang=1)
Definition: EdbScanProc.h:106
int WriteSBTrack(EdbTrackP &t, int path, EdbID id)
Definition: EdbScanProc.cxx:1425
bool InitRunAccess(EdbRunAccess &ra, int id[4], bool do_update=false)
Definition: EdbScanProc.cxx:2383
void MakeAffName(TString &s, int id1[4], int id2[4], const char *suffix="aff.par")
Definition: EdbScanProc.cxx:1917
int CopyPar(int id1[4], int id2[4], bool overwrite=true)
Definition: EdbScanProc.h:51
void ReadUncorrectedBTforFoundTracks(EdbPVRec &ali)
Definition: EdbScanProc.cxx:3512
bool InitRunAccess(EdbRunAccess &ra, EdbID id, bool do_update=false)
Definition: EdbScanProc.h:149
int FindPredictionsRaw(EdbID idp, EdbID idr)
Definition: EdbScanProc.cxx:2119
bool CheckProcDir(int id[4], bool create=true)
Definition: EdbScanProc.cxx:1866
void SetDefaultCondBT(EdbScanCond &cond)
Definition: EdbScanProc.cxx:2355
void MakeAlignSetSummary(EdbID id, const char *fileformat="pdf")
Definition: EdbScanProc.cxx:2894
bool MakeAFFSet(EdbScanSet &sc)
Definition: EdbScanProc.cxx:394
int TestAl(int id1[4], int id2[4])
Definition: EdbScanProc.cxx:1311
bool MakeParSet(EdbScanSet &sc)
Definition: EdbScanProc.cxx:422
bool ReadPiecePar(EdbID id, EdbPlateP &plate)
Definition: EdbScanProc.cxx:114
TObjArray * ReadSBTracks(EdbID id)
Definition: EdbScanProc.cxx:1453
bool MakeInPar(int id[4], const char *option)
Definition: EdbScanProc.cxx:2049
int ReadFound(EdbPattern &pred, int id[4], int flag=-1)
Definition: EdbScanProc.h:70
bool InitPiece(EdbDataPiece &piece, int id[4])
Definition: EdbScanProc.cxx:2410
int AlignNewNopar(EdbID id1, EdbID id2, TEnv &cenv, EdbAffine2D *aff=0, float dz=0)
Definition: EdbScanProc.cxx:485
char * BrickDir(int brick)
Definition: EdbScanProc.cxx:1876
int MakeTracksPred(TObjArray &tracks, EdbID id, EdbLayer &layer)
Definition: EdbScanProc.cxx:3367
int ConvertAreas(EdbScanClient &scan, int id[4], int flag=-1, const char *opt="NOCLCLFRAMESUM")
Definition: EdbScanProc.cxx:916
bool AddParLine(const char *file, const char *line, bool recreate=false)
Definition: EdbScanProc.cxx:2025
void MakeFileName(TString &s, int id[4], const char *suffix, bool inplate=true)
Definition: EdbScanProc.cxx:1885
void UpdateSetWithPlatePar(EdbID id)
Definition: EdbScanProc.cxx:2831
void MakeFileName(TString &s, EdbID id, const char *suffix, bool inplate=true)
Definition: EdbScanProc.h:34
bool CheckPlateDir(EdbID id, bool create=true)
Definition: EdbScanProc.cxx:1856
void MakeScannedIDList(EdbID id0, EdbScanSet &sc, int pl_from, int pl_to, const char *suffix)
Definition: EdbScanProc.cxx:686
bool AddAFFtoScanSet(EdbScanSet &sc, EdbID id1, EdbID id2)
Definition: EdbScanProc.cxx:56
bool ProjectFound(EdbID id1, EdbID id2)
Definition: EdbScanProc.h:140
TString eParDir
Definition: EdbScanProc.h:16
void OptimizeScanPath(EdbPattern &pin, EdbPattern &pout, int brick)
Definition: EdbScanProc.cxx:874
int ReadPred(EdbPattern &pred, EdbID id, int flag=-1)
Definition: EdbScanProc.h:73
const char * GetServerRunName() const
Definition: EdbScanProc.cxx:3507
int WritePatRoot(EdbPattern &pred, int id[4], const char *suffix, int flag=-1)
Definition: EdbScanProc.cxx:1712
int ReadTracksTree(EdbID id, EdbPVRec &ali, TCut cut="1")
Definition: EdbScanProc.cxx:644
void MakeEraseFile(EdbID id, EdbPattern &pat)
Definition: EdbScanProc.cxx:311
int WriteMarksSet(EdbMarksSet &ms, int brick, const char *filename, char spacer='_', char shape='S', int plate=1)
Definition: EdbScanProc.cxx:3114
int AssembleScanSet(EdbScanSet &ss)
Definition: EdbScanProc.cxx:134
bool InitRunAccessNew(EdbRunAccess &ra, EdbID id, EdbPlateP &plate, bool do_update=false)
Definition: EdbScanProc.cxx:3182
TString eProcDirClient
Definition: EdbScanProc.h:14
void LinkSetNew(EdbScanSet &sc, TEnv &cenv)
Definition: EdbScanProc.cxx:3356
void CopyParSet(EdbID idset1, EdbID idset2)
Definition: EdbScanProc.cxx:164
void CheckFiles(EdbScanSet &sc, const char *suffix)
Definition: EdbScanProc.cxx:674
int Align(EdbID id1, EdbID id2, const char *option="")
Definition: EdbScanProc.h:127
EdbScanSet * ReadScanSet(EdbID id)
Definition: EdbScanProc.cxx:1521
bool MakeInPar(EdbID id, const char *option)
Definition: EdbScanProc.h:45
void AlignSet(EdbID id, int npre, int nfull, const char *opt="-z")
Definition: EdbScanProc.cxx:574
int ReadPatRoot(EdbPattern &pred, int id[4], const char *suffix, int flag=-1)
Definition: EdbScanProc.cxx:1755
int WritePred(EdbPattern &pred, int id[4], int flag=-1)
Definition: EdbScanProc.h:69
int WritePatTXT(EdbPattern &pred, EdbID id, const char *suffix, int flag=-1)
Definition: EdbScanProc.h:76
bool WaitFileReady(const char *fname_)
Definition: EdbScanProc.cxx:1947
bool CorrectAffWithPred(int id1[4], int id2[4], const char *opt="-z", int patmin=6, const char *parfile="fullalignment")
Definition: EdbScanProc.cxx:1220
bool SetAFF0(int id1[4], int id2[4])
Definition: EdbScanProc.cxx:1082
bool GetAffZ(EdbAffine2D &aff, float &z, int id1[4], int id2[4])
Definition: EdbScanProc.cxx:2629
int AlignSetNewNopar(EdbScanSet &sc, TEnv &cenv)
Definition: EdbScanProc.cxx:464
void SetDefaultCondMT(EdbScanCond &cond)
Definition: EdbScanProc.cxx:2369
int ReadMarksSet(EdbMarksSet &ms, int brick, const char *filename, char spacer='_', char shape='S')
Definition: EdbScanProc.cxx:3099
int CopyPred(int id1[4], int id2[4], bool overwrite=true)
Definition: EdbScanProc.h:52
void AlignRawSet(EdbID id1, EdbID id2, TEnv &cenv)
Definition: EdbScanProc.cxx:3008
TString eServerCreatedRunName
Definition: EdbScanProc.h:19
int CopyFile(int id1[4], int id2[4], const char *suffix, bool overwrite)
Definition: EdbScanProc.cxx:988
bool ProjectFound(int id1[4], int id2[4])
Definition: EdbScanProc.cxx:1135
Definition: EdbScanSet.h:11
Definition: EdbSegP.h:18
Definition: EdbPattern.h:118
Definition: bitview.h:14
TEnv cenv("emrec")
EdbID idset
Definition: emrec.cpp:35
string filename
Definition: emthickness.cpp:34
ss
Definition: energy.C:62
TTree * tracks
Definition: check_tr.C:19
const char * opt
Definition: mc2raw.cxx:42
Int_t plate
Definition: merge_Energy_SytematicSources_Electron.C:1
const char * name
Definition: merge_Energy_SytematicSources_Electron.C:24
#define NULL
Definition: nidaqmx.h:84
p
Definition: testBGReduction_AllMethods.C:8
EdbSegP * s1
Definition: tlg2pattern.C:30
EdbSegP * s2
Definition: tlg2pattern.C:31
EdbSegP * s
Definition: tlg2pattern.C:32
TFile * file
Definition: write_pvr.C:3