CMS 3D CMS Logo

Boolean.h
Go to the documentation of this file.
1 #ifndef DETECTOR_DESCRIPTION_CORE_DDI_BOOLEAN_H
2 #define DETECTOR_DESCRIPTION_CORE_DDI_BOOLEAN_H
3 
8 #include "Solid.h"
9 
10 namespace DDI {
11 
12  class BooleanSolid : public Solid {
13  public:
14  BooleanSolid(const DDSolid& A, const DDSolid& B, const DDTranslation& t, const DDRotation& r, DDSolidShape s);
15 
16  const DDSolid& a() const { return a_; }
17  const DDSolid& b() const { return b_; }
18  const DDTranslation& t() const { return t_; }
19  const DDRotation& r() const { return r_; }
20 
21  protected:
25  };
26 
27  class Union : public BooleanSolid {
28  public:
29  Union(const DDSolid& A, const DDSolid& B, const DDTranslation& t, const DDRotation& r);
30  };
31 
32  class Intersection : public BooleanSolid {
33  public:
34  Intersection(const DDSolid& A, const DDSolid& B, const DDTranslation& t, const DDRotation& r);
35  };
36 
37  class Subtraction : public BooleanSolid {
38  public:
39  Subtraction(const DDSolid& A, const DDSolid& B, const DDTranslation& t, const DDRotation& r);
40  };
41 } // namespace DDI
42 #endif // DETECTOR_DESCRIPTION_CORE_DDI_BOOLEAN_H
DDSolidShapes.h
DDI
Definition: DDCompactView.h:25
DDTransform.h
DDSolidShape
DDSolidShape
Definition: DDSolidShapes.h:6
DDI::BooleanSolid
Definition: Boolean.h:12
DDI::Intersection
Definition: Boolean.h:32
DDI::BooleanSolid::t_
DDTranslation t_
Definition: Boolean.h:23
DDI::BooleanSolid::r_
DDRotation r_
Definition: Boolean.h:24
DDI::BooleanSolid::b_
DDSolid b_
Definition: Boolean.h:22
DDI::BooleanSolid::r
const DDRotation & r() const
Definition: Boolean.h:19
DDI::Union::Union
Union(const DDSolid &A, const DDSolid &B, const DDTranslation &t, const DDRotation &r)
Definition: Boolean.cc:8
Solid.h
alignCSCRings.s
s
Definition: alignCSCRings.py:92
DDI::BooleanSolid::a
const DDSolid & a() const
Definition: Boolean.h:16
DDTranslation
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DDTranslation
Definition: DDTranslation.h:7
DDI::Subtraction::Subtraction
Subtraction(const DDSolid &A, const DDSolid &B, const DDTranslation &t, const DDRotation &r)
Definition: Boolean.cc:14
DDSolid.h
DDI::BooleanSolid::a_
DDSolid a_
Definition: Boolean.h:22
DDI::Union
Definition: Boolean.h:27
A
DDTranslation.h
DDI::BooleanSolid::b
const DDSolid & b() const
Definition: Boolean.h:17
DDI::BooleanSolid::t
const DDTranslation & t() const
Definition: Boolean.h:18
DDI::Solid
Definition: Solid.h:10
DDI::BooleanSolid::BooleanSolid
BooleanSolid(const DDSolid &A, const DDSolid &B, const DDTranslation &t, const DDRotation &r, DDSolidShape s)
Definition: Boolean.cc:4
DDI::Intersection::Intersection
Intersection(const DDSolid &A, const DDSolid &B, const DDTranslation &t, const DDRotation &r)
Definition: Boolean.cc:11
TtFullHadDaughter::B
static const std::string B
Definition: TtFullHadronicEvent.h:9
DDI::Subtraction
Definition: Boolean.h:37
DDSolid
A DDSolid represents the shape of a part.
Definition: DDSolid.h:39
DDRotation
Represents a uniquely identifyable rotation matrix.
Definition: DDTransform.h:57