Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Acts::Experimental::Blueprint::Node Struct Referencefinal

#include <acts/blob/sPHENIX/Core/include/Acts/Detector/Blueprint.hpp>

+ Collaboration diagram for Acts::Experimental::Blueprint::Node:

Public Member Functions

 Node (const std::string &n, const Transform3 &t, VolumeBounds::BoundsType bt, const std::vector< ActsScalar > &bv, const std::vector< BinningValue > &bss, std::vector< std::unique_ptr< Node >> cs={})
 
 Node (const std::string &n, const Transform3 &t, VolumeBounds::BoundsType bt, const std::vector< ActsScalar > &bv, std::shared_ptr< const IInternalStructureBuilder > isb=nullptr)
 
bool isLeaf () const
 Check if it is a leaf node.
 
bool isRoot () const
 Check is it is a root.
 
void add (std::unique_ptr< Node > c)
 Method to add a child to this branch.
 
template<typename stream_type >
void dotStream (stream_type &ss, const std::string &graphName="blueprint") const
 Turn into a dot output.
 

Public Attributes

std::string name = ""
 Name identification of this node.
 
Transform3 transform = Transform3::Identity()
 Transform definition of this node.
 
VolumeBounds::BoundsType boundsType = VolumeBounds::eOther
 Boundary definition of this node.
 
std::vector< ActsScalarboundaryValues = {}
 The boundary type.
 
const Nodeparent = nullptr
 Parent node - nullptr for root only.
 
std::vector< std::unique_ptr
< Node > > 
children = {}
 Branch definitions: children.
 
std::vector< BinningValuebinning = {}
 Branch definition binning.
 
std::shared_ptr< const
IRootVolumeFinderBuilder
rootVolumeFinderBuilder
 Builders and helper tools that can be attached.
 
std::shared_ptr< const
IGeometryIdGenerator
geoIdGenerator = nullptr
 Geometry id generator.
 
std::shared_ptr< const
IInternalStructureBuilder
internalsBuilder = nullptr
 Internal structure builder - for leaf nodes.
 

Detailed Description

Definition at line 40 of file Blueprint.hpp.

View newest version in sPHENIX GitHub at line 40 of file Blueprint.hpp

Constructor & Destructor Documentation

Acts::Experimental::Blueprint::Node::Node ( const std::string &  n,
const Transform3 t,
VolumeBounds::BoundsType  bt,
const std::vector< ActsScalar > &  bv,
const std::vector< BinningValue > &  bss,
std::vector< std::unique_ptr< Node >>  cs = {} 
)
inline

Branch constructor

Parameters
nname of the node
tthe transform
btthe boundary type
bvthe boundary values
bssthe binning values
csthe children of the node

Definition at line 49 of file Blueprint.hpp.

View newest version in sPHENIX GitHub at line 49 of file Blueprint.hpp

Acts::Experimental::Blueprint::Node::Node ( const std::string &  n,
const Transform3 t,
VolumeBounds::BoundsType  bt,
const std::vector< ActsScalar > &  bv,
std::shared_ptr< const IInternalStructureBuilder isb = nullptr 
)
inline

Leaf constructor

Parameters
nname of the node
tthe transform
btthe boundary type
bvthe boundary values
isbthe internal structure builder (optional)

Definition at line 69 of file Blueprint.hpp.

View newest version in sPHENIX GitHub at line 69 of file Blueprint.hpp

Member Function Documentation

void Acts::Experimental::Blueprint::Node::add ( std::unique_ptr< Node c)
inline

Method to add a child to this branch.

Parameters
cthe child to be added

Definition at line 109 of file Blueprint.hpp.

View newest version in sPHENIX GitHub at line 109 of file Blueprint.hpp

References children, and testing::internal::move().

Referenced by Acts::Experimental::detail::BlueprintHelper::fillGaps().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<typename stream_type >
void Acts::Experimental::Blueprint::Node::dotStream ( stream_type &  ss,
const std::string &  graphName = "blueprint" 
) const
inline

Turn into a dot output.

Definition at line 116 of file Blueprint.hpp.

View newest version in sPHENIX GitHub at line 116 of file Blueprint.hpp

References Acts::PhysicalConstants::c, children, color, geoIdGenerator, internalsBuilder, isLeaf(), isRoot(), name, and rootVolumeFinderBuilder.

+ Here is the call graph for this function:

bool Acts::Experimental::Blueprint::Node::isLeaf ( ) const
inline

Check if it is a leaf node.

Definition at line 102 of file Blueprint.hpp.

View newest version in sPHENIX GitHub at line 102 of file Blueprint.hpp

References children.

Referenced by dotStream(), and Acts::Experimental::detail::BlueprintHelper::fillGaps().

+ Here is the caller graph for this function:

bool Acts::Experimental::Blueprint::Node::isRoot ( ) const
inline

Check is it is a root.

Definition at line 105 of file Blueprint.hpp.

View newest version in sPHENIX GitHub at line 105 of file Blueprint.hpp

References parent.

Referenced by dotStream().

+ Here is the caller graph for this function:

Member Data Documentation

std::vector<BinningValue> Acts::Experimental::Blueprint::Node::binning = {}
std::vector<ActsScalar> Acts::Experimental::Blueprint::Node::boundaryValues = {}

The boundary type.

Definition at line 85 of file Blueprint.hpp.

View newest version in sPHENIX GitHub at line 85 of file Blueprint.hpp

Referenced by Acts::Experimental::detail::BlueprintHelper::fillGaps().

VolumeBounds::BoundsType Acts::Experimental::Blueprint::Node::boundsType = VolumeBounds::eOther

Boundary definition of this node.

Definition at line 83 of file Blueprint.hpp.

View newest version in sPHENIX GitHub at line 83 of file Blueprint.hpp

Referenced by Acts::Experimental::CylindricalContainerBuilder::CylindricalContainerBuilder(), Acts::Experimental::detail::BlueprintHelper::fillGaps(), and Acts::Experimental::detail::BlueprintHelper::sort().

std::vector<std::unique_ptr<Node> > Acts::Experimental::Blueprint::Node::children = {}
std::shared_ptr<const IGeometryIdGenerator> Acts::Experimental::Blueprint::Node::geoIdGenerator = nullptr

Geometry id generator.

Definition at line 97 of file Blueprint.hpp.

View newest version in sPHENIX GitHub at line 97 of file Blueprint.hpp

Referenced by Acts::Experimental::CylindricalContainerBuilder::CylindricalContainerBuilder(), and dotStream().

std::shared_ptr<const IInternalStructureBuilder> Acts::Experimental::Blueprint::Node::internalsBuilder = nullptr

Internal structure builder - for leaf nodes.

Definition at line 99 of file Blueprint.hpp.

View newest version in sPHENIX GitHub at line 99 of file Blueprint.hpp

Referenced by dotStream().

const Node* Acts::Experimental::Blueprint::Node::parent = nullptr

Parent node - nullptr for root only.

Definition at line 87 of file Blueprint.hpp.

View newest version in sPHENIX GitHub at line 87 of file Blueprint.hpp

Referenced by isRoot().

std::shared_ptr<const IRootVolumeFinderBuilder> Acts::Experimental::Blueprint::Node::rootVolumeFinderBuilder
Initial value:
=
nullptr

Builders and helper tools that can be attached.

Definition at line 94 of file Blueprint.hpp.

View newest version in sPHENIX GitHub at line 94 of file Blueprint.hpp

Referenced by Acts::Experimental::CylindricalContainerBuilder::CylindricalContainerBuilder(), and dotStream().

Transform3 Acts::Experimental::Blueprint::Node::transform = Transform3::Identity()

Transform definition of this node.

Definition at line 81 of file Blueprint.hpp.

View newest version in sPHENIX GitHub at line 81 of file Blueprint.hpp

Referenced by Acts::Experimental::detail::BlueprintHelper::fillGaps(), and Acts::Experimental::detail::BlueprintHelper::sort().


The documentation for this struct was generated from the following file: