1 #include "cheetah/data/DmTrialsMetadata.h" 2 #include "panda/Error.h" 11 , _downsampling_factor(downsampling_factor)
16 DmTrialsMetadata::Metadata::~Metadata()
28 return _downsampling_factor * _parent._sampling_interval;
33 return _parent._number_of_samples/_downsampling_factor;
37 : _sampling_interval(fundamental_sampling_interval)
38 , _number_of_samples(fundamental_sample_count)
41 boost::hash_combine(_hash_value,_sampling_interval.value());
44 DmTrialsMetadata::~DmTrialsMetadata()
51 if (_number_of_samples % downsampling_factor != 0)
52 throw panda::Error(
"Downsampling factor does not perfectly divide fundamental sample count.");
53 boost::hash_combine(_hash_value,dm.value());
54 boost::hash_combine(_hash_value,downsampling_factor);
55 _metadata.emplace_back(*
this,dm,downsampling_factor);
70 return _metadata.begin();
75 return _metadata.begin();
80 return _metadata.cbegin();
85 return _metadata.end();
90 return _metadata.end();
95 return _metadata.cend();
100 return _metadata.size();
105 return _hash_value == other._hash_value;
110 return _number_of_samples * _sampling_interval;
115 return _sampling_interval;
120 std::size_t total_size=0;
121 for (
auto const& trial: *
this)
123 total_size+=trial.size();
Some limits and constants for FLDO.