blob: 84552e55faf2731778a0b0c04c99cffc43247641 [file] [log] [blame]
jerrymf1579332013-02-07 01:56:28 +00001// Copyright (c) National Instruments 2008. All Rights Reserved.
2// Do Not Edit... this file is generated!
3
4#ifndef __nFRC_2012_1_6_4_Counter_h__
5#define __nFRC_2012_1_6_4_Counter_h__
6
7#include "tSystemInterface.h"
8
9namespace nFPGA
10{
11namespace nFRC_2012_1_6_4
12{
13
14class tCounter
15{
16public:
17 tCounter(){}
18 virtual ~tCounter(){}
19
20 virtual tSystemInterface* getSystemInterface() = 0;
21 static tCounter* create(unsigned char sys_index, tRioStatusCode *status);
22 virtual unsigned char getSystemIndex() = 0;
23
24
25 typedef enum
26 {
27 kNumSystems = 8,
28 } tIfaceConstants;
29
30 typedef
31 union{
32 struct{
33 unsigned Direction : 1;
34 signed Value : 31;
35 };
36 struct{
37 unsigned value : 32;
38 };
39 } tOutput;
40 typedef
41 union{
42 struct{
43 unsigned UpSource_Channel : 4;
44 unsigned UpSource_Module : 1;
45 unsigned UpSource_AnalogTrigger : 1;
46 unsigned DownSource_Channel : 4;
47 unsigned DownSource_Module : 1;
48 unsigned DownSource_AnalogTrigger : 1;
49 unsigned IndexSource_Channel : 4;
50 unsigned IndexSource_Module : 1;
51 unsigned IndexSource_AnalogTrigger : 1;
52 unsigned IndexActiveHigh : 1;
53 unsigned UpRisingEdge : 1;
54 unsigned UpFallingEdge : 1;
55 unsigned DownRisingEdge : 1;
56 unsigned DownFallingEdge : 1;
57 unsigned Mode : 2;
58 unsigned PulseLengthThreshold : 6;
59 unsigned Enable : 1;
60 };
61 struct{
62 unsigned value : 32;
63 };
64 } tConfig;
65 typedef
66 union{
67 struct{
68 unsigned Period : 23;
69 signed Count : 8;
70 unsigned Stalled : 1;
71 };
72 struct{
73 unsigned value : 32;
74 };
75 } tTimerOutput;
76 typedef
77 union{
78 struct{
79 unsigned StallPeriod : 24;
80 unsigned AverageSize : 7;
81 unsigned UpdateWhenEmpty : 1;
82 };
83 struct{
84 unsigned value : 32;
85 };
86 } tTimerConfig;
87
88
89 typedef enum
90 {
91 } tOutput_IfaceConstants;
92
93 virtual tOutput readOutput(tRioStatusCode *status) = 0;
94 virtual bool readOutput_Direction(tRioStatusCode *status) = 0;
95 virtual signed int readOutput_Value(tRioStatusCode *status) = 0;
96
97
98 typedef enum
99 {
100 } tConfig_IfaceConstants;
101
102 virtual void writeConfig(tConfig value, tRioStatusCode *status) = 0;
103 virtual void writeConfig_UpSource_Channel(unsigned char value, tRioStatusCode *status) = 0;
104 virtual void writeConfig_UpSource_Module(unsigned char value, tRioStatusCode *status) = 0;
105 virtual void writeConfig_UpSource_AnalogTrigger(bool value, tRioStatusCode *status) = 0;
106 virtual void writeConfig_DownSource_Channel(unsigned char value, tRioStatusCode *status) = 0;
107 virtual void writeConfig_DownSource_Module(unsigned char value, tRioStatusCode *status) = 0;
108 virtual void writeConfig_DownSource_AnalogTrigger(bool value, tRioStatusCode *status) = 0;
109 virtual void writeConfig_IndexSource_Channel(unsigned char value, tRioStatusCode *status) = 0;
110 virtual void writeConfig_IndexSource_Module(unsigned char value, tRioStatusCode *status) = 0;
111 virtual void writeConfig_IndexSource_AnalogTrigger(bool value, tRioStatusCode *status) = 0;
112 virtual void writeConfig_IndexActiveHigh(bool value, tRioStatusCode *status) = 0;
113 virtual void writeConfig_UpRisingEdge(bool value, tRioStatusCode *status) = 0;
114 virtual void writeConfig_UpFallingEdge(bool value, tRioStatusCode *status) = 0;
115 virtual void writeConfig_DownRisingEdge(bool value, tRioStatusCode *status) = 0;
116 virtual void writeConfig_DownFallingEdge(bool value, tRioStatusCode *status) = 0;
117 virtual void writeConfig_Mode(unsigned char value, tRioStatusCode *status) = 0;
118 virtual void writeConfig_PulseLengthThreshold(unsigned short value, tRioStatusCode *status) = 0;
119 virtual void writeConfig_Enable(bool value, tRioStatusCode *status) = 0;
120 virtual tConfig readConfig(tRioStatusCode *status) = 0;
121 virtual unsigned char readConfig_UpSource_Channel(tRioStatusCode *status) = 0;
122 virtual unsigned char readConfig_UpSource_Module(tRioStatusCode *status) = 0;
123 virtual bool readConfig_UpSource_AnalogTrigger(tRioStatusCode *status) = 0;
124 virtual unsigned char readConfig_DownSource_Channel(tRioStatusCode *status) = 0;
125 virtual unsigned char readConfig_DownSource_Module(tRioStatusCode *status) = 0;
126 virtual bool readConfig_DownSource_AnalogTrigger(tRioStatusCode *status) = 0;
127 virtual unsigned char readConfig_IndexSource_Channel(tRioStatusCode *status) = 0;
128 virtual unsigned char readConfig_IndexSource_Module(tRioStatusCode *status) = 0;
129 virtual bool readConfig_IndexSource_AnalogTrigger(tRioStatusCode *status) = 0;
130 virtual bool readConfig_IndexActiveHigh(tRioStatusCode *status) = 0;
131 virtual bool readConfig_UpRisingEdge(tRioStatusCode *status) = 0;
132 virtual bool readConfig_UpFallingEdge(tRioStatusCode *status) = 0;
133 virtual bool readConfig_DownRisingEdge(tRioStatusCode *status) = 0;
134 virtual bool readConfig_DownFallingEdge(tRioStatusCode *status) = 0;
135 virtual unsigned char readConfig_Mode(tRioStatusCode *status) = 0;
136 virtual unsigned short readConfig_PulseLengthThreshold(tRioStatusCode *status) = 0;
137 virtual bool readConfig_Enable(tRioStatusCode *status) = 0;
138
139
140 typedef enum
141 {
142 } tReset_IfaceConstants;
143
144 virtual void strobeReset(tRioStatusCode *status) = 0;
145
146
147 typedef enum
148 {
149 } tTimerOutput_IfaceConstants;
150
151 virtual tTimerOutput readTimerOutput(tRioStatusCode *status) = 0;
152 virtual unsigned int readTimerOutput_Period(tRioStatusCode *status) = 0;
153 virtual signed char readTimerOutput_Count(tRioStatusCode *status) = 0;
154 virtual bool readTimerOutput_Stalled(tRioStatusCode *status) = 0;
155
156
157 typedef enum
158 {
159 } tTimerConfig_IfaceConstants;
160
161 virtual void writeTimerConfig(tTimerConfig value, tRioStatusCode *status) = 0;
162 virtual void writeTimerConfig_StallPeriod(unsigned int value, tRioStatusCode *status) = 0;
163 virtual void writeTimerConfig_AverageSize(unsigned char value, tRioStatusCode *status) = 0;
164 virtual void writeTimerConfig_UpdateWhenEmpty(bool value, tRioStatusCode *status) = 0;
165 virtual tTimerConfig readTimerConfig(tRioStatusCode *status) = 0;
166 virtual unsigned int readTimerConfig_StallPeriod(tRioStatusCode *status) = 0;
167 virtual unsigned char readTimerConfig_AverageSize(tRioStatusCode *status) = 0;
168 virtual bool readTimerConfig_UpdateWhenEmpty(tRioStatusCode *status) = 0;
169
170
171
172
173
174private:
175 tCounter(const tCounter&);
176 void operator=(const tCounter&);
177};
178
179}
180}
181
182#endif // __nFRC_2012_1_6_4_Counter_h__