initial commit
[ETG_Helmet] / SOFTWARE / UTILS / fast-gpio / include / fastgpio.h
1 #ifndef _FAST_GPIO_H_
2 #define _FAST_GPIO_H_
3
4 #include <module.h>
5 #include <string.h> 
6
7 //Define Macros in derived class. 
8 // #define REGISTER_BLOCK_ADDR                  0x18040000
9 // #define REGISTER_BLOCK_SIZE                  0x30
10
11 // #define REGISTER_OE_OFFSET                   0
12 // #define REGISTER_IN_OFFSET                   1
13 // #define REGISTER_OUT_OFFSET                  2
14 // #define REGISTER_SET_OFFSET                  3
15 // #define REGISTER_CLEAR_OFFSET                4
16
17 //Define DEVICE_TYPE Here for now. 
18
19 // #define DEVICE_TYPE                  "omega2"
20
21 class FastGpio : public Module {
22 public:
23         virtual int     SetDirection    (int pinNum, int bOutput)=0;
24         virtual int     GetDirection    (int pinNum, int &bOutput)=0;
25
26         virtual int     Set                     (int pinNum, int value)=0;
27         virtual int     Read                    (int pinNum, int &value)=0;
28         virtual unsigned long int       ReadFull        (int pinNum, int &value)=0;
29
30 private:
31         // private functions
32         int     pinNumber;
33 };
34
35
36 #endif  // _FAST_GPIO_H_
Contact me: dev (at) shalnoff (dot) com
PGP fingerprint: A6B8 3B23 6013 F18A 0C71 198B 83D8 C64D 917A 5717