source: flair-src/trunk/lib/FlairCore/src/IODataElement.h@ 67

Last change on this file since 67 was 15, checked in by Bayard Gildas, 6 years ago

sources reformatted with flair-format-dir script

File size: 1.1 KB
RevLine 
[2]1// %flair:license{
[15]2// This file is part of the Flair framework distributed under the
3// CECILL-C License, Version 1.0.
[2]4// %flair:license}
5/*!
6 * \file IODataElement.h
7 * \brief Abstract class for accessing an element of an io_data.
8 * \author Guillaume Sanahuja, Copyright Heudiasyc UMR UTC/CNRS 7253
9 * \date 2014/11/26
10 * \version 4.0
11 */
12
13#ifndef IODATAELEMENT_H
14#define IODATAELEMENT_H
15
16#include "io_data.h"
17
[15]18namespace flair {
19namespace core {
[2]20
[15]21class DataType;
[2]22
[15]23/*! \class IODataElement
24*
25* \brief Abstract class for accessing an element of an io_data.
26*/
27class IODataElement : public Object {
28public:
29 /*!
30 * \brief Constructor
31 *
32 * Construct an IODataElement. \n
33 *
34 */
35 IODataElement(const io_data *parent, std::string name)
36 : Object(parent, name) {
37 this->parent = parent;
38 }
39 size_t Size() const { return size; }
[2]40
[15]41 virtual void CopyData(char *dst) const = 0;
[2]42
[15]43 /*!
44 * \brief DataType
45 *
46 * \return type of data
47 */
48 virtual DataType const &GetDataType(void) const = 0;
[2]49
[15]50protected:
51 size_t size;
[2]52
[15]53private:
54 const io_data *parent;
55};
[2]56
57} // end namespace core
58} // end namespace framework
59
60#endif // IODATAELEMENT_H
Note: See TracBrowser for help on using the repository browser.