BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes
BDSSDFilterOr Class Reference

Filter that applies OR to a vector of filters. More...

#include <BDSSDFilterOr.hh>

Inheritance diagram for BDSSDFilterOr:
Inheritance graph
Collaboration diagram for BDSSDFilterOr:
Collaboration graph

Public Member Functions

 BDSSDFilterOr (const G4String &name, G4bool ownsTheFiltersIn=false)
 
virtual G4bool Accept (const G4Step *step) const
 
void RegisterFilter (G4VSDFilter *filterIn)
 Register the filter.
 
const std::vector< G4VSDFilter * > & Filters () const
 Accessor.
 
size_t size () const
 Accessor.
 

Private Attributes

G4bool ownsTheFilters
 Whether to delete the filters or not at the end.
 
std::vector< G4VSDFilter * > filters
 Vector of all filters.
 

Detailed Description

Filter that applies OR to a vector of filters.

Can optionally own the filters. If the ownsTheFiltersIn argument is true, they'll be deleted afterwards.

Author
Laurie Nevay

Definition at line 37 of file BDSSDFilterOr.hh.

Constructor & Destructor Documentation

◆ BDSSDFilterOr()

BDSSDFilterOr::BDSSDFilterOr ( const G4String &  name,
G4bool  ownsTheFiltersIn = false 
)
explicit

Definition at line 28 of file BDSSDFilterOr.cc.

◆ ~BDSSDFilterOr()

BDSSDFilterOr::~BDSSDFilterOr ( )
virtual

Definition at line 34 of file BDSSDFilterOr.cc.

Member Function Documentation

◆ Accept()

G4bool BDSSDFilterOr::Accept ( const G4Step *  step) const
virtual

Return the logical OR of all filter's Accept() method. If no filters are registered, it will return false and not accept anything.

Definition at line 43 of file BDSSDFilterOr.cc.

References filters.

◆ Filters()

const std::vector< G4VSDFilter * > & BDSSDFilterOr::Filters ( ) const
inline

Accessor.

Definition at line 52 of file BDSSDFilterOr.hh.

References filters.

◆ RegisterFilter()

void BDSSDFilterOr::RegisterFilter ( G4VSDFilter *  filterIn)
inline

Register the filter.

Definition at line 49 of file BDSSDFilterOr.hh.

References filters.

Referenced by BDSSDManager::BDSSDManager().

Here is the caller graph for this function:

◆ size()

size_t BDSSDFilterOr::size ( ) const
inline

Accessor.

Definition at line 53 of file BDSSDFilterOr.hh.

References filters.

Field Documentation

◆ filters

std::vector<G4VSDFilter*> BDSSDFilterOr::filters
private

Vector of all filters.

Definition at line 63 of file BDSSDFilterOr.hh.

Referenced by Accept(), Filters(), RegisterFilter(), and size().

◆ ownsTheFilters

G4bool BDSSDFilterOr::ownsTheFilters
private

Whether to delete the filters or not at the end.

Definition at line 60 of file BDSSDFilterOr.hh.


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