1 #ifndef canvas_Persistency_Provenance_RangeSet_h 2 #define canvas_Persistency_Provenance_RangeSet_h 31 static constexpr
unsigned 55 std::vector<EventRange>
const&
ranges()
const;
60 bool is_full_run()
const;
61 bool is_full_subRun()
const;
62 bool is_sorted()
const;
63 bool is_collapsed()
const;
66 bool has_disjoint_ranges()
const;
74 std::size_t begin_idx()
const;
75 std::size_t end_idx()
const;
77 unsigned checksum()
const;
78 std::size_t next_subrun_or_end(std::size_t
const b)
const;
84 std::vector<EventRange> extract_ranges(std::size_t
const b,
93 template <
typename... ARGS>
94 void emplace_range(ARGS&&...);
108 void require_not_full_run();
111 std::vector<EventRange> ranges_{};
114 bool isCollapsed_{
false};
115 mutable unsigned checksum_{invalidChecksum()};
118 template <
typename... ARGS>
122 require_not_full_run();
123 ranges_.emplace_back(std::forward<ARGS>(
args)...);
124 isCollapsed_ =
false;
end
while True: pbar.update(maxval-len(onlies[E][S])) #print iS, "/", len(onlies[E][S]) found = False for...
constexpr auto const & right(const_AssnsIter< L, R, D, Dir > const &a, const_AssnsIter< L, R, D, Dir > const &b)
std::vector< EventRange >::const_iterator const_iterator
EventRange full_run_event_range()
static constexpr unsigned invalidChecksum()
void throw_if_not_disjoint(RunNumber_t const rn, EventRange const &left, EventRange const &right) noexcept(false)
constexpr bool is_valid(IDNumber_t< L > const id) noexcept
std::enable_if_t< detail::are_handles< T, U >::value, bool > disjoint_ranges(T const &a, U const &b)
IDNumber_t< Level::SubRun > SubRunNumber_t
std::ostream & operator<<(std::ostream &os, Analyzer::Table< T > const &t)
static int max(int a, int b)
constexpr auto const & left(const_AssnsIter< L, R, D, Dir > const &a, const_AssnsIter< L, R, D, Dir > const &b)
std::enable_if_t< detail::are_handles< T, U >::value, bool > overlapping_ranges(T const &a, U const &b)
std::enable_if_t< detail::are_handles< T, U >::value, bool > same_ranges(T const &a, U const &b)
IDNumber_t< Level::Event > EventNumber_t
vector< vector< double > > clear
decltype(auto) constexpr begin(T &&obj)
ADL-aware version of std::begin.
void emplace_range(ARGS &&...)
decltype(auto) constexpr empty(T &&obj)
ADL-aware version of std::empty.
bool operator==(ModuleKeyAndType const &a, ModuleKeyAndType const &b) noexcept
IDNumber_t< Level::Run > RunNumber_t