11#include "sparta/resources/VectorResourceCollectable.hpp"
26 template <
class ArrayType>
29 using VectorResourceCollectable<
ArrayType>::collected_resource_;
30 using VectorResourceCollectable<
ArrayType>::collectors_;
31 using VectorResourceCollectable<
ArrayType>::closeRecord;
41 VectorResourceCollectable<
ArrayType>(parent, array,
42 array->getName() +
"_age_ordered",
43 array->getName() +
" Age-Ordered")
53 const typename ArrayType::AgedList & aged_list =
54 collected_resource_->getInternalAgedList_();
55 uint32_t collector_idx = aged_list.size() - 1;
56 for(
const auto & obj : aged_list)
58 collectors_[collector_idx]->collect(collected_resource_->read(obj));
62 for(uint32_t i = aged_list.size(); i < collected_resource_->capacity(); ++i) {
63 collectors_[i]->closeRecord();
Node in a composite tree representing a sparta Tree item.
An AgedArrayCollector is created by the Array class in sparta when Pipeline collection is required.
void collect() override final
set up the Collector with the current state of the Array, and begin collection going forward.
AgedArrayCollector(sparta::TreeNode *parent, const ArrayType *array)
Construct an AgedArrayCollector.
Macros for handling exponential backoff.
ArrayType
Defines how a sparta::Array should behave. The array will have different features depending on the ty...