INOS
cinosposchannel.h
Go to the documentation of this file.
1//******************************************************************************
27//******************************************************************************
28
29#ifndef INC_CINOSPOSCHANNEL_H
30#define INC_CINOSPOSCHANNEL_H
31
32//------------------------------------------------------------------------------
33// defines
34//------------------------------------------------------------------------------
35//
36//
37//------------------------------------------------------------------------------
38// includes
39//------------------------------------------------------------------------------
40//
41// system
42//
43// C++
44//
45// project
46//
47//------------------------------------------------------------------------------
48// type definition
49//------------------------------------------------------------------------------
50//
51typedef int32 (*tpPosHook)(int32, intid);
52//
53//------------------------------------------------------------------------------
54// class definition
55//------------------------------------------------------------------------------
56//
57class CINOSBusJob;
59{
60 //--- user interface ---------------------------------------------------
61
62 // public member functions
63 public :
64 ICACHE virtual void Set(real64 arValue) override;
65 //; set channel to arValue
66 ICACHE virtual real64 Get() override;
67 //; get value of channel
68 ICACHE int32 GetPosition();
69 //; return actual position
70 #if defined(INOS_PROCESSIMAGE_OVERWRITE)
71 ICACHE void SetPosition(int32 aiValue, bool abOverwrite = true);
72 //; set channel to aiValue
73 //; (abOverwrite=true -> value always set, abOverwrite=false -> value
74 //; set if channel is NOT in overwrite mode)
75 #else
76 ICACHE void SetPosition(int32 aiValue);
77 //; set channel to aiValue
78 #endif
79 ICACHE int32 GetPositionDelta();
80 //; return delta to last GetPosition or last GetPositionDelta
81 ICACHE int32 GetRawOffset();
82 //; return raw position offset
83 ICACHE void SetRawOffset(int32 aiOffset);
84 //; set raw position offset
85 ICACHE int32 GetRawPosition(uint32 auStage=0);
86 //; return raw position before hook number 'auStage'
87 ICACHE real32 GetControl();
88 //; get channel control (100% = 28672, -100% = - 28672)
89 ICACHE virtual void SetControl(real64 arValue) override;
90 //; set channel control to afValue
91 ICACHE real32 GetSerror();
92 //; get channel S error [inc]
93 ICACHE void SetSerror(real32 arValue);
94 //; set channel S error to arValue
95 ICACHE void SetValue(real32 arValue);
96 //; set channel control to arValue * 2.8672 -> takes +-10000.0 mV
97 ICACHE bool GetSyncEnable();
98 //; return state of 'sync enable' output
99 ICACHE void SetSyncEnable(bool abValue);
100 //; set 'sync enable' output to abValue
101 ICACHE bool GetAxisEnable();
102 //; return 'axis enable' output
103 ICACHE void SetAxisEnable(bool abValue);
104 //; set 'axis enable' output to abValue
105 ICACHE bool GetSynced();
106 //; return state of 'synced' input
107 ICACHE bool GetZeroImpuls();
108 //; return state of 'zero impuls' input
109 ICACHE bool GetAxisEnabled();
110 //; return state of 'axis enabled' input
111 ICACHE bool GetInverted();
112 //; return true if the channel-direction is inverted
113 ICACHE void SetInverted(bool abValue);
114 //; set the channel-direction
115 ICACHE void SetCalibEnabled(bool abValue);
116 //; set channel calibration enabled flag
117 ICACHE bool GetCalibEnabled();
118 //; return true if the channel calibration enabled
119
120 void RegisterHook(tpPosHook apPosHook, int32 aiId, char* apUnit=0,
121 uint32 auCharacteristics=DF_INOS_IMAGE_CHN_DEF_CHAR,
122 int32 aiLower=DF_INOS_IMAGE_CHN_DEF_INT,
123 int32 aiUpper=DF_INOS_IMAGE_CHN_DEF_INT
124 );
125 //; register channel hook
126
127 //--- internals --------------------------------------------------------
128
129 // constructor / destructor
130 public:
131 //; object constructor
137
138 // protected members
139 protected:
140 int32 m_iOldPosition;
141 //; last got position (needed for GetPositionDelta)
142};
143
144//
145//------------------------------------------------------------------------------
146// global variables
147//------------------------------------------------------------------------------
148//
149//
150//------------------------------------------------------------------------------
151// end of file
152//------------------------------------------------------------------------------
153
154#endif // INC_CINOSPOSCHANNEL_H
Definition cinosmcmodule.h:1900
Definition cinosposchannel.h:59
void SetupChannel(uint16 auNumber, uint16 auArrayLength)
setup channel
void ConvertToReal(uint16 auNumber, uint16 auArrayLength)
convert to real channel
Definition cinosprocessimagevalue.h:52