9#ifndef LIBEVDEVXX_PROPERTY_HPP
10#define LIBEVDEVXX_PROPERTY_HPP
19#include <libevdev/libevdev.h>
21#include "detail/NumberBase.hpp"
28 public detail::NumberBase<unsigned, Property> {
30 using Base = detail::NumberBase<unsigned, Property>;
45 if (val > INPUT_PROP_MAX)
46 throw std::invalid_argument{
"invalid property number"};
54 std::size_t* pos =
nullptr);
Definition: Property.hpp:28
static constexpr Property max() noexcept
Definition: Property.hpp:60
static const Property pointer
Definition: Property.hpp:66
static const Property button_pad
Definition: Property.hpp:68
static const Property semi_mt
Definition: Property.hpp:69
constexpr Property() noexcept=default
static const Property direct
Definition: Property.hpp:67
static const Property accelerometer
Definition: Property.hpp:72
static const Property top_button_pad
Definition: Property.hpp:70
static Property parse(std::string_view name, std::size_t *pos=nullptr)
static const Property pointing_stick
Definition: Property.hpp:71
The namespace of libevdevxx.
Definition: AbsInfo.hpp:20
std::string to_string(const AbsInfo &info)
std::ostream & operator<<(std::ostream &out, const AbsInfo &info)
std::istream & operator>>(std::istream &in, Property &prop)