Developer documentation | Axl-2.5.1

axlAbstractField.h
Go to the documentation of this file.
1 /* axlAbstractField.h ---
2  *
3  * Author: Thibaud Kloczko
4  * Copyright (C) 2008 - Thibaud Kloczko, Inria.
5  * Created: Wed Jul 28 11:21:06 2010 (+0200)
6  * Version: $Id$
7  * Last-Updated: Fri Feb 4 21:54:24 2011 (+0100)
8  * By: Regis Duvigneau
9  * Update #: 142
10  */
11 
12 /* Commentary:
13  *
14  */
15 
16 /* Change log:
17  *
18  */
19 
20 #ifndef AXLABSTRACTFIELD_H
21 #define AXLABSTRACTFIELD_H
22 
23 #include "axlCoreExport.h"
24 #include "axlAbstractData.h"
25 #include <QtCore>
26 
27 class axlAbstractFieldPrivate;
28 
30 {
31  Q_OBJECT
32 
33 public:
34  enum Type {
35  Int = 0x001,
36  Float = 0x002,
37  Double = 0x004
38  };
39 
40  enum Kind {
41  Scalar = 0x001,
42  Vector = 0x002,
43  Tensor = 0x004
44  };
45 
46  enum Support {
47  Point = 0x001,
48  Cell = 0x002,
49  Custom = 0x004
50  };
51 
52 public:
54  axlAbstractField(QString name, Type type, Kind kind, Support support);
55  virtual ~axlAbstractField(void);
56 
57  virtual void setType(Type type);
58  virtual void setKind(Kind kind);
59  virtual void setSupport(Support support);
60 
61 // virtual void setScalar(int index, double v1);
62 // virtual void setVector(int index, double v1, double v2, double v3);
63 // virtual void setTensor(int index, double v1, double v2, double v3, double v4, double v5, double v6, double v7, double v8, double v9);
64 
65 
66  virtual Type type(void);
67  virtual Kind kind(void);
68  virtual Support support(void);
69 // virtual int size(void);
70 // virtual void setSize(int size);
71 
72 // virtual double scalar(int index);
73 // virtual double *vector(int index);
74 // virtual double *tensor(int index);
75 
76  virtual void setMin(double mini);
77  virtual double minValue(void);
78  virtual void setMax(double maxi);
79  virtual double maxValue(void);
80 
81 // virtual QString name(void);
82 // virtual void setName(QString name);
83  virtual QString identifier(void) const;
84 
85 signals:
86  void updated(void);
87 
88 
89 public slots:
90  virtual void update(void);
91 
92 //public:
93 // virtual void *array(void);
94 
95 private:
96  axlAbstractFieldPrivate *d;
97 };
98 
99 
100 
101 #endif //axlAbstractField_H
Class axlAbstractField defines an API for arrays of numeric data.
#define AXLCORE_EXPORT
Class axlAbstractData defines an API for all type of axel data.