XdmfDataItem.hpp 1008 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
/*
 * XdmfDataItem.hpp
 *
 *
 *  Created on: Jan 25, 2010
 *      Author: kleiter
 */

#ifndef XDMFDATAITEM_HPP_
#define XDMFDATAITEM_HPP_

#include "XdmfDataItemType.hpp"
#include "XdmfItem.hpp"

class XdmfDataItem : public XdmfItem {

public:

19
	//XdmfNewMacro(XdmfDataItem);
20

21
	template <typename T> void setValues(T * dataPointer);
22

23 24
	//template <typename T> T* getValues();
	void* getValues();
25

26 27 28 29 30 31 32 33
	//template <typename T> const T* const getValues() const;
	const void* const getValues() const;

	hid_t getHDF5DataType() const;

	std::string getName() const;

	int getPrecision() const;
34 35 36

	int getNumberValues() const;

37 38
	std::string printSelf() const;

39
	void write(boost::shared_ptr<XdmfVisitor> visitor) const = 0;
40 41 42

protected:

43 44
	int mNumberValues;

45 46 47 48 49 50 51 52
	XdmfDataItem();
	virtual ~XdmfDataItem();

private:

	XdmfDataItem(const XdmfDataItem&);  // Not implemented.
	void operator=(const XdmfDataItem&);  // Not implemented.

53
	void* mDataPointer;
54
	XdmfDataItemType mDataItemType;
55 56 57
};

#endif /* XDMFDATAITEM_HPP_ */