Go to the documentation of this file.00001 #include "DetectorDescription/Core/interface/DDCompactView.h"
00002 #include "DetectorDescription/Core/interface/DDExpandedView.h"
00003 #include "DetectorDescription/Core/interface/DDSolid.h"
00004
00006
00013 struct DDCompOptions {
00014 DDCompOptions() : compRotName_(false), attResync_(false),
00015 contOnError_(false), distTol_(0.0004),
00016 rotTol_(0.0004), specTol_(0.0004)
00017 { }
00018
00019 bool compRotName_;
00020 bool attResync_;
00021 bool contOnError_;
00022 double distTol_;
00023 double rotTol_;
00024 double specTol_;
00025 };
00026
00027 struct DDCompareEPV : public std::binary_function<DDExpandedView, DDExpandedView, bool> {
00028 DDCompareEPV();
00029 DDCompareEPV(const DDCompOptions& ddco);
00030 bool operator()(DDExpandedView& lhs, DDExpandedView& rhs) const ;
00031 DDCompOptions ddco_;
00032 };
00033
00034 struct DDCompareCPV : public std::binary_function<DDCompactView, DDCompactView, bool> {
00035 DDCompareCPV();
00036 DDCompareCPV(const DDCompOptions& ddco);
00037 bool operator()(const DDCompactView& lhs, const DDCompactView& rhs) const ;
00038 DDCompOptions ddco_;
00039 };
00040
00042
00045 struct DDCompareLP : public std::binary_function<DDLogicalPart, DDLogicalPart, bool> {
00046 DDCompareLP();
00047 DDCompareLP(const DDCompOptions& ddco);
00048 bool operator()(const DDLogicalPart& lhs, const DDLogicalPart& rhs) const ;
00049 DDCompOptions ddco_;
00050 };
00051
00053 struct DDCompareSolid : public std::binary_function<DDSolid, DDSolid, bool> {
00054 DDCompareSolid();
00055 DDCompareSolid(const DDCompOptions& ddco);
00056 bool operator()(const DDSolid& lhs, const DDSolid& rhs) const ;
00057 DDCompOptions ddco_;
00058 };
00059
00060 struct DDCompareDBLVEC : public std::binary_function<std::vector<double>, std::vector<double>, bool> {
00061 DDCompareDBLVEC();
00062 DDCompareDBLVEC(double tol);
00063 bool operator()(const std::vector<double>& lhs, const std::vector<double>& rhs) const ;
00064 double tol_;
00065 };
00066
00068 struct DDCompareBoolSol : public std::binary_function<DDBooleanSolid, DDBooleanSolid, bool> {
00069 DDCompareBoolSol();
00070 DDCompareBoolSol(const DDCompOptions& ddco);
00071 bool operator()(const DDBooleanSolid& lhs, const DDBooleanSolid& rhs) const ;
00072 DDCompOptions ddco_;
00073 };
00074
00075 struct DDCompareDDTrans : public std::binary_function<DDTranslation, DDTranslation, bool> {
00076 DDCompareDDTrans();
00077 DDCompareDDTrans(double tol);
00078 bool operator()(const DDTranslation& lhs, const DDTranslation& rhs) const;
00079 double tol_;
00080 };
00081
00083 struct DDCompareDDRot : public std::binary_function<DDRotation, DDRotation, bool> {
00084 DDCompareDDRot();
00085 DDCompareDDRot(const DDCompOptions& ddco);
00086 bool operator()(const DDRotation& lhs, const DDRotation& rhs) const;
00087 DDCompOptions ddco_;
00088 };
00089
00090 struct DDCompareDDRotMat : public std::binary_function<DDRotationMatrix, DDRotationMatrix, bool> {
00091 DDCompareDDRotMat();
00092 DDCompareDDRotMat(double tol);
00093 bool operator()(const DDRotationMatrix& lhs, const DDRotationMatrix& rhs) const;
00094 double tol_;
00095 };
00096
00097
00098
00099