#include <l4_types.h>
Public Types | |
enum | { Send_error = 0x10, Enot_existent = 0x10, Retimeout = 0x20, Setimeout = 0x30, Recanceled = 0x40, Secanceled = 0x50, Remapfailed = 0x60, Semapfailed = 0x70, Resndpfto = 0x80, Sesndpfto = 0x90, Rercvpfto = 0xA0, Sercvpfto = 0xB0, Reaborted = 0xC0, Seaborted = 0xD0, Remsgcut = 0xE0, Semsgcut = 0xF0 } |
Constants an bit masks for error codes. More... | |
Public Member Functions | |
L4_msgdope (Mword raw=0) | |
Create a message dope from the binary representation. | |
L4_msgdope (Mword mwords, Mword strings) | |
Create the specified message dope. | |
L4_msgdope (Ipc_err e) | |
Type conversion constructor Constructs an L4_msgdope from an error code. | |
Mword | raw () const |
Get the binary representation of this message dope. | |
Mword | raw_dope () const |
Get the binary representation with the error bits masked out. | |
Mword | deceited () const |
Message was deceited? | |
Mword | fpage_received () const |
Flexpage received? | |
void | fpage_received (Mword f) |
Set/Clear the flex page received bit. | |
Mword | redirected () const |
Message redirected? | |
Mword | src_inside () const |
Source inside? | |
Mword | snd_error () const |
Was there a send error? | |
Mword | error () const |
Get the error code. | |
void | error (Mword error) |
Set the error code. | |
Mword | has_error () const |
Was there an error? | |
const char * | str_error () const |
Return short word explaining the error. | |
Mword | strings () const |
Get the number of indirect strings. | |
void | strings (Mword s) |
Set the number of indirect strings. | |
Mword | mwords () const |
Get the number of transfered message words. | |
void | mwords (Mword w) |
Set the number of transfered message words. | |
Mword | rcv_map_failed () const |
Error == Receive map failed? | |
Mword | snd_map_failed () const |
Error == Send map failed? | |
void | combine (L4_msgdope other) |
Combine two message dopes. | |
void | combine (Ipc_err e) |
Combine a message dope with an IPC error code. | |
Private Types | |
enum | { Deceite_bit = 0, Fpage_bit = 1, Redirected_bit = 2, Src_inside_bit = 3, Snd_error_bit = 4, Error_code_shift = 5, Error_code_mask = 0x7L << Error_code_shift, Error_code_size = 3, Error_shift = 4, Error_mask = 0xfL << Error_shift, Error_size = 4, Strings_shift = Error_code_shift + Error_code_size, Strings_mask = 0x1fL << Strings_shift, Strings_size = 5, Mwords_shift = Strings_shift + Strings_size, Mwords_mask = 0x7ffffL << Mwords_shift, Mwords_size = 19, Dope_mask = Strings_mask | Mwords_mask } |
Private Attributes | |
Mword | _raw |
A value of this type is returned as result code for any IPC operation.
|
Constants an bit masks for error codes.
|
|
|
|
Create a message dope from the binary representation.
|
|
Create the specified message dope.
|
|
Type conversion constructor Constructs an L4_msgdope from an error code.
|
|
Combine a message dope with an IPC error code.
|
|
Combine two message dopes. This method is for combining two message dopes, this means the binary representations of the dopes are or'd together.
|
|
Message was deceited?
|
|
Set the error code.
|
|
Get the error code.
|
|
Set/Clear the flex page received bit.
|
|
Flexpage received?
|
|
Was there an error?
|
|
Set the number of transfered message words.
|
|
Get the number of transfered message words.
|
|
Get the binary representation of this message dope.
|
|
Get the binary representation with the error bits masked out.
|
|
Error == Receive map failed?
|
|
Message redirected?
|
|
Was there a send error?
|
|
Error == Send map failed?
|
|
Source inside?
|
|
Return short word explaining the error.
|
|
Set the number of indirect strings.
|
|
Get the number of indirect strings.
|
|
|