00001 #ifndef __ITKRBADSTRIPSSVC_H
00002 #define __ITKRBADSTRIPSSVC_H 1
00003
00004 #include "GaudiKernel/IInterface.h"
00005 #include "TkrRecon/TkrAxis.h"
00006 #include "src/TkrDetGeo.h"
00007
00008 #include <string>
00009 #include <vector>
00010 #include <fstream>
00011
00012 typedef std::vector<int> v_strips;
00013 typedef v_strips::const_iterator v_strips_it;
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 static const InterfaceID IID_ITkrBadStripsSvc(907, 1 , 0);
00026
00027 class ITkrBadStripsSvc : public TkrAxis, public virtual IInterface
00028 {
00029 public:
00030
00032
00033 static const InterfaceID& interfaceID() { return IID_ITkrBadStripsSvc; }
00034
00035
00036
00037
00038
00039 virtual int getIndex(const int tower, const int layer, const TkrAxis::axis axis) = 0;
00040 virtual v_strips* getBadStrips(const int tower, const int layer,
00041 const TkrAxis::axis axis) = 0;
00042 virtual v_strips* getBadStrips(const int index)= 0;
00043 virtual bool isBadStrip(const int tower, const int layer,
00044 const TkrAxis::axis axis, const int strip) = 0;
00045 virtual bool isBadStrip(const v_strips* v, const int strip) = 0;
00046 virtual bool isTaggedBad(const int taggedStrip) = 0;
00047 virtual int tagBad(const int strip) = 0;
00048 virtual int tagGood(const int strip) = 0;
00049 virtual int untag(const int strip) = 0;
00050
00051 };
00052
00053 #endif