[todo] problem with the petraIII diffractometer.
[hkl.git] / gui / hkl-gui-pseudoaxes.h
blob6d1f7f05bf81ca71011a7fd4db3f19df5a1a3067
1 /* This file is part of the hkl library.
3 * The hkl library is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 3 of the License, or
6 * (at your option) any later version.
8 * The hkl library is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
13 * You should have received a copy of the GNU General Public License
14 * along with the hkl library. If not, see <http://www.gnu.org/licenses/>.
16 * Copyright (C) 2003-2013 Synchrotron SOLEIL
17 * L'Orme des Merisiers Saint-Aubin
18 * BP 48 91192 GIF-sur-YVETTE CEDEX
20 * Authors: Picca Frédéric-Emmanuel <picca@synchrotron-soleil.fr>
23 #ifndef __HKL_GUI_ENGINE_H__
24 #define __HKL_GUI_ENGINE_H__
26 #include <glib.h>
27 #include <glib-object.h>
28 #include <gtk/gtk.h>
29 #include <hkl.h>
31 G_BEGIN_DECLS
33 #define HKL_GUI_TYPE_ENGINE (hkl_gui_engine_get_type ())
34 #define HKL_GUI_ENGINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), HKL_GUI_TYPE_ENGINE, HklGuiEngine))
35 #define HKL_GUI_ENGINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), HKL_GUI_TYPE_ENGINE, HklGuiEngineClass))
36 #define HKL_GUI_IS_ENGINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), HKL_GUI_TYPE_ENGINE))
37 #define HKL_GUI_IS_ENGINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), HKL_GUI_TYPE_ENGINE))
38 #define HKL_GUI_ENGINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), HKL_GUI_TYPE_ENGINE, HklGuiEngineClass))
40 typedef struct _HklGuiEngine HklGuiEngine;
41 typedef struct _HklGuiEngineClass HklGuiEngineClass;
42 typedef struct _HklGuiEnginePrivate HklGuiEnginePrivate;
44 typedef enum {
45 MODE_COL_NAME = 0,
46 MODE_COL_NUM_COLS
47 } ModeCol;
49 typedef enum {
50 PSEUDO_COL_NAME = 0,
51 PSEUDO_COL_IDX,
52 PSEUDO_COL_VALUE,
53 PSEUDO_COL_NUM_COLS
54 } PseudoCol;
56 struct _HklGuiEngine {
57 GObject parent_instance;
59 /*< private >*/
60 HklGuiEnginePrivate * priv;
63 struct _HklGuiEngineClass {
64 GObjectClass parent_class;
67 GType hkl_gui_engine_get_type (void) G_GNUC_CONST;
69 HklGuiEngine* hkl_gui_engine_new (HklEngine* engine);
71 void hkl_gui_engine_set_engine (HklGuiEngine *gui_engine,
72 HklEngine *engine);
74 HklEngine* hkl_gui_engine_get_engine (HklGuiEngine *gui_engine);
76 GtkListStore* hkl_gui_engine_get_liststore (HklGuiEngine *gui_engine);
78 GtkFrame *hkl_gui_engine_get_frame(HklGuiEngine *self);
80 void hkl_gui_engine_update (HklGuiEngine* self);
82 G_END_DECLS
84 #endif /* __HKL_GUI_ENGINE_H__ */