* add the axis source test
[hkl.git] / src / eulerian4C_vertical_diffractometer.cpp
blob2fe13d28812fe056d5bef91b3ed50c9b7e02a26f
2 #include "eulerian4C_vertical_diffractometer.h"
4 namespace hkl
7 namespace eulerian4C
10 namespace vertical
13 Diffractometer::Diffractometer() :
14 hkl::DiffractometerTemp<hkl::eulerian4C::vertical::Geometry>("Eulerian 4C Generic Soleil",
15 "This diffractometer was design by Frédéric-emmanuel PICCA\n\
16 * modes: bissector, delta theta, constant omega, constant chi, constant phi.\n\
17 * pseudoAxes: Psi.")
19 // On met à jour la liste des modes utilisables.
20 _modes.add( new hkl::eulerian4C::vertical::mode::Bissector("Bissector", "Omega = 2theta / 2. \n there is no parameters for this mode.", *_geom_T) );
21 _modes.add( new hkl::eulerian4C::vertical::mode::Delta_Theta("Delta Theta", "Omega = theta + dtheta.", *_geom_T) );
22 _modes.add( new hkl::eulerian4C::vertical::mode::Constant_Omega("Constant Omega", "Omega = Constante.", *_geom_T) );
23 _modes.add( new hkl::eulerian4C::vertical::mode::Constant_Chi("Constant Chi", "chi = Constante.", *_geom_T) );
24 _modes.add( new hkl::eulerian4C::vertical::mode::Constant_Phi("Constant Phi", "phi = Constante.", *_geom_T) );
26 // On ajoute les pseudoAxes
27 _pseudoAxeEngines.push_back( new hkl::eulerian4C::vertical::pseudoAxeEngine::Th2th(*_geom_T) );
28 _pseudoAxeEngines.push_back( new hkl::eulerian4C::vertical::pseudoAxeEngine::Q2th(*_geom_T) );
29 _pseudoAxeEngines.push_back( new hkl::eulerian4C::vertical::pseudoAxeEngine::Q(*_geom_T) );
30 _pseudoAxeEngines.push_back( new hkl::eulerian4C::vertical::pseudoAxeEngine::Psi(*_geom_T, _samples) );
33 Diffractometer::~Diffractometer()
35 // On supprime les modes.
36 _modes.clear();
37 // On supprime les pseudoAxes.
38 _pseudoAxeEngines.clear();
42 } // namespace hkl::eulerian4C::vertical
44 } // namespace hkl::eulerian4C
46 } // namespace hkl