My Project
 All Classes Files Functions Variables Enumerations Enumerator Friends Macros Pages
specificregs.h
1 #ifndef sptregs_h
2 #define sptregs_h
3 
4 #include "arraymap.h"
5 #include "genericregs.h"
6 
7 // Number of antenna pointing positions reported per archive frame
8 
9 static const unsigned int DATA_SAMPLES_PER_FRAME = 100; // Must be an integer multiple of POSITIONS_PER_FRAME
10 static const unsigned int POSITION_SAMPLES_PER_FRAME = 1;
11 static const unsigned int SERVO_POSITION_SAMPLES_PER_FRAME = 5;
12 static const unsigned int SERVO_NUMBER_MOTORS = 4;
13 static const unsigned int THERMAL_SAMPLES_PER_FRAME = 5;
14 static const unsigned int RECEIVER_SAMPLES_PER_FRAME = 100;
15 static const unsigned int RECEIVER_SAMPLES_PER_TRANSFER = 5;
16 static const unsigned int NUM_LABJACK_VOLTS = 12;
17 
18 static const unsigned int TOTAL_NUMBER_OF_CHANNELS = 128;
19 static const unsigned int CHANNELS_PER_ROACH = 64;
20 static const unsigned int NUM_RECEIVER_CHANNELS = 6;
21 static const unsigned int NUM_RECEIVER_AMPLIFIERS = 4;
22 static const unsigned int NUM_AMPLIFIER_STAGES = 1;
23 static const unsigned int NUM_RECEIVER_SWITCH_CHANNELS = 24;
24 static const unsigned int NUM_RECEIVER_DIAGNOSTICS = 4;
25 static const unsigned int NUM_TEMP_SENSORS = 8;
26 static const unsigned int NUM_DLP_TEMP_SENSORS = 8;
27 static const unsigned int NUM_POWER_OUTLETS = 8;
28 static const unsigned int NUM_ALPHA_CORRECTIONS = 4;
29 
30 
31 static const unsigned int MS_PER_DATA_SAMPLE = 1000 / DATA_SAMPLES_PER_FRAME;
32 static const unsigned int MS_PER_POSITION_SAMPLE = 1000 / POSITION_SAMPLES_PER_FRAME;
33 static const unsigned int MS_PER_SERVO_POSITION_SAMPLE = 1000 / SERVO_POSITION_SAMPLES_PER_FRAME;
34 static const unsigned int MS_PER_THERMAL_SAMPLE = 1000 / THERMAL_SAMPLES_PER_FRAME;
35 static const unsigned int MS_PER_RECEIVER_SAMPLE = 1000 / RECEIVER_SAMPLES_PER_FRAME;
36 
37 static const unsigned int NUM_BOLOMETERS = 961; // 960 bolometers plus calibrator phase
38 static const unsigned int NUM_SQUIDS = NUM_BOLOMETERS / 8;
39 static const unsigned int NUM_SQUID_CONTROLLERS = 18;
40 static const unsigned int NUM_BOLOMETERS_PER_BOARD = 16;
41 static const unsigned int NUM_BOARDS = 60;
42 
43 static const unsigned int NUM_POINTING_TELESCOPES = 3;
44 static const unsigned int NUM_POINTING_TELESCOPE_AD_VALUES = 8;
45 static const unsigned int NUM_POINTING_TELESCOPE_DIO_BITS = 24;
46 
47 static const unsigned int NUM_DEICING_AD_VALUES = 256;
48 static const unsigned int NUM_DEICING_DIO_BITS = 24;
49 
50 static const unsigned int NUM_OPTICAL_BENCH_ACTUATORS = 6;
51 
52 static const unsigned int NUM_STRUCTURE_TEMP_SENSORS = 60;
53 
54 static const unsigned int NUM_RAW_ENCODERS = 2;
55 static const unsigned int NUM_MOTOR_CURRENTS = 4;
56 static const unsigned int NUM_SUM_TACHS = 2;
57 static const unsigned int NUM_LINEAR_SENSORS = 4;
58 
59 // The length of the NULL-terminated string needed to store a
60 // bolo/squid string id
61 
62 static const unsigned int DIO_ID_LEN = 7;
63 
64 typedef RegMap SzaRegMap;
65 typedef ArrayMap SzaArrayMap;
66 
67 RegMap *new_ReceiverRegMap(void);
68 RegMap *new_SquidRegMap(void);
69 RegMap *new_ReceiverConfigRegMap(void);
70 RegMap *new_PointingTelRegMap(void);
71 RegMap *new_DeicingRegMap(void);
72 RegMap *new_HoloRegMap(void);
73 RegMap *new_SecondaryRegMap(void);
74 RegMap *new_FridgeRegMap(void);
75 RegMap *del_ReceiverRegMap(void);
76 
77 RegMap *new_SptArrRegMap(void);
78 RegMap *del_SptArrRegMap(SzaRegMap *regs);
79 long net_SptArrRegMap_size(void);
80 int net_put_SptArrRegMap(gcp::control::NetBuf *net);
81 
82 #endif
Definition: netbuf.h:42
Definition: arraymap.h:177