moberg_driver.h 822 Bytes
Newer Older
1
2
3
4
5
#ifndef __MOBERG_DRIVER_H__
#define __MOBERG_DRIVER_H__

#include <moberg_config_parser.h>

6
struct moberg_driver_device;
7
8
9
10

struct moberg_driver_map {
};

11
typedef struct moberg_driver_device *(*moberg_driver_parse_config_t)(
12
13
14
15
16
17
18
19
20
21
22
23
24
25
  struct moberg_config_parser_context *context);

typedef struct moberg_driver_map (*moberg_driver_parse_map_t)(
  struct moberg_config_parser_context *context,
  enum moberg_config_parser_token_kind kind);

struct moberg_driver {
  void *handle;
  struct moberg_driver_module {
    moberg_driver_parse_config_t parse_config;
    moberg_driver_parse_map_t parse_map;
  } module;
};

26
27
28
struct moberg_driver *moberg_driver_open(struct moberg_config_parser_ident id);

void moberg_driver_close(struct moberg_driver *driver);
29

30
void moberg_driver_device_free(struct moberg_driver_device *device);
31
32
33


#endif