00001 #ifndef Archiving_H
00002 #define Archiving_H
00003
00004 #include <string>
00005
00006 #include "SctData/ScanResult.h"
00007 #include "SctData/RawScanResult.h"
00008 #include "SctData/FitScanResult.h"
00009 #include "Sct/SctNames.h"
00010 #include <is/isinfo.h>
00011
00012 using namespace SctData;
00013 using namespace Sct;
00014
00015
00016 class Archiving {
00017
00018 protected:
00019
00020
00021
00022
00023 public:
00024
00025
00026 Archiving();
00027 ~Archiving();
00028
00029
00030 void ListISObj();
00031 void DeleteISObj(char* objName);
00032 void SetUNIXDir();
00033
00034
00035 ISInfoIterator* SetupRawIS();
00036 ISInfoIterator* SetupFitIS();
00037
00038
00039 ISInfoIterator* SetupNoiseOccupancyTestIS();
00040 ISInfoIterator* SetupNPtGainTestIS();
00041 ISInfoIterator* SetupStrobeDelayTestIS();
00042 ISInfoIterator* SetupTrimRangeTestIS();
00043 ISInfoIterator* SetupPipelineTestIS();
00044 ISInfoIterator* SetupTimeWalkTestIS();
00045 ISInfoIterator* SetupFullBypassTestIS();
00046 ISInfoIterator* SetupNMaskTestIS();
00047
00048
00049 string GetRawISUniqueID(unsigned int runNumber, unsigned int scanNumber, const string& moduleName);
00050 string GetFitISUniqueID(unsigned int runNumber, unsigned int scanNumber, const string& moduleName);
00051
00052 IPCPartition* GetPartition();
00053 shared_ptr<Serializable> ISRetrieveObj(ISInfoIterator& );
00054 shared_ptr<Serializable> ISRetrieveObj(const string& SerISName );
00055 shared_ptr<ScanResult> ISRetrieveScanResult(const string& ScanISName );
00056 shared_ptr<ScanResult> ISRetrieveScanResult(ISInfoIterator& );
00057 shared_ptr<RawScanResult> ISRetrieveRawScanResult(const string& RawISName);
00058 shared_ptr<RawScanResult> ISRetrieveRawScanResult(ISInfoIterator& );
00059 shared_ptr<FitScanResult> ISRetrieveFitScanResult(const string& FitISName );
00060 shared_ptr<FitScanResult> ISRetrieveFitScanResult(ISInfoIterator& );
00061
00062
00063
00064 void ISSendPersScanResult(RawScanResult &);
00065 void ISSendPersScanResult(FitScanResult &);
00066
00067
00068
00069 bool IsTestInIndex(unsigned int runNumber, string moduleName, string testType);
00070 bool IsTestInIndex(string runID, string moduleID, string testType);
00071 bool IsScanInIndex(unsigned int runNumber, string moduleName, string testType, unsigned int scanNumber);
00072 bool IsScanInIndex(string runID, string moduleID, string testType, string scanID);
00073 void UpdateTestIndex();
00074 void UpdateScanIndex();
00075
00076 void AddScanToIndex(string runID, string moduleID, string testTypeID, string scanID );
00077 void AddTestToIndex(string runID, string moduleID, string testTypeID);
00078
00079
00080 string getTestSummaryFromArchive(unsigned int runNumber, string moduleName, string testType);
00081 string getTestSummaryFromArchive(string runID, string moduleID, string testType);
00082
00083 };
00084
00085
00086 #endif