00001 #ifndef ALIGNMENT_POSITION_ERROR_H 00002 #define ALIGNMENT_POSITION_ERROR_H 00003 00004 #include "DataFormats/GeometryCommonDetAlgo/interface/GlobalError.h" 00005 00010 class AlignmentPositionError { 00011 00012 public: 00013 00014 AlignmentPositionError(){}; 00015 00016 AlignmentPositionError(float dx, float dy, float dz); 00017 00018 AlignmentPositionError(GlobalError ge) : theGlobalError(ge) {}; 00019 00020 ~AlignmentPositionError(){}; 00021 00022 const GlobalError & globalError() const { return theGlobalError; }; 00023 00024 AlignmentPositionError operator+ (const AlignmentPositionError& ape) const { 00025 return AlignmentPositionError ( this->globalError() + ape.globalError()); 00026 }; 00027 00028 AlignmentPositionError operator- (const AlignmentPositionError& ape) const { 00029 return AlignmentPositionError ( this->globalError() - ape.globalError()); 00030 00031 }; 00032 00033 AlignmentPositionError & operator+= (const AlignmentPositionError& ape) { 00034 theGlobalError = GlobalError(this->globalError() + ape.globalError()); 00035 return *this; 00036 }; 00037 00038 AlignmentPositionError & operator-= (const AlignmentPositionError& ape) { 00039 theGlobalError = GlobalError(this->globalError() - ape.globalError()); 00040 return *this; 00041 }; 00042 00043 00044 private: 00045 00046 GlobalError theGlobalError; 00047 }; 00048 00049 #endif // ALIGNMENT_POSITION_ERROR_H 00050