Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
wire-cell-build
gen
inc
WireCellGen
BlipSource.h
Go to the documentation of this file.
1
/** A blip source produces individual energy depositions in various
2
* ways.
3
*/
4
5
#ifndef WIRECELLGEN_BLIPSOURCE
6
#define WIRECELLGEN_BLIPSOURCE
7
8
9
#include "
WireCellIface/IDepoSource.h
"
10
#include "
WireCellIface/IConfigurable.h
"
11
#include "
WireCellIface/IRandom.h
"
12
13
namespace
WireCell
{
14
namespace
Gen {
15
16
class
BlipSource
:
public
IDepoSource
,
public
IConfigurable
{
17
public
:
18
BlipSource
();
19
virtual
~BlipSource
();
20
21
/// IDepoSource
22
virtual
bool
operator()
(
IDepo::pointer
& depo);
23
24
/// IConfigurable
25
virtual
void
configure
(
const
WireCell::Configuration
&
cfg
);
26
virtual
WireCell::Configuration
default_configuration
()
const
;
27
28
// Internal base class for something that makes a scalar
29
struct
ScalarMaker
{
30
virtual
double
operator()
() = 0;
31
virtual
~ScalarMaker
() {};
32
};
33
// Internal base class for something that makes a scalar
34
struct
PointMaker
{
35
virtual
Point
operator()
() = 0;
36
virtual
~PointMaker
() {};
37
};
38
39
private
:
40
std::string
m_rng_tn
;
41
IRandom::pointer
m_rng
;
42
43
double
m_time
,
m_stop
;
44
ScalarMaker
*
m_ene
, *
m_tim
;
45
PointMaker
*
m_pos
;
46
int
m_blip_count
;
47
bool
m_eos
;
48
};
49
}
50
}
51
52
#endif
53
WireCell::IData< IDepo >::pointer
std::shared_ptr< const IDepo > pointer
Definition:
IData.h:19
WireCell::IConfigurable
Definition:
IConfigurable.h:13
WireCell::Gen::BlipSource::ScalarMaker::~ScalarMaker
virtual ~ScalarMaker()
Definition:
BlipSource.h:31
string
std::string string
Definition:
nybbler.cc:12
WireCell::Gen::BlipSource::m_blip_count
int m_blip_count
Definition:
BlipSource.h:46
WireCell::Gen::BlipSource::ScalarMaker
Definition:
BlipSource.h:29
WireCell::Gen::BlipSource::BlipSource
BlipSource()
Definition:
BlipSource.cxx:14
WireCell::Gen::BlipSource::configure
virtual void configure(const WireCell::Configuration &cfg)
IConfigurable.
Definition:
BlipSource.cxx:128
IConfigurable.h
dbjson.cfg
cfg
Definition:
dbjson.py:29
IDepoSource.h
WireCell::Gen::BlipSource::m_time
double m_time
Definition:
BlipSource.h:43
WireCell::D3Vector< double >
WireCell::Gen::BlipSource::m_tim
ScalarMaker * m_tim
Definition:
BlipSource.h:44
WireCell::Gen::BlipSource::m_rng
IRandom::pointer m_rng
Definition:
BlipSource.h:41
IRandom.h
WireCell::Gen::BlipSource::operator()
virtual bool operator()(IDepo::pointer &depo)
IDepoSource.
Definition:
BlipSource.cxx:168
WireCell::Gen::BlipSource::m_rng_tn
std::string m_rng_tn
Definition:
BlipSource.h:40
WireCell::Gen::BlipSource::PointMaker
Definition:
BlipSource.h:34
WireCell::Gen::BlipSource::m_stop
double m_stop
Definition:
BlipSource.h:43
WireCell::Interface::pointer
std::shared_ptr< Interface > pointer
Definition:
Interface.h:16
WireCell::Gen::BlipSource
Definition:
BlipSource.h:16
WireCell::Gen::BlipSource::PointMaker::~PointMaker
virtual ~PointMaker()
Definition:
BlipSource.h:36
WireCell
Definition:
Main.h:22
WireCell::Gen::BlipSource::m_pos
PointMaker * m_pos
Definition:
BlipSource.h:45
WireCell::Gen::BlipSource::default_configuration
virtual WireCell::Configuration default_configuration() const
Optional, override to return a hard-coded default configuration.
Definition:
BlipSource.cxx:34
WireCell::Configuration
Json::Value Configuration
Definition:
Configuration.h:50
WireCell::Gen::BlipSource::m_ene
ScalarMaker * m_ene
Definition:
BlipSource.h:44
WireCell::Gen::BlipSource::m_eos
bool m_eos
Definition:
BlipSource.h:47
WireCell::IDepoSource
Definition:
IDepoSource.h:11
WireCell::Gen::BlipSource::~BlipSource
virtual ~BlipSource()
Definition:
BlipSource.cxx:25
WireCell::Gen::BlipSource::ScalarMaker::operator()
virtual double operator()()=0
Generated by
1.8.11