text: name = 'SINQ SXTAL test devices'
  description ='Devices for testing SXTAL code'
  
  includes = ['generic']
  
  sysconfig = dict(
      instrument = 'EULER',
  )
  
  devices = dict(
      mono = device('nicos.devices.generic.mono.Monochromator',
          description = 'Dummy monochromator',
          unit = 'A'
      ),
      monotas = device('nicos.devices.generic.mono.Monochromator',
          description = 'Dummy TAS monochromator',
          unit = 'meV'
      ),
      anatas = device('nicos.devices.generic.mono.Monochromator',
          description = 'Dummy TAS monochromator',
          unit = 'meV'
      ),
      om = device('nicos.devices.generic.VirtualMotor',
          description = 'Dummy sample rotation',
          unit = 'deg',
          abslimits = (-180, 180),
      ),
      stt = device('nicos.devices.generic.VirtualMotor',
          description = 'Dummy two theta/ gamma motor',
          unit = 'deg',
          abslimits = (-170, 170),
      ),
      chi = device('nicos.devices.generic.VirtualMotor',
          description = 'Dummy chi motor',
          unit = 'deg',
          abslimits = (0, 360),
      ),
      phi = device('nicos.devices.generic.VirtualMotor',
          description = 'Dummy phi motor',
          unit = 'deg',
          abslimits = (-360, 360),
      ),
      nu = device('nicos.devices.generic.VirtualMotor',
          description = 'Dummy detector tilt motor',
          unit = 'deg',
          abslimits = (-40, 40),
      ),
      sgu = device('nicos.devices.generic.VirtualMotor',
          description = 'Dummy upper sample table tilt motor',
          unit = 'deg',
          abslimits = (-20, 20),
      ),
      sgl = device('nicos.devices.generic.VirtualMotor',
          description = 'Dummy lower sample table tilt motor',
          unit = 'deg',
          abslimits = (-20, 20),
      ),
      mess = device('nicos_sinq.sxtal.reflist.ReflexList',
                    description='Reflection list for measurements',
                    reflection_list=[]),
      ublist = device('nicos_sinq.sxtal.reflist.ReflexList',
                       description='Reflection list for '
                                   'UB matrix refinement',
                      reflection_list=[]),
      Sample = device('nicos_sinq.sxtal.sample.SXTalSample',
                      description = 'SXTAL sample',
                      reflists = ['ublist', 'mess'],
                      reflist ='ublist',
                      a=3.0,
                      b=3.0,
                      c=3.0,
                      alpha=90.,
                      beta=90.,
                      gamma=90.),
      gausscount=device('nicos.devices.generic.VirtualGauss',
                        description='Virtual gauss peak generator',
                        motors=['stt', 'om', 'chi', 'phi'],
                        centers=[12.0, 3.0, 44.5, 122.33],
                        stddev='2.3',
                        rate=200),
      EULER = device('nicos_sinq.sxtal.instrument.EulerSXTal',
          description = 'instrument object',
          instrument = 'SINQ ORION',
          responsible = 'Oksana Zaharko <oksana.zaharko@psi.ch>',
          operators = ['Paul-Scherrer-Institut (PSI)'],
          facility = 'SINQ, PSI',
          website = 'https://www.psi.ch/sinq/orion/',
          ttheta = 'stt',
          omega = 'om',
          chi = 'chi',
          phi = 'phi',
          mono = 'mono',
          center_counter='gausscount',
          center_maxpts=40,
      ),
      NB = device('nicos_sinq.sxtal.instrument.LiftingSXTal',
          description = 'instrument object',
          instrument = 'SINQ ORION',
          responsible = 'Oksana Zaharko <oksana.zaharko@psi.ch>',
          operators = ['Paul-Scherrer-Institut (PSI)'],
          facility = 'SINQ, PSI',
          website = 'https://www.psi.ch/sinq/orion/',
          gamma = 'stt',
          omega = 'om',
          nu = 'nu',
          mono = 'mono',
          center_counter='gausscount'),
      TAS = device('nicos_sinq.sxtal.instrument.TASSXTal',
          description = 'instrument object',
          instrument = 'SINQ ORION',
          responsible = 'Oksana Zaharko <oksana.zaharko@psi.ch>',
          operators = ['Paul-Scherrer-Institut (PSI)'],
          facility = 'SINQ, PSI',
          website = 'https://www.psi.ch/sinq/orion/',
          a3 = 'om',
          a4 = 'stt',
          sgu = 'sgu',
          sgl = 'sgl',
          mono = 'monotas',
          ana = 'anatas',
          inelastic = True,
          out_of_plane = True,
          plane_normal = [0.015167, 0.005586, 0.999869],
          center_counter='gausscount'),
      timer=device('nicos.devices.generic.VirtualTimer',
                   visibility=(),
                   ),
      det=device('nicos.devices.generic.Detector',
                 description='Test detector',
                 timers=['timer'],
                 monitors=[],
                 counters=['gausscount'],
                 images=[],
                 maxage=3,
                 pollinterval=0.5,
                 ),
  )
  