Low-Energy Muon (LEM) Experiment  0.5.2
mod_cryo_scfe.cxx File Reference
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include "midas.h"
#include "mfe.h"
#include "class/multi.h"
#include "LakeShore336.h"
#include "west6100.h"
#include "eurotherm2416.h"
#include "xtc.h"
#include "twickenham.h"
#include "tcpip_rs232.h"
Include dependency graph for mod_cryo_scfe.cxx:

Go to the source code of this file.

Macros

#define MOD_CF1_DEMAND   9
 
#define MOD_CF1_MEASURED   0
 
#define MOD_HE_SHIELD_DEMAND   17
 
#define MOD_HE_SHIELD_MEASURED   3
 

Functions

INT poll_event (INT source, INT count, BOOL test)
 
INT interrupt_configure (INT cmd, INT source, POINTER_T adr)
 
void mod_cryo_checks (HNDLE hDB, HNDLE hKey, void *dummy)
 
INT frontend_init ()
 
INT frontend_exit ()
 
INT frontend_loop ()
 
INT begin_of_run (INT run_number, char *error)
 
INT end_of_run (INT run_number, char *error)
 
INT pause_run (INT run_number, char *error)
 
INT resume_run (INT run_number, char *error)
 

Variables

const char * frontend_name = "ModCryo"
 The frontend name (client name) as seen by other MIDAS clients. More...
 
const char * frontend_file_name = __FILE__
 The frontend file name, don't change it. More...
 
BOOL frontend_call_loop = FALSE
 frontend_loop is called periodically if this variable is TRUE More...
 
INT display_period = 1000
 a frontend status page is displayed with this frequency in ms More...
 
INT max_event_size = 10000
 maximum event size produced by this frontend More...
 
INT max_event_size_frag = 5*1024*1024
 maximum event size for fragmented events (EQ_FRAGMENTED) More...
 
INT event_buffer_size = 10*10000
 buffer size to hold events More...
 
float * input
 
DEVICE_DRIVER mod_cryo_driver []
 device driver list More...
 
BOOL equipment_common_overwrite = FALSE
 
EQUIPMENT equipment []
 equipment structure for the mfe.c More...
 

Macro Definition Documentation

#define MOD_CF1_DEMAND   9

Definition at line 27 of file mod_cryo_scfe.cxx.

Referenced by mod_cryo_checks().

#define MOD_CF1_MEASURED   0

Definition at line 28 of file mod_cryo_scfe.cxx.

Referenced by mod_cryo_checks().

#define MOD_HE_SHIELD_DEMAND   17

Definition at line 29 of file mod_cryo_scfe.cxx.

Referenced by mod_cryo_checks().

#define MOD_HE_SHIELD_MEASURED   3

Definition at line 30 of file mod_cryo_scfe.cxx.

Referenced by mod_cryo_checks().

Function Documentation

INT begin_of_run ( INT  run_number,
char *  error 
)

Called by the mfe at the begin of the run. Here it is only a dummy.

Definition at line 250 of file mod_cryo_scfe.cxx.

INT end_of_run ( INT  run_number,
char *  error 
)

Called by the mfe at the end of the run. Here it is only a dummy.

Definition at line 260 of file mod_cryo_scfe.cxx.

INT frontend_exit ( )

Called by the mfe at exiting stage. Here it is only a dummy.

Definition at line 211 of file mod_cryo_scfe.cxx.

References hDB, hKey, and input.

INT frontend_init ( )

Called by the master frontend (mfe) at initializing stage. Here it is only a dummy.

Definition at line 166 of file mod_cryo_scfe.cxx.

References hDB, hKey, input, and mod_cryo_checks().

INT frontend_loop ( )

Called by the mfe in the main loop. Here it is only a dummy.

Definition at line 240 of file mod_cryo_scfe.cxx.

INT interrupt_configure ( INT  cmd,
INT  source,
POINTER_T  adr 
)

Definition at line 112 of file mod_cryo_scfe.cxx.

void mod_cryo_checks ( HNDLE  hDB,
HNDLE  hKey,
void *  dummy 
)
Parameters
hDBmain ODB handle
hKeyhandle to the DB50 sc_status
dummynot used

Definition at line 122 of file mod_cryo_scfe.cxx.

References input, MOD_CF1_DEMAND, MOD_CF1_MEASURED, MOD_HE_SHIELD_DEMAND, and MOD_HE_SHIELD_MEASURED.

Referenced by frontend_init().

INT pause_run ( INT  run_number,
char *  error 
)

Called by the mfe when the run is paused. Here it is only a dummy.

Definition at line 270 of file mod_cryo_scfe.cxx.

INT poll_event ( INT  source,
INT  count,
BOOL  test 
)

Definition at line 111 of file mod_cryo_scfe.cxx.

INT resume_run ( INT  run_number,
char *  error 
)

Called by the mfe when the run is resumed. Here it is only a dummy.

Definition at line 280 of file mod_cryo_scfe.cxx.

Variable Documentation

INT display_period = 1000

a frontend status page is displayed with this frequency in ms

Definition at line 43 of file mod_cryo_scfe.cxx.

EQUIPMENT equipment[]
Initial value:
= {
{ "ModCryo",
{71, 0,
"SYSTEM",
EQ_SLOW,
0,
"FIXED",
TRUE,
RO_RUNNING |
RO_TRANSITIONS,
30000,
0,
0,
1,
"", "", "",},
cd_multi_read,
cd_multi,
NULL,
},
{ "" }
}
DEVICE_DRIVER mod_cryo_driver[]
device driver list

equipment structure for the mfe.c

Definition at line 82 of file mod_cryo_scfe.cxx.

BOOL equipment_common_overwrite = FALSE

equipment_common_overwrite:

  • If that flag is TRUE, then the contents of the "equipment" structure is copied to the ODB on each start of the front-end.
  • If the flag is FALSE, then the ODB values are kept on the start of the front-end

Definition at line 79 of file mod_cryo_scfe.cxx.

INT event_buffer_size = 10*10000

buffer size to hold events

Definition at line 52 of file mod_cryo_scfe.cxx.

BOOL frontend_call_loop = FALSE

frontend_loop is called periodically if this variable is TRUE

Definition at line 40 of file mod_cryo_scfe.cxx.

const char* frontend_file_name = __FILE__

The frontend file name, don't change it.

Definition at line 37 of file mod_cryo_scfe.cxx.

const char* frontend_name = "ModCryo"

The frontend name (client name) as seen by other MIDAS clients.

Definition at line 35 of file mod_cryo_scfe.cxx.

float* input

Definition at line 54 of file mod_cryo_scfe.cxx.

Referenced by frontend_exit(), frontend_init(), and mod_cryo_checks().

INT max_event_size = 10000

maximum event size produced by this frontend

Definition at line 46 of file mod_cryo_scfe.cxx.

INT max_event_size_frag = 5*1024*1024

maximum event size for fragmented events (EQ_FRAGMENTED)

Definition at line 49 of file mod_cryo_scfe.cxx.

DEVICE_DRIVER mod_cryo_driver[]
Initial value:
= {
{ "Lake336_Moderator", ls336_in, 24, tcpip_rs232, DF_INPUT },
{ "Lake336_Moderator", ls336_out, 14, tcpip_rs232, DF_OUTPUT },
{ "Eurotherm2416_In", eurotherm2416_in, 8, tcpip_rs232, DF_INPUT },
{ "Eurotherm2416_Out", eurotherm2416_out, 7, tcpip_rs232, DF_OUTPUT },
{ "W6100_In", w6100_in, 6, tcpip_rs232, DF_INPUT },
{ "W6100_Out", w6100_out, 8, tcpip_rs232, DF_OUTPUT },
{ "XTC", xtc, 2, tcpip_rs232, DF_INPUT },
{ "LN2_Moddy", twickenham, 1, tcpip_rs232, DF_INPUT },
{ "" }
}
INT w6100_in(INT cmd,...)
INT xtc(INT cmd,...)
INT twickenham(INT cmd,...)
INT w6100_out(INT cmd,...)

device driver list

Definition at line 59 of file mod_cryo_scfe.cxx.