blob: 9748fe64286ee45711c4aef81e02e81b72fb1e4e [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_Encoder_h__
5#define __nFRC_2012_1_6_4_Encoder_h__
6
7#include "tSystemInterface.h"
8
9namespace nFPGA
10{
11namespace nFRC_2012_1_6_4
12{
13
14class tEncoder
15{
16public:
17 tEncoder(){}
18 virtual ~tEncoder(){}
19
20 virtual tSystemInterface* getSystemInterface() = 0;
21 static tEncoder* create(unsigned char sys_index, tRioStatusCode *status);
22 virtual unsigned char getSystemIndex() = 0;
23
24
25 typedef enum
26 {
27 kNumSystems = 4,
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 ASource_Channel : 4;
44 unsigned ASource_Module : 1;
45 unsigned ASource_AnalogTrigger : 1;
46 unsigned BSource_Channel : 4;
47 unsigned BSource_Module : 1;
48 unsigned BSource_AnalogTrigger : 1;
49 unsigned IndexSource_Channel : 4;
50 unsigned IndexSource_Module : 1;
51 unsigned IndexSource_AnalogTrigger : 1;
52 unsigned IndexActiveHigh : 1;
53 unsigned Reverse : 1;
54 unsigned Enable : 1;
55 };
56 struct{
57 unsigned value : 21;
58 };
59 } tConfig;
60 typedef
61 union{
62 struct{
63 unsigned Period : 23;
64 signed Count : 8;
65 unsigned Stalled : 1;
66 };
67 struct{
68 unsigned value : 32;
69 };
70 } tTimerOutput;
71 typedef
72 union{
73 struct{
74 unsigned StallPeriod : 24;
75 unsigned AverageSize : 7;
76 unsigned UpdateWhenEmpty : 1;
77 };
78 struct{
79 unsigned value : 32;
80 };
81 } tTimerConfig;
82
83
84 typedef enum
85 {
86 } tOutput_IfaceConstants;
87
88 virtual tOutput readOutput(tRioStatusCode *status) = 0;
89 virtual bool readOutput_Direction(tRioStatusCode *status) = 0;
90 virtual signed int readOutput_Value(tRioStatusCode *status) = 0;
91
92
93 typedef enum
94 {
95 } tConfig_IfaceConstants;
96
97 virtual void writeConfig(tConfig value, tRioStatusCode *status) = 0;
98 virtual void writeConfig_ASource_Channel(unsigned char value, tRioStatusCode *status) = 0;
99 virtual void writeConfig_ASource_Module(unsigned char value, tRioStatusCode *status) = 0;
100 virtual void writeConfig_ASource_AnalogTrigger(bool value, tRioStatusCode *status) = 0;
101 virtual void writeConfig_BSource_Channel(unsigned char value, tRioStatusCode *status) = 0;
102 virtual void writeConfig_BSource_Module(unsigned char value, tRioStatusCode *status) = 0;
103 virtual void writeConfig_BSource_AnalogTrigger(bool value, tRioStatusCode *status) = 0;
104 virtual void writeConfig_IndexSource_Channel(unsigned char value, tRioStatusCode *status) = 0;
105 virtual void writeConfig_IndexSource_Module(unsigned char value, tRioStatusCode *status) = 0;
106 virtual void writeConfig_IndexSource_AnalogTrigger(bool value, tRioStatusCode *status) = 0;
107 virtual void writeConfig_IndexActiveHigh(bool value, tRioStatusCode *status) = 0;
108 virtual void writeConfig_Reverse(bool value, tRioStatusCode *status) = 0;
109 virtual void writeConfig_Enable(bool value, tRioStatusCode *status) = 0;
110 virtual tConfig readConfig(tRioStatusCode *status) = 0;
111 virtual unsigned char readConfig_ASource_Channel(tRioStatusCode *status) = 0;
112 virtual unsigned char readConfig_ASource_Module(tRioStatusCode *status) = 0;
113 virtual bool readConfig_ASource_AnalogTrigger(tRioStatusCode *status) = 0;
114 virtual unsigned char readConfig_BSource_Channel(tRioStatusCode *status) = 0;
115 virtual unsigned char readConfig_BSource_Module(tRioStatusCode *status) = 0;
116 virtual bool readConfig_BSource_AnalogTrigger(tRioStatusCode *status) = 0;
117 virtual unsigned char readConfig_IndexSource_Channel(tRioStatusCode *status) = 0;
118 virtual unsigned char readConfig_IndexSource_Module(tRioStatusCode *status) = 0;
119 virtual bool readConfig_IndexSource_AnalogTrigger(tRioStatusCode *status) = 0;
120 virtual bool readConfig_IndexActiveHigh(tRioStatusCode *status) = 0;
121 virtual bool readConfig_Reverse(tRioStatusCode *status) = 0;
122 virtual bool readConfig_Enable(tRioStatusCode *status) = 0;
123
124
125 typedef enum
126 {
127 } tReset_IfaceConstants;
128
129 virtual void strobeReset(tRioStatusCode *status) = 0;
130
131
132 typedef enum
133 {
134 } tTimerOutput_IfaceConstants;
135
136 virtual tTimerOutput readTimerOutput(tRioStatusCode *status) = 0;
137 virtual unsigned int readTimerOutput_Period(tRioStatusCode *status) = 0;
138 virtual signed char readTimerOutput_Count(tRioStatusCode *status) = 0;
139 virtual bool readTimerOutput_Stalled(tRioStatusCode *status) = 0;
140
141
142 typedef enum
143 {
144 } tTimerConfig_IfaceConstants;
145
146 virtual void writeTimerConfig(tTimerConfig value, tRioStatusCode *status) = 0;
147 virtual void writeTimerConfig_StallPeriod(unsigned int value, tRioStatusCode *status) = 0;
148 virtual void writeTimerConfig_AverageSize(unsigned char value, tRioStatusCode *status) = 0;
149 virtual void writeTimerConfig_UpdateWhenEmpty(bool value, tRioStatusCode *status) = 0;
150 virtual tTimerConfig readTimerConfig(tRioStatusCode *status) = 0;
151 virtual unsigned int readTimerConfig_StallPeriod(tRioStatusCode *status) = 0;
152 virtual unsigned char readTimerConfig_AverageSize(tRioStatusCode *status) = 0;
153 virtual bool readTimerConfig_UpdateWhenEmpty(tRioStatusCode *status) = 0;
154
155
156
157
158
159private:
160 tEncoder(const tEncoder&);
161 void operator=(const tEncoder&);
162};
163
164}
165}
166
167#endif // __nFRC_2012_1_6_4_Encoder_h__