All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
wcls::LazyFrame Class Reference
Inheritance diagram for wcls::LazyFrame:

Public Member Functions

 LazyFrame (art::Handle< std::vector< raw::RawDigit > > rdvh, int ident, double time, double tick, const tag_list_t &tags)
 
virtual ~LazyFrame ()
 
virtual const tag_list_t & frame_tags () const
 
virtual const tag_list_t & trace_tags () const
 
virtual const trace_list_t & tagged_traces (const tag_t &tag) const
 
virtual const trace_summary_t & trace_summary (const tag_t &tag) const
 
virtual
WireCell::ITrace::shared_vector 
traces () const
 
virtual int ident () const
 
virtual double time () const
 
virtual double tick () const
 

Private Attributes

int m_ident
 
double m_time
 
double m_tick
 
tag_list_t m_tags
 
WireCell::ITrace::shared_vector m_traces
 

Detailed Description

Definition at line 46 of file LazyFrameSource.cxx.

Constructor & Destructor Documentation

wcls::LazyFrame::LazyFrame ( art::Handle< std::vector< raw::RawDigit > >  rdvh,
int  ident,
double  time,
double  tick,
const tag_list_t &  tags 
)
inline

Definition at line 52 of file LazyFrameSource.cxx.

54  : m_ident(ident), m_time(time), m_tick(tick), m_tags(tags.begin(), tags.end()) {
55  const size_t nrds = rdvh->size();
56  auto* traces = new std::vector<LazyTrace::pointer>(nrds);
57  for (size_t ind = 0; ind < nrds; ++ind) {
58  traces->at(ind) = std::make_shared<LazyTrace>(rdvh, ind);
59  }
60  m_traces = WireCell::ITrace::shared_vector(traces);
61  }
virtual double tick() const
virtual double time() const
virtual WireCell::ITrace::shared_vector traces() const
WireCell::ITrace::shared_vector m_traces
virtual int ident() const
virtual wcls::LazyFrame::~LazyFrame ( )
inlinevirtual

Definition at line 63 of file LazyFrameSource.cxx.

63 { }

Member Function Documentation

virtual const tag_list_t& wcls::LazyFrame::frame_tags ( ) const
inlinevirtual

Definition at line 65 of file LazyFrameSource.cxx.

65  {
66  return m_tags;
67  }
virtual int wcls::LazyFrame::ident ( ) const
inlinevirtual

Definition at line 89 of file LazyFrameSource.cxx.

89  {
90  return m_ident;
91  }
virtual const trace_list_t& wcls::LazyFrame::tagged_traces ( const tag_t &  tag) const
inlinevirtual

Definition at line 74 of file LazyFrameSource.cxx.

74  {
75  static trace_list_t dummy; // this frame doesn't support trace tags
76  return dummy;
77  }
virtual double wcls::LazyFrame::tick ( ) const
inlinevirtual

Definition at line 97 of file LazyFrameSource.cxx.

97  {
98  return m_tick;
99  }
virtual double wcls::LazyFrame::time ( ) const
inlinevirtual

Definition at line 93 of file LazyFrameSource.cxx.

93  {
94  return m_time;
95  }
virtual const trace_summary_t& wcls::LazyFrame::trace_summary ( const tag_t &  tag) const
inlinevirtual

Definition at line 79 of file LazyFrameSource.cxx.

79  {
80  static trace_summary_t dummy; // this frame doesn't support trace tags
81  return dummy;
82  }
virtual const tag_list_t& wcls::LazyFrame::trace_tags ( ) const
inlinevirtual

Definition at line 69 of file LazyFrameSource.cxx.

69  {
70  static tag_list_t dummy; // this frame doesn't support trace tags
71  return dummy;
72  }
virtual WireCell::ITrace::shared_vector wcls::LazyFrame::traces ( ) const
inlinevirtual

Definition at line 85 of file LazyFrameSource.cxx.

85  {
86  return m_traces;
87  }
WireCell::ITrace::shared_vector m_traces

Member Data Documentation

int wcls::LazyFrame::m_ident
private

Definition at line 47 of file LazyFrameSource.cxx.

tag_list_t wcls::LazyFrame::m_tags
private

Definition at line 49 of file LazyFrameSource.cxx.

double wcls::LazyFrame::m_tick
private

Definition at line 48 of file LazyFrameSource.cxx.

double wcls::LazyFrame::m_time
private

Definition at line 48 of file LazyFrameSource.cxx.

WireCell::ITrace::shared_vector wcls::LazyFrame::m_traces
private

Definition at line 50 of file LazyFrameSource.cxx.


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