// Copyright 2014 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef DEVICE_UDEV_LINUX_UDEV_LOADER_H_ #define DEVICE_UDEV_LINUX_UDEV_LOADER_H_ #include <stdarg.h> #include <sys/types.h> #include <sys/stat.h> #include "base/component_export.h" #if !defined(USE_UDEV) #error "USE_UDEV not defined" #endif struct udev; struct udev_device; struct udev_enumerate; struct udev_list_entry; struct udev_monitor; namespace device { // Interface to libudev. Accessed through the static Get() function, which // will try to load libudev1. If the libraries does not load successfully, the // program will fail with a crash. // // All the methods have the same signatures as libudev's functions. e.g. // udev_monitor_get_fd(mon) simply becomes device::udev_monitor_get_fd(mon). class COMPONENT_EXPORT(DEVICE_UDEV_LINUX) UdevLoader { … }; } // namespace device #endif // DEVICE_UDEV_LINUX_UDEV_LOADER_H_