TEMU  3.0
The Terma Emulator
Gpio.h
Go to the documentation of this file.
1 //===------------------------------------------------------------*- C++ -*-===//
2 //
3 // TEMU: The Terma Emulator
4 // (c) Terma 2015, 2020
5 // Authors: Mattias Holm <maho (at) terma.com>
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef TEMU_BUS_GPIO_H
10 #define TEMU_BUS_GPIO_H
11 
12 #include "temu-c/Support/Objsys.h"
13 #include <stdint.h>
14 
15 #ifdef __cplusplus
16 extern "C" {
17 #endif
18 
19 /*
20  * These interfaces have been deprecated,
21  * new GPIO devices should use the SignalIface
22  */
23 
34 typedef struct temu_GpioBusIface {
41  void (*setGpioBits)(void *Obj, uint64_t Bits, uint64_t Mask);
42 
45  uint64_t (*getGpioBits)(void *Obj, uint64_t Mask);
47 #define TEMU_GPIO_BUS_IFACE_TYPE "GpioBusIface"
48 TEMU_IFACE_REFERENCE_TYPE(temu_GpioBus);
49 
61 typedef struct temu_GpioClientIface {
66  void (*gpioBitsChanged)(void *Obj, uint64_t Bits, uint64_t Mask);
68 #define TEMU_GPIO_CLIENT_IFACE_TYPE "GpioClientIface"
69 TEMU_IFACE_REFERENCE_TYPE(temu_GpioClient);
70 
71 
72 #ifdef __cplusplus
73 }
74 #endif
75 
76 #endif /* ! TEMU_BUS_GPIO_H */
TEMU_IFACE_REFERENCE_TYPE(temu_GpioBus)
uint64_t(* getGpioBits)(void *Obj, uint64_t Mask)
Definition: Gpio.h:45
struct temu_GpioBusIface temu_GpioBusIface
Definition: Gpio.h:61
struct temu_GpioClientIface temu_GpioClientIface
void(* setGpioBits)(void *Obj, uint64_t Bits, uint64_t Mask)
Definition: Gpio.h:41
Definition: Gpio.h:34
void(* gpioBitsChanged)(void *Obj, uint64_t Bits, uint64_t Mask)
Definition: Gpio.h:66