LIRC libraries
LinuxInfraredRemoteControl
 All Data Structures Files Functions Variables Typedefs Enumerations Macros Groups Pages
drv_admin.c File Reference

(ae09b60 2015-02-12 15:37:34 +0100)

Implements drv_admin.h. More...

#include <stdio.h>
#include <dirent.h>
#include <dlfcn.h>
#include "lirc/driver.h"
#include "lirc/drv_admin.h"
#include "lirc/lirc_options.h"
#include "lirc_log.h"
#include "driver.h"

Go to the source code of this file.

Macros

#define MAX_PLUGINS   256
 

Functions

struct driverfor_each_driver (drv_guest_func func, void *arg)
 
void for_each_plugin (plugin_guest_func plugin_guest, void *arg)
 
void hw_print_drivers (FILE *file)
 Prints all drivers known to the system to the file given as argument. More...
 
int hw_choose_driver (const char *name)
 

Variables

struct driver drv
 
const struct driver drv_null
 

Detailed Description

Implements drv_admin.h.

Author
Alec Leamas
Date
August 2014 license: GPL2 or later

Definition in file drv_admin.c.

Macro Definition Documentation

#define MAX_PLUGINS   256

Max number if plugins handled. No point to malloc() this.

Definition at line 29 of file drv_admin.c.

Function Documentation

struct driver* for_each_driver ( drv_guest_func  func,
void *  arg 
)

Apply func to all existing drivers. Returns pointer to a driver if such a pointer is returned by func(), else NULL.

Definition at line 213 of file drv_admin.c.

void for_each_plugin ( plugin_guest_func  plugin_guest,
void *  arg 
)

Apply func to all plugins (i. e., .so-files) in current plugin path.

Definition at line 219 of file drv_admin.c.

int hw_choose_driver ( const char *  name)

Search for driver with given name, update global drv with driver data if found.

Returns
Returns 0 if found and hw updated, else -1.

Definition at line 247 of file drv_admin.c.

void hw_print_drivers ( FILE *  file)

Prints all drivers known to the system to the file given as argument.

Parameters
fileFile to print to.

Definition at line 229 of file drv_admin.c.

Variable Documentation

struct driver drv

Access to otherwise private drv.

The global driver data that drivers etc are accessing. Set by hw_choose_driver().

Definition at line 20 of file driver.c.

const struct driver drv_null
Initial value:
= {
.name = "null",
.device = "/dev/null",
.features = 0,
.send_mode = 0,
.rec_mode = 0,
.code_length = 0,
.init_func = NULL,
.deinit_func = NULL,
.send_func = NULL,
.rec_func = NULL,
.decode_func = NULL,
.readdata = NULL,
.drvctl_func = default_drvctl,
.open_func = default_open,
.close_func = default_close,
.api_version = 2,
.driver_version = "0.9.2"
}
int default_close(void)
Definition: driver.c:43
int default_drvctl(unsigned int fd, void *arg)
Definition: driver.c:48
int default_open(const char *path)
Definition: driver.c:28

Default driver, a placeholder.

Definition at line 43 of file drv_admin.c.