blob: b9982f7e91b837c96af6b0142b8f3728d3a60874 [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_DMA_h__
5#define __nFRC_2012_1_6_4_DMA_h__
6
7#include "tSystemInterface.h"
8
9namespace nFPGA
10{
11namespace nFRC_2012_1_6_4
12{
13
14class tDMA
15{
16public:
17 tDMA(){}
18 virtual ~tDMA(){}
19
20 virtual tSystemInterface* getSystemInterface() = 0;
21 static tDMA* create(tRioStatusCode *status);
22
23 typedef enum
24 {
25 kNumSystems = 1,
26 } tIfaceConstants;
27
28 typedef
29 union{
30 struct{
31 unsigned Pause : 1;
32 unsigned Enable_AI0_Low : 1;
33 unsigned Enable_AI0_High : 1;
34 unsigned Enable_AIAveraged0_Low : 1;
35 unsigned Enable_AIAveraged0_High : 1;
36 unsigned Enable_AI1_Low : 1;
37 unsigned Enable_AI1_High : 1;
38 unsigned Enable_AIAveraged1_Low : 1;
39 unsigned Enable_AIAveraged1_High : 1;
40 unsigned Enable_Accumulator0 : 1;
41 unsigned Enable_Accumulator1 : 1;
42 unsigned Enable_DI : 1;
43 unsigned Enable_AnalogTriggers : 1;
44 unsigned Enable_Counters_Low : 1;
45 unsigned Enable_Counters_High : 1;
46 unsigned Enable_CounterTimers_Low : 1;
47 unsigned Enable_CounterTimers_High : 1;
48 unsigned Enable_Encoders : 1;
49 unsigned Enable_EncoderTimers : 1;
50 unsigned ExternalClock : 1;
51 };
52 struct{
53 unsigned value : 20;
54 };
55 } tConfig;
56 typedef
57 union{
58 struct{
59 unsigned ExternalClockSource_Channel : 4;
60 unsigned ExternalClockSource_Module : 1;
61 unsigned ExternalClockSource_AnalogTrigger : 1;
62 unsigned RisingEdge : 1;
63 unsigned FallingEdge : 1;
64 };
65 struct{
66 unsigned value : 8;
67 };
68 } tExternalTriggers;
69
70
71
72 typedef enum
73 {
74 } tRate_IfaceConstants;
75
76 virtual void writeRate(unsigned int value, tRioStatusCode *status) = 0;
77 virtual unsigned int readRate(tRioStatusCode *status) = 0;
78
79
80 typedef enum
81 {
82 } tConfig_IfaceConstants;
83
84 virtual void writeConfig(tConfig value, tRioStatusCode *status) = 0;
85 virtual void writeConfig_Pause(bool value, tRioStatusCode *status) = 0;
86 virtual void writeConfig_Enable_AI0_Low(bool value, tRioStatusCode *status) = 0;
87 virtual void writeConfig_Enable_AI0_High(bool value, tRioStatusCode *status) = 0;
88 virtual void writeConfig_Enable_AIAveraged0_Low(bool value, tRioStatusCode *status) = 0;
89 virtual void writeConfig_Enable_AIAveraged0_High(bool value, tRioStatusCode *status) = 0;
90 virtual void writeConfig_Enable_AI1_Low(bool value, tRioStatusCode *status) = 0;
91 virtual void writeConfig_Enable_AI1_High(bool value, tRioStatusCode *status) = 0;
92 virtual void writeConfig_Enable_AIAveraged1_Low(bool value, tRioStatusCode *status) = 0;
93 virtual void writeConfig_Enable_AIAveraged1_High(bool value, tRioStatusCode *status) = 0;
94 virtual void writeConfig_Enable_Accumulator0(bool value, tRioStatusCode *status) = 0;
95 virtual void writeConfig_Enable_Accumulator1(bool value, tRioStatusCode *status) = 0;
96 virtual void writeConfig_Enable_DI(bool value, tRioStatusCode *status) = 0;
97 virtual void writeConfig_Enable_AnalogTriggers(bool value, tRioStatusCode *status) = 0;
98 virtual void writeConfig_Enable_Counters_Low(bool value, tRioStatusCode *status) = 0;
99 virtual void writeConfig_Enable_Counters_High(bool value, tRioStatusCode *status) = 0;
100 virtual void writeConfig_Enable_CounterTimers_Low(bool value, tRioStatusCode *status) = 0;
101 virtual void writeConfig_Enable_CounterTimers_High(bool value, tRioStatusCode *status) = 0;
102 virtual void writeConfig_Enable_Encoders(bool value, tRioStatusCode *status) = 0;
103 virtual void writeConfig_Enable_EncoderTimers(bool value, tRioStatusCode *status) = 0;
104 virtual void writeConfig_ExternalClock(bool value, tRioStatusCode *status) = 0;
105 virtual tConfig readConfig(tRioStatusCode *status) = 0;
106 virtual bool readConfig_Pause(tRioStatusCode *status) = 0;
107 virtual bool readConfig_Enable_AI0_Low(tRioStatusCode *status) = 0;
108 virtual bool readConfig_Enable_AI0_High(tRioStatusCode *status) = 0;
109 virtual bool readConfig_Enable_AIAveraged0_Low(tRioStatusCode *status) = 0;
110 virtual bool readConfig_Enable_AIAveraged0_High(tRioStatusCode *status) = 0;
111 virtual bool readConfig_Enable_AI1_Low(tRioStatusCode *status) = 0;
112 virtual bool readConfig_Enable_AI1_High(tRioStatusCode *status) = 0;
113 virtual bool readConfig_Enable_AIAveraged1_Low(tRioStatusCode *status) = 0;
114 virtual bool readConfig_Enable_AIAveraged1_High(tRioStatusCode *status) = 0;
115 virtual bool readConfig_Enable_Accumulator0(tRioStatusCode *status) = 0;
116 virtual bool readConfig_Enable_Accumulator1(tRioStatusCode *status) = 0;
117 virtual bool readConfig_Enable_DI(tRioStatusCode *status) = 0;
118 virtual bool readConfig_Enable_AnalogTriggers(tRioStatusCode *status) = 0;
119 virtual bool readConfig_Enable_Counters_Low(tRioStatusCode *status) = 0;
120 virtual bool readConfig_Enable_Counters_High(tRioStatusCode *status) = 0;
121 virtual bool readConfig_Enable_CounterTimers_Low(tRioStatusCode *status) = 0;
122 virtual bool readConfig_Enable_CounterTimers_High(tRioStatusCode *status) = 0;
123 virtual bool readConfig_Enable_Encoders(tRioStatusCode *status) = 0;
124 virtual bool readConfig_Enable_EncoderTimers(tRioStatusCode *status) = 0;
125 virtual bool readConfig_ExternalClock(tRioStatusCode *status) = 0;
126
127
128 typedef enum
129 {
130 kNumExternalTriggersElements = 4,
131 } tExternalTriggers_IfaceConstants;
132
133 virtual void writeExternalTriggers(unsigned char bitfield_index, tExternalTriggers value, tRioStatusCode *status) = 0;
134 virtual void writeExternalTriggers_ExternalClockSource_Channel(unsigned char bitfield_index, unsigned char value, tRioStatusCode *status) = 0;
135 virtual void writeExternalTriggers_ExternalClockSource_Module(unsigned char bitfield_index, unsigned char value, tRioStatusCode *status) = 0;
136 virtual void writeExternalTriggers_ExternalClockSource_AnalogTrigger(unsigned char bitfield_index, bool value, tRioStatusCode *status) = 0;
137 virtual void writeExternalTriggers_RisingEdge(unsigned char bitfield_index, bool value, tRioStatusCode *status) = 0;
138 virtual void writeExternalTriggers_FallingEdge(unsigned char bitfield_index, bool value, tRioStatusCode *status) = 0;
139 virtual tExternalTriggers readExternalTriggers(unsigned char bitfield_index, tRioStatusCode *status) = 0;
140 virtual unsigned char readExternalTriggers_ExternalClockSource_Channel(unsigned char bitfield_index, tRioStatusCode *status) = 0;
141 virtual unsigned char readExternalTriggers_ExternalClockSource_Module(unsigned char bitfield_index, tRioStatusCode *status) = 0;
142 virtual bool readExternalTriggers_ExternalClockSource_AnalogTrigger(unsigned char bitfield_index, tRioStatusCode *status) = 0;
143 virtual bool readExternalTriggers_RisingEdge(unsigned char bitfield_index, tRioStatusCode *status) = 0;
144 virtual bool readExternalTriggers_FallingEdge(unsigned char bitfield_index, tRioStatusCode *status) = 0;
145
146
147
148
149private:
150 tDMA(const tDMA&);
151 void operator=(const tDMA&);
152};
153
154}
155}
156
157#endif // __nFRC_2012_1_6_4_DMA_h__