* add the MED2+2 geometry for the SOLEIL SIXS beamline
[hkl.git] / hkl / hkl-pseudoaxis-soleil-sixs-med.c
blob9bbbdd8218e2e485aaa645647acb5869de4103f7
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) 2011 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>
22 #include <hkl/hkl-pseudoaxis-soleil-sixs-med.h>
23 #include <hkl/hkl-pseudoaxis-common-hkl.h>
25 /**************************/
26 /* MED2+2 PseudoAxeEngine */
27 /**************************/
29 HklPseudoAxisEngine *hkl_pseudo_axis_engine_soleil_sixs_med_2_2_hkl_new(void)
31 HklPseudoAxisEngine *self;
32 HklPseudoAxisEngineMode *mode;
34 self = hkl_pseudo_axis_engine_hkl_new();
36 /* mu_fixed" */
37 mode = hkl_pseudo_axis_engine_mode_new(
38 "mu_fixed",
39 NULL,
40 hkl_pseudo_axis_engine_mode_get_hkl_real,
41 hkl_pseudo_axis_engine_mode_set_hkl_real,
42 1, RUBh_minus_Q_func,
43 (size_t)0,
44 (size_t)3, "omega", "gamma", "delta");
45 hkl_pseudo_axis_engine_add_mode(self, mode);
47 hkl_pseudo_axis_engine_select_mode(self, 0);
49 return self;