L4Re – L4 Runtime Environment
|
C++ L4 Vcon interface. More...
Public Member Functions | |
l4_msgtag_t | send (char const *buf, unsigned size, l4_utcb_t *utcb=l4_utcb()) const noexcept |
Send data to this virtual console. More... | |
long | write (char const *buf, unsigned size, l4_utcb_t *utcb=l4_utcb()) const noexcept |
Write data to this virtual console. More... | |
int | read (char *buf, unsigned size, l4_utcb_t *utcb=l4_utcb()) const noexcept |
Read data from this virtual console. More... | |
int | read_with_flags (char *buf, unsigned size, l4_utcb_t *utcb=l4_utcb()) const noexcept |
Read data from this virtual console which also returns flags. More... | |
l4_msgtag_t | set_attr (l4_vcon_attr_t const *attr, l4_utcb_t *utcb=l4_utcb()) const noexcept |
Set the attributes of this virtual console. More... | |
l4_msgtag_t | get_attr (l4_vcon_attr_t *attr, l4_utcb_t *utcb=l4_utcb()) const noexcept |
Get attributes of this virtual console. More... | |
![]() | |
l4_msgtag_t | bind (unsigned irqnum, L4::Cap< Triggerable > irq, l4_utcb_t *utcb=l4_utcb()) noexcept |
Bind an interrupt line of an interrupt controller to an interrupt object. More... | |
l4_msgtag_t | unbind (unsigned irqnum, L4::Cap< Triggerable > irq, l4_utcb_t *utcb=l4_utcb()) noexcept |
Remove binding of an interrupt line from the interrupt controller object. More... | |
l4_msgtag_t | info (l4_icu_info_t *info, l4_utcb_t *utcb=l4_utcb()) noexcept |
Get information about the capabilities of the ICU. More... | |
l4_msgtag_t | msi_info (l4_umword_t irqnum, l4_uint64_t source, l4_icu_msi_info_t *msi_info) |
Get MSI info about IRQ. More... | |
l4_msgtag_t | mask (unsigned irqnum, l4_umword_t *label=0, l4_timeout_t to=L4_IPC_NEVER, l4_utcb_t *utcb=l4_utcb()) noexcept |
Mask an IRQ line. More... | |
l4_msgtag_t | set_mode (unsigned irqnum, l4_umword_t mode, l4_utcb_t *utcb=l4_utcb()) noexcept |
Set interrupt mode. More... | |
![]() | |
l4_msgtag_t | unmask (unsigned irqnum, l4_umword_t *label=0, l4_timeout_t to=L4_IPC_NEVER, l4_utcb_t *utcb=l4_utcb()) noexcept |
Acknowledge the given interrupt line. More... | |
Additional Inherited Members | |
![]() | |
typedef Vcon | Class |
The target interface type (inheriting from Kobject_t) | |
typedef Typeid::Iface< PROTO, Vcon > | __Iface |
The interface description for the derived class. | |
typedef Typeid::Merge_list< Typeid::Iface_list< __Iface >, typename Base::__Iface_list > | __Iface_list |
The list of all RPC interfaces provided directly or through inheritance. | |
![]() | |
typedef Icu | Class |
The target interface type (inheriting from Kobject_t) | |
typedef Typeid::Iface< PROTO, Icu > | __Iface |
The interface description for the derived class. | |
typedef Typeid::Merge_list< Typeid::Iface_list< __Iface >, typename Base::__Iface_list > | __Iface_list |
The list of all RPC interfaces provided directly or through inheritance. | |
![]() | |
L4::Cap< Class > | c () const noexcept |
Get the capability to ourselves. | |
![]() | |
L4::Cap< Class > | c () const noexcept |
Get the capability to ourselves. | |
![]() | |
static void | __check_protocols__ () noexcept |
Helper to check for protocol conflicts. | |
![]() | |
static void | __check_protocols__ () noexcept |
Helper to check for protocol conflicts. | |
L4::Vcon is a virtual console for simple character-based input and output. The interrupt for read events is provided by the virtual key interrupt.
See the Virtual Console for the C interface.
|
inlinenoexcept |
Get attributes of this
virtual console.
[out] | attr | Attribute structure. Contains the attributes after a successful call of this function. |
utcb | UTCB pointer of the calling thread. |
Definition at line 145 of file vcon.
References L4::Kobject::cap(), and l4_vcon_get_attr_u().
Read data from this
virtual console.
[out] | buf | Pointer to data buffer. |
size | Size of the data buffer in bytes. | |
utcb | UTCB pointer of the calling thread. |
<0 | Error code. |
>size | More bytes to read, size bytes are in the buffer buf . |
<=size | Number of bytes read. |
Definition at line 94 of file vcon.
References L4::Kobject::cap(), and l4_vcon_read_u().
|
inlinenoexcept |
Read data from this
virtual console which also returns flags.
[out] | buf | Pointer to data buffer. |
size | Size of the data buffer in bytes. | |
utcb | UTCB pointer of the calling thread. |
<0 | Error code. |
>size | More bytes to read, size bytes are in the buffer buf . |
<=size | Number of bytes read. |
If this function returns a positive value the caller can check the L4_VCON_READ_STAT_BREAK flag bit for a break condition. The bytes read can be obtained by masking the return value with L4_VCON_READ_SIZE_MASK.
If a break condition is signaled, it is always the first event in the transmitted content, i.e. all characters supplied by this read call follow the break condition.
|
inlinenoexcept |
Send data to this
virtual console.
buf | Pointer to the data buffer. |
size | Size of the data buffer in bytes. |
utcb | UTBC pointer of the calling thread. |
size
parameter is NOT checked. Also, this function is a send only operation, this means there is no return value except for a failed send operation. Use l4_ipc_error() to check for send errors, do not use l4_error(), as l4_error() will always return an error. Definition at line 63 of file vcon.
References L4::Kobject::cap(), and l4_vcon_send_u().
|
inlinenoexcept |
Set the attributes of this
virtual console.
attr | Attribute structure with the attributes for the virtual console. |
utcb | UTCB pointer of the calling thread. |
Definition at line 132 of file vcon.
References L4::Kobject::cap(), and l4_vcon_set_attr_u().
|
inlinenoexcept |
Write data to this
virtual console.
buf | Pointer to the data buffer. |
size | Size of the data buffer in bytes. |
utcb | UTCB pointer of the calling thread. |
<0 | Error. |
>=0 | Number of bytes written to the virtual console. |
Definition at line 77 of file vcon.
References L4::Kobject::cap(), and l4_vcon_write_u().