48template <
class DATA_TYPE, std::
size_t NUM_OF_CHANNELS>
63 resize(std::size_t width, std::size_t height)
110 const std::size_t channel)
124 const std::size_t channel)
const
131 std::vector<DATA_TYPE> data_;
139template <
class DATA_TYPE, std::
size_t NUM_OF_CHANNELS>
154 addData(
const std::size_t width,
const std::size_t height)
158 data->resize(width, height);
160 data_set_.push_back(data);
188 const std::size_t
col,
189 const std::size_t
row)
191 return (*data_set_[data_set_id])(
col,
row);
202 const std::size_t
col,
203 const std::size_t
row)
const
205 return (*data_set_[data_set_id])(
col,
row);
217 const std::size_t
col,
218 const std::size_t
row,
219 const std::size_t channel)
221 return (*data_set_[data_set_id])(
col,
row, channel);
233 const std::size_t
col,
234 const std::size_t
row,
235 const std::size_t channel)
const
237 return (*data_set_[data_set_id])(
col,
row, channel);
242 std::vector<MultiChannel2DData<DATA_TYPE, NUM_OF_CHANNELS>*> data_set_;
Iterator class for point clouds with or without given indices.
std::size_t size() const
Size of the range the iterator is going through.
Holds two-dimensional multi-channel data.
virtual ~MultiChannel2DData()
Destructor.
void resize(std::size_t width, std::size_t height)
Resizes the internal data storage.
void clear()
Clears the internal data storage and sets width and height to 0.
const DATA_TYPE & operator()(const std::size_t col_index, const std::size_t row_index, const std::size_t channel) const
Returns a reference to the internal data at the specified location.
MultiChannel2DData()
Constructor.
DATA_TYPE * operator()(const std::size_t col_index, const std::size_t row_index)
Returns a pointer to the internal data at the specified location.
const DATA_TYPE * operator()(const std::size_t col_index, const std::size_t row_index) const
Returns a pointer to the internal data at the specified location.
DATA_TYPE & operator()(const std::size_t col_index, const std::size_t row_index, const std::size_t channel)
Returns a reference to the internal data at the specified location.
Holds a set of two-dimensional multi-channel data.
void clear()
Releases the data stored in the data set.
void releaseDataSet()
Releases the data stored in the data set.
virtual ~MultiChannel2DDataSet()
Destructor.
const DATA_TYPE * operator()(const std::size_t data_set_id, const std::size_t col, const std::size_t row) const
Returns a pointer to the specified data block at the specified location.
const DATA_TYPE & operator()(const std::size_t data_set_id, const std::size_t col, const std::size_t row, const std::size_t channel) const
Returns a reference to the specified data block at the specified location.
void addData(const std::size_t width, const std::size_t height)
Adds a new two-dimensional data block to the data set.
DATA_TYPE * operator()(const std::size_t data_set_id, const std::size_t col, const std::size_t row)
Returns a pointer to the specified data block at the specified location.
MultiChannel2DDataSet()
Constructor.
DATA_TYPE & operator()(const std::size_t data_set_id, const std::size_t col, const std::size_t row, const std::size_t channel)
Returns a reference to the specified data block at the specified location.
Define standard C methods and C++ classes that are common to all methods.