template <typename BuilderImpl>

class WireTableBaseBuilder

Defined at line 266 of file fidling/gen/sdk/fidl/fuchsia.ui.input3/fuchsia.ui.input3/cpp/fidl/fuchsia.ui.input3/cpp/wire_types.h

Public Methods

::fuchsia_ui_input3::wire::KeyEvent Build ()

Build and return the table. The builder should not be used after this.

bool has_timestamp ()
void clear_timestamp ()

Clears the timestamp field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

int64_t & timestamp ()

Time in nanoseconds when the event was recorded, in the `CLOCK_MONOTONIC` time base.

The timestamp is **required** on every key event, and users can expect that it

will always be present.

BuilderImpl & timestamp (Wrapper_Ignore_Me_< ::fidl::ObjectView<int64_t>> elem)

Time in nanoseconds when the event was recorded, in the `CLOCK_MONOTONIC` time base.

The timestamp is **required** on every key event, and users can expect that it

will always be present.

bool has_type ()
void clear_type ()

Clears the type field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fuchsia_ui_input3::wire::KeyEventType & type ()

Type of event.

BuilderImpl & type (::fuchsia_ui_input3::wire::KeyEventType elem)

Type of event.

bool has_key ()
void clear_key ()

Clears the key field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fuchsia_input::wire::Key & key ()

Identifies the key ignoring modifiers, layout, prior key events, etc. This is called

the "physical key" on some platforms. In cases where the key event did not originate

from a physical keyboard (e.g. onscreen keyboard) this field may be empty.

BuilderImpl & key (::fuchsia_input::wire::Key elem)

Identifies the key ignoring modifiers, layout, prior key events, etc. This is called

the "physical key" on some platforms. In cases where the key event did not originate

from a physical keyboard (e.g. onscreen keyboard) this field may be empty.

bool has_modifiers ()
void clear_modifiers ()

Clears the modifiers field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fuchsia_ui_input3::wire::Modifiers & modifiers ()

Modifiers in effect at the time of the event.

Example:

CapsLock is off, user presses CapsLock, then A, then releases both.

Event sequence is as follows:

1. type: Pressed, key: CapsLock, modifiers: None

2. type: Pressed, key: A, modifiers: CapsLock

3. type: Released, key: CapsLock, modifiers: CapsLock

4. type: Released, key: A, modifiers: CapsLock

CapsLock is on, user presses CapsLock, then A, then releases both.

1. type: Pressed, key: CapsLock, modifiers: CapsLock

2. type: Pressed, key: A, modifiers: None

3. type: Released, key: CapsLock, modifiers: None

4. type: Released, key: A, modifiers: None

BuilderImpl & modifiers (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fuchsia_ui_input3::wire::Modifiers>> elem)

Modifiers in effect at the time of the event.

Example:

CapsLock is off, user presses CapsLock, then A, then releases both.

Event sequence is as follows:

1. type: Pressed, key: CapsLock, modifiers: None

2. type: Pressed, key: A, modifiers: CapsLock

3. type: Released, key: CapsLock, modifiers: CapsLock

4. type: Released, key: A, modifiers: CapsLock

CapsLock is on, user presses CapsLock, then A, then releases both.

1. type: Pressed, key: CapsLock, modifiers: CapsLock

2. type: Pressed, key: A, modifiers: None

3. type: Released, key: CapsLock, modifiers: None

4. type: Released, key: A, modifiers: None

bool has_key_meaning ()
void clear_key_meaning ()

Clears the key_meaning field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fuchsia_ui_input3::wire::KeyMeaning & key_meaning ()

Meaning of the key.

BuilderImpl & key_meaning (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fuchsia_ui_input3::wire::KeyMeaning>> elem)

Meaning of the key.

bool has_repeat_sequence ()
void clear_repeat_sequence ()

Clears the repeat_sequence field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

uint32_t & repeat_sequence ()

The sequence number of this `KeyEvent` in the sequence of autorepeated

keys.

Unset if this event has been generated in the immediate response to an

input from the keyboard driver. If the `KeyEvent` has been generated

through the autorepeat mechanism, this property is set and is

incremented by one for each successive generated key event.

BuilderImpl & repeat_sequence (uint32_t elem)

The sequence number of this `KeyEvent` in the sequence of autorepeated

keys.

Unset if this event has been generated in the immediate response to an

input from the keyboard driver. If the `KeyEvent` has been generated

through the autorepeat mechanism, this property is set and is

incremented by one for each successive generated key event.

bool has_lock_state ()
void clear_lock_state ()

Clears the lock_state field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fuchsia_ui_input3::wire::LockState & lock_state ()

The lock state in effect at the time of the event.

For example, if CapsLock effect is turned on (pressing 'a' results in

the effect 'A'), the corresponding bit in the lock state is set.

NOTE: `LockState` is different from whether the CapsLock modifier key

is actuated or not. `LockState.CAPS_LOCK` can be active even if the

Caps Lock key is not currently actuated.

BuilderImpl & lock_state (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fuchsia_ui_input3::wire::LockState>> elem)

The lock state in effect at the time of the event.

For example, if CapsLock effect is turned on (pressing 'a' results in

the effect 'A'), the corresponding bit in the lock state is set.

NOTE: `LockState` is different from whether the CapsLock modifier key

is actuated or not. `LockState.CAPS_LOCK` can be active even if the

Caps Lock key is not currently actuated.

bool has_device_id ()
void clear_device_id ()

Clears the device_id field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

uint32_t & device_id ()

Identifies the device originating this event.

BuilderImpl & device_id (uint32_t elem)

Identifies the device originating this event.

Protected Methods

void WireTableBaseBuilder< ::fuchsia_ui_input3::wire::KeyEvent, BuilderImpl> (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_ui_input3::wire::KeyEvent>> && frame)

Records