42 typedef Icu_cap_array_svr<SVR> Icu_svr;
46 typename Icu_svr::Irq _irq;
52 L4_RPC_LEGACY_USING(Icu_svr);
57 static_cast<SVR*
>(
this)->reset_event_buffer();
62 long op_get_num_streams(L4Re::Event::Rights)
63 {
return static_cast<SVR*
>(
this)->get_num_streams(); }
65 long op_get_stream_info(L4Re::Event::Rights,
int idx, Event_stream_info &info)
66 {
return static_cast<SVR*
>(
this)->get_stream_info(idx, &info); }
68 long op_get_stream_info_for_id(L4Re::Event::Rights,
l4_umword_t id,
69 Event_stream_info &info)
70 {
return static_cast<SVR*
>(
this)->get_stream_info_for_id(
id, &info); }
72 long op_get_axis_info(L4Re::Event::Rights,
l4_umword_t id,
76 unsigned naxes = cxx::min<unsigned>(L4RE_ABS_MAX, axes.
length);
80 Event_absinfo _info[L4RE_ABS_MAX];
81 int r =
static_cast<SVR*
>(
this)->get_axis_info(
id, naxes, axes.
data, _info);
85 for (
unsigned i = 0; i < naxes; ++i)
86 info.data[i] = _info[i];
92 long op_get_stream_state_for_id(L4Re::Event::Rights,
l4_umword_t stream_id,
93 Event_stream_state &state)
94 {
return static_cast<SVR*
>(
this)->get_stream_state_for_id(stream_id, &state); }
96 int get_num_streams()
const {
return 0; }
97 int get_stream_info(
int, L4Re::Event_stream_info *)
99 int get_stream_info_for_id(
l4_umword_t, L4Re::Event_stream_info *)
101 int get_axis_info(
l4_umword_t,
unsigned ,
unsigned const * ,
102 L4Re::Event_absinfo *)
104 int get_stream_state_for_id(
l4_umword_t, L4Re::Event_stream_state *)
@ L4_CAP_FPAGE_RW
Read and interface specific 'W' right for capability flex-pages.