CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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
DDSolid b_
Definition: Boolean.h:22
const DDTranslation & t() const
Definition: Boolean.h:18
Intersection(const DDSolid &A, const DDSolid &B, const DDTranslation &t, const DDRotation &r)
Definition: Boolean.cc:11
const DDSolid & a() const
Definition: Boolean.h:16
const DDRotation & r() const
Definition: Boolean.h:19
A DDSolid represents the shape of a part.
Definition: DDSolid.h:39
Represents a uniquely identifyable rotation matrix.
Definition: DDTransform.h:57
DDSolid a_
Definition: Boolean.h:22
Union(const DDSolid &A, const DDSolid &B, const DDTranslation &t, const DDRotation &r)
Definition: Boolean.cc:8
const DDSolid & b() const
Definition: Boolean.h:17
BooleanSolid(const DDSolid &A, const DDSolid &B, const DDTranslation &t, const DDRotation &r, DDSolidShape s)
Definition: Boolean.cc:4
static const std::string B
DDSolidShape
Definition: DDSolidShapes.h:6
Subtraction(const DDSolid &A, const DDSolid &B, const DDTranslation &t, const DDRotation &r)
Definition: Boolean.cc:14
DDRotation r_
Definition: Boolean.h:24
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DDTranslation
Definition: DDTranslation.h:7
DDTranslation t_
Definition: Boolean.h:23