00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef StRpsPlane_hh
00018 #define StRpsPlane_hh
00019
00020 #include "StObject.h"
00021 #include "StContainers.h"
00022
00023
00024 class StRpsCluster;
00025 class StRpsRomanPot;
00026
00027 class StRpsPlane : public StObject {
00028 public:
00029 StRpsPlane();
00030 ~StRpsPlane();
00031
00032 double offset() const;
00033 double z() const;
00034 double angle() const;
00035 short orientation() const;
00036 unsigned char status() const;
00037 unsigned int numberOfClusters() const;
00038 unsigned int planeId() const;
00039
00040 unsigned int romanPotId() const;
00041
00042 const StRpsCluster* cluster(unsigned int) const;
00043 StRpsCluster* cluster(unsigned int);
00044
00045 const StSPtrVecRpsCluster& clusters() const;
00046 StSPtrVecRpsCluster& clusters();
00047
00048 void addCluster(StRpsCluster*);
00049 void setOffset(double);
00050 void setZ(double);
00051 void setAngle(double);
00052 void setOrientation(short);
00053 void setStatus(unsigned char);
00054
00055 protected:
00056 friend class StRpsCollection;
00057 void setPlaneId(unsigned char);
00058 void setRomanPotId(unsigned char);
00059
00060 protected:
00061 UChar_t mPlaneId;
00062 Double_t mOffset;
00063 Double_t mZ;
00064 Double_t mAngle;
00065 Short_t mOrientation;
00066 UChar_t mStatus;
00067 UChar_t mRomanPotId;
00068 StSPtrVecRpsCluster mClusters;
00069
00070 ClassDef(StRpsPlane,1)
00071 };
00072
00073 #endif