Public Types | Public Member Functions | Private Member Functions | List of all members
gar::geo::AuxDetExptGeoHelperInterface Class Referenceabstract

Interface to a service with detector-specific geometry knowledge. More...

#include <AuxDetExptGeoHelperInterface.h>

Inheritance diagram for gar::geo::AuxDetExptGeoHelperInterface:
gar::geo::AuxDetGeometryHelperExample

Public Types

using AuxDetChannelMapAlgPtr_t = std::shared_ptr< const seg::AuxDetChannelMapAlg >
 

Public Member Functions

virtual ~AuxDetExptGeoHelperInterface ()=default
 Virtual destructor; does nothing. More...
 
void ConfigureAuxDetChannelMapAlg (fhicl::ParameterSet const &sortingParameters, geo::AuxDetGeometryCore *geom)
 Configure and initialize the channel map. More...
 
AuxDetChannelMapAlgPtr_t GetAuxDetChannelMapAlg () const
 

Private Member Functions

virtual void doConfigureAuxDetChannelMapAlg (fhicl::ParameterSet const &sortingParameters, geo::AuxDetGeometryCore *geom)=0
 Implementation of ConfigureChannelMapAlg (pure virtual) More...
 
virtual AuxDetChannelMapAlgPtr_t doGetAuxDetChannelMapAlg () const =0
 Returns the ChannelMapAlg. More...
 

Detailed Description

Interface to a service with detector-specific geometry knowledge.

This is an interface to a service that virtualizes detector or experiment-specific knowledge that is required by the Geometry service. Experiments implement the private virtual functions within a concrete service provider class to perform the specified actions as appropriate for the particular experiment. It is expected that such requests will occur infrequently within a job. Calculations that occur frequently should be handled via interfaces that are passed back to the Geometry service.

Note
The public interface for this service cannot be overriden. The experiment-specific sub-classes should implement only the private methods without promoting their visibility.

Definition at line 59 of file AuxDetExptGeoHelperInterface.h.

Member Typedef Documentation

Definition at line 62 of file AuxDetExptGeoHelperInterface.h.

Constructor & Destructor Documentation

virtual gar::geo::AuxDetExptGeoHelperInterface::~AuxDetExptGeoHelperInterface ( )
virtualdefault

Virtual destructor; does nothing.

Member Function Documentation

void gar::geo::AuxDetExptGeoHelperInterface::ConfigureAuxDetChannelMapAlg ( fhicl::ParameterSet const &  sortingParameters,
geo::AuxDetGeometryCore geom 
)
inline

Configure and initialize the channel map.

Parameters
sortingParametersparameters for the channel map algorithm
geompointer to a geometry description object
Returns
a (shared) pointer to the channel mapping algorithm

This method creates a new ChannelMapAlg according to the geometry and specified configuration, then it configures the geometry itself according to the channel map (usually, it resorts the data).

Definition at line 100 of file AuxDetExptGeoHelperInterface.h.

102  {
103  doConfigureAuxDetChannelMapAlg(sortingParameters, geom);
104  }
virtual void doConfigureAuxDetChannelMapAlg(fhicl::ParameterSet const &sortingParameters, geo::AuxDetGeometryCore *geom)=0
Implementation of ConfigureChannelMapAlg (pure virtual)
virtual void gar::geo::AuxDetExptGeoHelperInterface::doConfigureAuxDetChannelMapAlg ( fhicl::ParameterSet const &  sortingParameters,
geo::AuxDetGeometryCore geom 
)
privatepure virtual

Implementation of ConfigureChannelMapAlg (pure virtual)

Implemented in gar::geo::AuxDetGeometryHelperExample.

virtual AuxDetChannelMapAlgPtr_t gar::geo::AuxDetExptGeoHelperInterface::doGetAuxDetChannelMapAlg ( ) const
privatepure virtual

Returns the ChannelMapAlg.

Implemented in gar::geo::AuxDetGeometryHelperExample.

AuxDetExptGeoHelperInterface::AuxDetChannelMapAlgPtr_t gar::geo::AuxDetExptGeoHelperInterface::GetAuxDetChannelMapAlg ( ) const
inline

Returns null pointer if the initialization failed NOTE: the sub-class owns the ChannelMapAlg object

Definition at line 106 of file AuxDetExptGeoHelperInterface.h.

107  {
108  return doGetAuxDetChannelMapAlg();
109  }
virtual AuxDetChannelMapAlgPtr_t doGetAuxDetChannelMapAlg() const =0
Returns the ChannelMapAlg.

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