ATLAS Offline Software
Loading...
Searching...
No Matches
CyclicSeqSampler Class Reference

#include <Samplers.h>

Inheritance diagram for CyclicSeqSampler:
Collaboration diagram for CyclicSeqSampler:

Public Member Functions

 ~CyclicSeqSampler ()
 CyclicSeqSampler (const CyclicSeqSampler &orig)
 CyclicSeqSampler (std::string s)
float shoot ()

Public Attributes

float m_val {}
TRandom m_random

Private Attributes

std::vector< int > m_sequence
int m_index {}

Detailed Description

Definition at line 186 of file Samplers.h.

Constructor & Destructor Documentation

◆ ~CyclicSeqSampler()

CyclicSeqSampler::~CyclicSeqSampler ( )
inline

Definition at line 188 of file Samplers.h.

188{};

◆ CyclicSeqSampler() [1/2]

CyclicSeqSampler::CyclicSeqSampler ( const CyclicSeqSampler & orig)
inline

Definition at line 189 of file Samplers.h.

189: Sampler(), m_sequence(orig.m_sequence) , m_index(0){};
std::vector< int > m_sequence
Definition Samplers.h:208
Sampler()=default

◆ CyclicSeqSampler() [2/2]

CyclicSeqSampler::CyclicSeqSampler ( std::string s)
inline

Definition at line 190 of file Samplers.h.

190 {
191 size_t pos = 0;
192 std::string token;
193 std::cout << "Initializing CyclicSeqSampler..." << std::endl;
194 while ((pos = s.find(',')) != std::string::npos) {
195 token = s.substr(0, pos);
196 m_sequence.push_back(std::stoi(token));
197 s.erase(0, pos + 1);
198 std::cout << " adding " << m_sequence[m_sequence.size()-1] << " from " << token.c_str() << std::endl;
199 }
200 m_index = 0;
201 };

Member Function Documentation

◆ shoot()

float CyclicSeqSampler::shoot ( )
inlinevirtual

Reimplemented from Sampler.

Definition at line 202 of file Samplers.h.

202 {
203 m_index = (m_index + 1) % m_sequence.size();
204 std::cout << "CyclicSeqSampler returning " << m_sequence[m_index] << std::endl;
205 return m_sequence[m_index];
206 };

Member Data Documentation

◆ m_index

int CyclicSeqSampler::m_index {}
private

Definition at line 209 of file Samplers.h.

209{};

◆ m_random

TRandom Sampler::m_random
inherited

Definition at line 27 of file Samplers.h.

◆ m_sequence

std::vector<int> CyclicSeqSampler::m_sequence
private

Definition at line 208 of file Samplers.h.

◆ m_val

float Sampler::m_val {}
inherited

Definition at line 26 of file Samplers.h.

26{};

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