2020-07-02 16:54:53 +02:00
|
|
|
#ifndef FRAMEWORK_DATAPOOLLOCAL_STATICLOCALDATASET_H_
|
|
|
|
#define FRAMEWORK_DATAPOOLLOCAL_STATICLOCALDATASET_H_
|
2020-08-23 20:27:00 +02:00
|
|
|
#include "LocalPoolDataSetBase.h"
|
|
|
|
#include "../objectmanager/SystemObjectIF.h"
|
2020-07-14 15:45:03 +02:00
|
|
|
#include <array>
|
2020-07-02 16:54:53 +02:00
|
|
|
|
2020-07-14 15:45:03 +02:00
|
|
|
/**
|
|
|
|
* @brief This local dataset type is created on the stack.
|
|
|
|
* @details
|
|
|
|
* Size of data set specified as a constructor argument. It is recommended
|
|
|
|
* to use the default LocalDataSet of the dataset is constructed on the heap
|
|
|
|
* and the SharedLocalDataSet if it created on the heap and used by multiple
|
|
|
|
* other software objects.
|
|
|
|
* @tparam capacity
|
|
|
|
*/
|
2020-07-16 11:45:23 +02:00
|
|
|
template <uint8_t NUM_VARIABLES>
|
2020-08-08 12:51:31 +02:00
|
|
|
class StaticLocalDataSet: public LocalPoolDataSetBase {
|
2020-07-16 11:45:23 +02:00
|
|
|
public:
|
|
|
|
StaticLocalDataSet(object_id_t owner):
|
2020-08-08 12:51:31 +02:00
|
|
|
LocalPoolDataSetBase(owner, poolVarList.data(), NUM_VARIABLES) {
|
2020-07-16 11:45:23 +02:00
|
|
|
}
|
|
|
|
|
2020-07-14 15:45:03 +02:00
|
|
|
private:
|
2020-07-16 11:45:23 +02:00
|
|
|
std::array<PoolVariableIF*, NUM_VARIABLES> poolVarList;
|
2020-07-02 16:54:53 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif /* FRAMEWORK_DATAPOOLLOCAL_STATICLOCALDATASET_H_ */
|