versadac  1
versadac - Scalable Recorder Firmware
mc_dataReadDouble.h
1 /*******************************************************************************
2 FILE : mc_dataReadDouble.h
3 VERSION : $Id: mc_dataReadDouble.h 4938 2006-10-10 14:20:18Z martinto $
4 SYSTEM : __GNUC__ on vxworks
5 DESCRIPTION : Master comms dataRead class
6 *******************************************************************************/
7 
8 #ifndef __MC_DATAREADDOUBLE_H
9 #define __MC_DATAREADDOUBLE_H
10 #include "mc_dataRead.h"
11 #include "ENUM_MCScalingTypes.h"
12 #include "ENUM_MCDataTypes.h"
13 #include "ENUM_MCUpdateIntervals.h"
14 
16 {
17  protected:
19  ENUM_MCFunctionCodes z_function,
20  uint16 z_baseRegister,
21  ENUM_MCDataTypes z_dataType,
22  ENUM_MCScalingTypes z_scalingType,
23  double z_scaleLow,
24  double z_scaleHigh,
25  uint8 z_decPointPos,
26  uint8 z_bitNumber
27  );
28  public:
29 
30  virtual ~mc_dataReadDouble();
31 
32  static mc_dataReadDouble* newTransaction(
33  uint8 z_deviceNo,
34  ENUM_MCUpdateIntervals z_frequency,
35  ENUM_MCFunctionCodes z_function,
36  uint16 z_baseRegister,
37  ENUM_MCDataTypes z_dataType,
38  ENUM_MCScalingTypes z_scalingType,
39  double z_scaleLow,
40  double z_scaleHigh,
41  uint8 z_decPointPos,
42  uint8 z_bitNumber
43  );
44 
45  double readValue();
46 
47  virtual void printTo(FILE*);
48 
49  private:
50  static uint16 readNumberOfRegs(ENUM_MCDataTypes z_dataType);
51 
52  ENUM_MCDataTypes m_dataType;
53  ENUM_MCScalingTypes m_scalingType;
54  double m_scaleLow;
55  double m_scaleHigh;
56  uint8 m_decPointPos;
57  uint8 m_bitNumber;
58 
59 };
60 
61 #endif
Definition: mc_dataRead.h:13
Definition: mc_dataReadDouble.h:15