4 #ifndef PHOTONLIBRARYHYBRID_H
5 #define PHOTONLIBRARYHYBRID_H
13 namespace sim{
class PhotonVoxelDef;}
25 virtual float GetCount(
size_t Voxel,
size_t OpChannel)
const override;
28 virtual const float*
GetCounts(
size_t Voxel)
const override;
32 virtual const float*
GetReflCounts(
size_t Voxel)
const override {
return 0;}
33 virtual float GetReflCount(
size_t Voxel,
size_t OpChannel)
const override {
return 0;}
37 virtual const float*
GetReflT0s(
size_t Voxel)
const override {
return 0;}
38 virtual float GetReflT0(
size_t Voxel,
size_t OpChannel)
const override {
return 0;}
41 virtual int NVoxels()
const override;
virtual float GetReflT0(size_t Voxel, size_t OpChannel) const override
virtual int NVoxels() const override
bool operator<(const Exception &e) const
process_name opflash particleana ie x
FitFunc(float n, float d)
Representation of a region of space diced into voxels.
double Eval(double x) const
bool operator<(size_t v) const
virtual bool hasReflected() const override
Don't implement reflected light.
virtual const float * GetReflT0s(size_t Voxel) const override
PhotonLibraryHybrid(const std::string &fname, const sim::PhotonVoxelDef &voxdef)
virtual ~PhotonLibraryHybrid()
virtual float GetCount(size_t Voxel, size_t OpChannel) const override
virtual const float * GetReflCounts(size_t Voxel) const override
std::vector< Exception > exceptions
virtual bool hasReflectedT0() const override
Don't implement reflected light timing.
const sim::PhotonVoxelDef & fVoxDef
virtual float GetReflCount(size_t Voxel, size_t OpChannel) const override
Exception(size_t _vox, float _vis)
std::vector< OpDetRecord > fRecords
Interface shared by all PhotonLibrary-like classes.
virtual const float * GetCounts(size_t Voxel) const override
Returns a pointer to NOpChannels() visibility values, one per channel.
virtual int NOpChannels() const override