ITableLayout.hpp
1 #ifndef DM_ITABLE_LAYOUT_HPP_INCLUDED
2 #define DM_ITABLE_LAYOUT_HPP_INCLUDED
3 
4 #ifdef _MSC_VER
5  #pragma once
6 #endif
7 
8 #include "DM/config.hpp"
9 #include "DM/ColumnTypes.hpp"
10 #include "DM/Handle.hpp"
11 
12 //boost
13 #include <boost/any.hpp>
14 
15 DM_NAMESPACE_BEGIN
16 
17 class DM_API ITableLayout
18 {
19 public:
20  virtual ~ITableLayout() {}
21 
22  /*virtual void setFromNGAddInfoLayout(boost::any addinfolayout) = 0;
23  virtual boost::any getAsNGAddInfoLayout() const = 0;*/
24 
25  virtual unsigned columns() const = 0;
26 
27  virtual const char* name(unsigned pos) const = 0;
28  virtual E_ColumnType type(unsigned pos) const = 0;
29  virtual E_ColumnSemantic semantic(unsigned pos) const = 0;
30 };
31 
33 
34 DM_NAMESPACE_END
35 
36 
37 #endif //DM_ITABLE_LAYOUT_HPP_INCLUDED