1 #ifndef AliTRDSaxHandler_H
2 #define AliTRDSaxHandler_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * * See cxx source for full Copyright notice */
10 #include "Cal/AliTRDCalDCS.h"
11 #include "Cal/AliTRDCalDCSFEE.h"
12 #include "Cal/AliTRDCalDCSPTR.h"
13 #include "Cal/AliTRDCalDCSGTU.h"
14 #include <TObjArray.h>
18 class AliTRDSaxHandler : public TObject {
20 enum { kInsideFEE = 1, kInsidePTR = 2, kInsideGTU = 3 };
23 AliTRDSaxHandler(const AliTRDSaxHandler &sh);
24 virtual ~AliTRDSaxHandler();
25 AliTRDSaxHandler &operator=(const AliTRDSaxHandler &sh);
27 TObjArray* GetDCSFEEDataArray() { return fFEEArr; }
28 TObjArray* GetDCSPTRDataArray() { return fPTRArr; }
29 TObjArray* GetDCSGTUDataArray() { return fGTUArr; }
30 AliTRDCalDCS* GetCalDCSObj(); // to be called by the preprocessor
32 Int_t GetHandlerStatus() const { return fHandlerStatus; }
34 // functions for all possible events
35 void OnStartDocument();
37 void OnStartElement(const char *name, const TList *attributes);
38 void OnEndElement(const char *name);
39 void OnCharacters(const char *name);
40 void OnComment(const char *name);
41 void OnWarning(const char *name);
42 void OnError(const char *name);
43 void OnFatalError(const char *name);
44 void OnCdataBlock(const char *name, Int_t len);
48 Int_t fHandlerStatus; // 0: everything OK, >0: error
49 Int_t fNDCSPTR; // number of current PTR unit (to be abandonned soon)
50 Int_t fNDCSGTU; // number of current GTU unit (to be abandonned soon)
51 TObjArray* fFEEArr; // array of AliTRDCalDCSFEE objects
52 TObjArray* fPTRArr; // array of AliTRDCalDCSPTR objects
53 TObjArray* fGTUArr; // array of AliTRDCalDCSGTU objects
54 Int_t fSystem; // current system (FEE/PTR/GTU)
55 Int_t fCurrentSM; // current supermodule
56 Int_t fCurrentStack; // current stack
57 TString fContent; // content of the xml element (text)
58 AliTRDCalDCSFEE* fDCSFEEObj; // the calib object for one FEE DCS board
59 AliTRDCalDCSPTR* fDCSPTRObj; // the calib object for one PTR DCS board
60 AliTRDCalDCSGTU* fDCSGTUObj; // the calib object for one GTU DCS board
61 AliTRDCalDCS* fCalDCSObj; // the complete calib obj containing all inform.
63 ClassDef(AliTRDSaxHandler,1);