DD4hep  1.28.0
Detector Description Toolkit for High Energy Physics
Public Member Functions | List of all members
dd4hep::SubtractionSolid Class Reference

Class describing boolean subtraction solid. More...

#include <Shapes.h>

Inheritance diagram for dd4hep::SubtractionSolid:
dd4hep::BooleanSolid dd4hep::Solid_type< TGeoCompositeShape > dd4hep::Handle< TGeoCompositeShape >

Public Member Functions

 SubtractionSolid ()=default
 Default constructor. More...
 
 SubtractionSolid (SubtractionSolid &&e)=default
 Move Constructor. More...
 
 SubtractionSolid (const SubtractionSolid &e)=default
 Copy Constructor. More...
 
template<typename Q >
 SubtractionSolid (const Handle< Q > &e)
 Constructor to be used when passing an already created object. More...
 
 SubtractionSolid (const Solid &shape1, const Solid &shape2)
 Constructor to create a new object. Position is identity, Rotation is identity-rotation! More...
 
 SubtractionSolid (const Solid &shape1, const Solid &shape2, const Position &pos)
 Constructor to create a new object. Placement by position, Rotation is identity-rotation! More...
 
 SubtractionSolid (const Solid &shape1, const Solid &shape2, const RotationZYX &rot)
 Constructor to create a new object. Placement by a RotationZYX within the mother. More...
 
 SubtractionSolid (const Solid &shape1, const Solid &shape2, const Rotation3D &rot)
 Constructor to create a new object. Placement by a generic rotoation within the mother. More...
 
 SubtractionSolid (const Solid &shape1, const Solid &shape2, const Transform3D &pos)
 Constructor to create a new object. Placement by a generic transformation within the mother. More...
 
 SubtractionSolid (const std::string &name, const Solid &shape1, const Solid &shape2)
 Constructor to create a new identified object. Position is identity, Rotation is identity-rotation! More...
 
 SubtractionSolid (const std::string &name, const Solid &shape1, const Solid &shape2, const Position &pos)
 Constructor to create a new identified object. Placement by position, Rotation is identity-rotation! More...
 
 SubtractionSolid (const std::string &name, const Solid &shape1, const Solid &shape2, const RotationZYX &rot)
 Constructor to create a new identified object. Placement by a RotationZYX within the mother. More...
 
 SubtractionSolid (const std::string &name, const Solid &shape1, const Solid &shape2, const Rotation3D &rot)
 Constructor to create a new identified object. Placement by a generic rotoation within the mother. More...
 
 SubtractionSolid (const std::string &name, const Solid &shape1, const Solid &shape2, const Transform3D &pos)
 Constructor to create a new identified object. Placement by a generic transformation within the mother. More...
 
SubtractionSolidoperator= (SubtractionSolid &&copy)=default
 Move Assignment operator. More...
 
SubtractionSolidoperator= (const SubtractionSolid &copy)=default
 Copy Assignment operator. More...
 
- Public Member Functions inherited from dd4hep::BooleanSolid
 BooleanSolid ()=default
 Default constructor. More...
 
 BooleanSolid (BooleanSolid &&b)=default
 Move Constructor. More...
 
 BooleanSolid (const BooleanSolid &b)=default
 Copy Constructor. More...
 
template<typename Q >
 BooleanSolid (const Handle< Q > &e)
 Constructor to be used when passing an already created object. More...
 
BooleanSolidoperator= (BooleanSolid &&copy)=default
 Move Assignment operator. More...
 
BooleanSolidoperator= (const BooleanSolid &copy)=default
 Copy Assignment operator. More...
 
Solid rightShape () const
 Access right solid of the boolean. More...
 
Solid leftShape () const
 Access left solid of the boolean. More...
 
const TGeoMatrix * rightMatrix () const
 Access right positioning matrix of the boolean. More...
 
const TGeoMatrix * leftMatrix () const
 Access left positioning matrix of the boolean. More...
 
- Public Member Functions inherited from dd4hep::Solid_type< TGeoCompositeShape >
 Solid_type ()=default
 Default constructor for uninitialized object. More...
 
 Solid_type (Solid_type &&e)=default
 Move constructor. More...
 
 Solid_type (const Solid_type &e)=default
 Copy constructor. More...
 
 Solid_type (TGeoCompositeShape *p)
 Direct assignment using the implementation pointer. More...
 
 Solid_type (Handle< TGeoCompositeShape > &&e)
 Move Constructor from handle. More...
 
 Solid_type (const Handle< TGeoCompositeShape > &e)
 Copy Constructor from handle. More...
 
 Solid_type (const Handle< Q > &e)
 Constructor to be used when passing an already created object: need to check pointers. More...
 
Solid_typeoperator= (Solid_type &&copy)=default
 Assignment move operator. More...
 
Solid_typeoperator= (const Solid_type &copy)=default
 Assignment copy operator. More...
 
const char * name () const
 Access to shape name. More...
 
Solid_type< TGeoCompositeShape > & setName (const char *value)
 Set new shape name. More...
 
Solid_type< TGeoCompositeShape > & setName (const std::string &value)
 Set new shape name. More...
 
const char * title () const
 Access to shape title (GetTitle accessor of the TGeoShape) More...
 
const char * type () const
 Access to shape type (The TClass name of the ROOT implementation) More...
 
 operator TGeoCompositeShape * () const
 Auto conversion to underlying ROOT object. More...
 
TGeoCompositeShape * operator-> () const
 Overloaded operator -> to access underlying object. More...
 
std::vector< double > dimensions ()
 Access the dimensions of the shape: inverse of the setDimensions member function. More...
 
Solid_typesetDimensions (const std::vector< double > &params)
 Set the shape dimensions. As for the TGeo shape, but angles in rad rather than degrees. More...
 
std::string toString (int precision=2) const
 Conversion to string for pretty print. More...
 
TGeoVolume * divide (const Volume &voldiv, const std::string &divname, int iaxis, int ndiv, double start, double step) const
 Divide volume into subsections (See the ROOT manuloa for details) More...
 
- Public Member Functions inherited from dd4hep::Handle< TGeoCompositeShape >
 Handle ()=default
 Default constructor. More...
 
 Handle (Handle< TGeoCompositeShape > &&element)=default
 Copy constructor. More...
 
 Handle (const Handle< TGeoCompositeShape > &element)=default
 Copy constructor. More...
 
 Handle (TGeoCompositeShape *element)
 Initializing constructor from pointer. More...
 
 Handle (Q *element)
 Initializing constructor from unrelated pointer with type checking. More...
 
 Handle (const Handle< Q > &element)
 Initializing constructor from unrelated handle with type checking. More...
 
Handle< TGeoCompositeShape > & operator= (Handle< TGeoCompositeShape > &&element)=default
 Assignment move operator. More...
 
Handle< TGeoCompositeShape > & operator= (const Handle< TGeoCompositeShape > &element)=default
 Assignment copy operator. More...
 
bool operator== (const Handle< TGeoCompositeShape > &element) const
 Boolean operator == used for RB tree insertions. More...
 
bool operator< (const Handle< TGeoCompositeShape > &element) const
 Boolean operator < used for RB tree insertions. More...
 
bool operator> (const Handle< TGeoCompositeShape > &element) const
 Boolean operator > used for RB tree insertions. More...
 
bool isValid () const
 Check the validity of the object held by the handle. More...
 
bool operator! () const
 Check the validity of the object held by the handle. More...
 
Handle< TGeoCompositeShape > & clear ()
 Release the object held by the handle. More...
 
TGeoCompositeShape * operator-> () const
 Access the held object using the -> operator. More...
 
 operator TGeoCompositeShape & () const
 Automatic type conversion to an object references. More...
 
TGeoCompositeShape & operator* () const
 Access the held object using the * operator. More...
 
TGeoCompositeShape * ptr () const
 Access to the held object. More...
 
Q * _ptr () const
 Access to an unrelated object type. More...
 
Q * data () const
 Access to an unrelated object type. More...
 
Q & object () const
 Access to an unrelated object type. More...
 
TGeoCompositeShape * access () const
 Checked object access. Throws invalid handle runtime exception if invalid handle. More...
 
const char * name () const
 Access the object name (or "" if not supported by the object) More...
 
const char * name () const
 
const char * name () const
 
void assign (Object *n, const std::string &nam, const std::string &title)
 Assign a new named object. Note: object references must be managed by the user. More...
 
void assign (_Segmentation *s, const std::string &n, const std::string &)
 
void assign (NamedObject *p, const std::string &n, const std::string &t)
 
void destroy ()
 Destroy the underlying object (be careful here: things are not reference counted)! More...
 

Additional Inherited Members

- Public Types inherited from dd4hep::Handle< TGeoCompositeShape >
typedef TGeoCompositeShape Object
 Extern accessible definition of the contained element type. More...
 
typedef Handle< TGeoCompositeShape > Base
 Self type: used by sub-classes. More...
 
- Static Public Member Functions inherited from dd4hep::Handle< TGeoCompositeShape >
static void bad_assignment (const std::type_info &from, const std::type_info &to)
 Helper routine called when unrelated types are assigned. More...
 
- Public Attributes inherited from dd4hep::Handle< TGeoCompositeShape >
TGeoCompositeShape * m_element
 Single and only data member: Reference to the actual element. More...
 
- Protected Member Functions inherited from dd4hep::Solid_type< TGeoCompositeShape >
void _setDimensions (double *param) const
 
void _assign (TGeoCompositeShape *n, const std::string &nam, const std::string &tit, bool cbbox)
 Assign pointrs and register solid to geometry. More...
 

Detailed Description

Class describing boolean subtraction solid.

For any further documentation please see the following ROOT documentation:

See also
http://root.cern.ch/root/html/TGeoCompositeShape.html
http://root.cern.ch/root/html/TGeoSubtraction.html
Author
M.Frank
Version
1.0

Definition at line 1878 of file Shapes.h.

Constructor & Destructor Documentation

◆ SubtractionSolid() [1/14]

dd4hep::SubtractionSolid::SubtractionSolid ( )
default

Default constructor.

◆ SubtractionSolid() [2/14]

dd4hep::SubtractionSolid::SubtractionSolid ( SubtractionSolid &&  e)
default

Move Constructor.

◆ SubtractionSolid() [3/14]

dd4hep::SubtractionSolid::SubtractionSolid ( const SubtractionSolid e)
default

Copy Constructor.

◆ SubtractionSolid() [4/14]

template<typename Q >
dd4hep::SubtractionSolid::SubtractionSolid ( const Handle< Q > &  e)
inline

Constructor to be used when passing an already created object.

Definition at line 1887 of file Shapes.h.

◆ SubtractionSolid() [5/14]

SubtractionSolid::SubtractionSolid ( const Solid shape1,
const Solid shape2 
)

Constructor to create a new object. Position is identity, Rotation is identity-rotation!

Constructor to be used when creating a new object. Position is identity, Rotation is the identity rotation.

Definition at line 871 of file Shapes.cpp.

◆ SubtractionSolid() [6/14]

SubtractionSolid::SubtractionSolid ( const Solid shape1,
const Solid shape2,
const Position pos 
)

Constructor to create a new object. Placement by position, Rotation is identity-rotation!

Constructor to be used when creating a new object. Rotation is the identity rotation.

Definition at line 883 of file Shapes.cpp.

◆ SubtractionSolid() [7/14]

SubtractionSolid::SubtractionSolid ( const Solid shape1,
const Solid shape2,
const RotationZYX rot 
)

Constructor to create a new object. Placement by a RotationZYX within the mother.

Constructor to be used when creating a new object.

Definition at line 889 of file Shapes.cpp.

◆ SubtractionSolid() [8/14]

SubtractionSolid::SubtractionSolid ( const Solid shape1,
const Solid shape2,
const Rotation3D rot 
)

Constructor to create a new object. Placement by a generic rotoation within the mother.

Constructor to be used when creating a new object.

Definition at line 895 of file Shapes.cpp.

◆ SubtractionSolid() [9/14]

SubtractionSolid::SubtractionSolid ( const Solid shape1,
const Solid shape2,
const Transform3D pos 
)

Constructor to create a new object. Placement by a generic transformation within the mother.

Constructor to be used when creating a new object. Placement by a generic transformation within the mother.

Definition at line 877 of file Shapes.cpp.

◆ SubtractionSolid() [10/14]

SubtractionSolid::SubtractionSolid ( const std::string &  name,
const Solid shape1,
const Solid shape2 
)

Constructor to create a new identified object. Position is identity, Rotation is identity-rotation!

Constructor to be used when creating a new object. Position is identity, Rotation is the identity rotation.

Definition at line 901 of file Shapes.cpp.

◆ SubtractionSolid() [11/14]

SubtractionSolid::SubtractionSolid ( const std::string &  name,
const Solid shape1,
const Solid shape2,
const Position pos 
)

Constructor to create a new identified object. Placement by position, Rotation is identity-rotation!

Constructor to be used when creating a new object. Rotation is the identity rotation.

Definition at line 913 of file Shapes.cpp.

◆ SubtractionSolid() [12/14]

SubtractionSolid::SubtractionSolid ( const std::string &  name,
const Solid shape1,
const Solid shape2,
const RotationZYX rot 
)

Constructor to create a new identified object. Placement by a RotationZYX within the mother.

Constructor to be used when creating a new object.

Definition at line 919 of file Shapes.cpp.

◆ SubtractionSolid() [13/14]

SubtractionSolid::SubtractionSolid ( const std::string &  name,
const Solid shape1,
const Solid shape2,
const Rotation3D rot 
)

Constructor to create a new identified object. Placement by a generic rotoation within the mother.

Constructor to be used when creating a new object.

Definition at line 925 of file Shapes.cpp.

◆ SubtractionSolid() [14/14]

SubtractionSolid::SubtractionSolid ( const std::string &  name,
const Solid shape1,
const Solid shape2,
const Transform3D pos 
)

Constructor to create a new identified object. Placement by a generic transformation within the mother.

Constructor to be used when creating a new object. Placement by a generic transformation within the mother.

Definition at line 907 of file Shapes.cpp.

Member Function Documentation

◆ operator=() [1/2]

SubtractionSolid& dd4hep::SubtractionSolid::operator= ( const SubtractionSolid copy)
default

Copy Assignment operator.

◆ operator=() [2/2]

SubtractionSolid& dd4hep::SubtractionSolid::operator= ( SubtractionSolid &&  copy)
default

Move Assignment operator.


The documentation for this class was generated from the following files: