Main Page | Modules | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

Ipc_err Class Reference

L4 IPC error code. More...

#include <l4_types.h>

List of all members.

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 and bit masks for error codes. More...

Public Member Functions

 Ipc_err (Mword raw=0)
 Create a error code from the binary representation.
Mword raw () const
 Get the binary representation.
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 rcv_map_failed () const
 Error == Receive map failed?
Mword snd_map_failed () const
 Error == Send map failed?
void combine (Ipc_err other)
 Combine two error codes.

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, Cc_mask = 0xFF
}

Private Attributes

Mword _raw


Detailed Description

L4 IPC error code.


Member Enumeration Documentation

anonymous enum
 

Constants and bit masks for error codes.

Enumeration values:
Send_error  If this bit is set an error occurred in the send phase.
Enot_existent  Receiver does not exist.
Retimeout  Receive timeout.
Setimeout  Send timeout.
Recanceled  Receive canceled.
Secanceled  Send canceled.
Remapfailed  Receive mapping failed.
Semapfailed  Send mapping failed.
Resndpfto  Receive snd-page-fault timeout.
Sesndpfto  Send snd-page-fault timeout.
Rercvpfto  Receive receive-page-fault timeout.
Sercvpfto  Send receive-page-fault timeout.
Reaborted  Receive aborted.
Seaborted  Send aborted.
Remsgcut  Receive message cut.
Semsgcut  Send message cut.

anonymous enum [private]
 

Enumeration values:
Deceite_bit 
Fpage_bit 
Redirected_bit 
Src_inside_bit 
Snd_error_bit 
Error_code_shift 
Error_code_mask 
Error_code_size 
Error_shift 
Error_mask 
Error_size 
Cc_mask 


Constructor & Destructor Documentation

Ipc_err::Ipc_err Mword  raw = 0  )  [inline]
 

Create a error code from the binary representation.

Parameters:
raw the binary representation of the error code.


Member Function Documentation

void Ipc_err::combine Ipc_err  other  )  [inline]
 

Combine two error codes.

This method is for combining two error codes, this means the binary representations of the codes are or'd together.

Parameters:
other the other error code to combine.

Mword Ipc_err::deceited  )  const [inline]
 

Message was deceited?

Returns:
true if the message was deceited (the deceite bit is set).

void Ipc_err::error Mword  error  )  [inline]
 

Set the error code.

Parameters:
error the error code to be set (see Error Codes).
See also:
error_code()

Mword Ipc_err::error  )  const [inline]
 

Get the error code.

Returns:
The error code (see Error Codes).

void Ipc_err::fpage_received Mword  f  )  [inline]
 

Set/Clear the flex page received bit.

Parameters:
f if true the bit is set or cleared else.

Mword Ipc_err::fpage_received  )  const [inline]
 

Flexpage received?

Returns:
true if a flex page was received.

Mword Ipc_err::has_error  )  const [inline]
 

Was there an error?

Returns:
true if there was any error.

Mword Ipc_err::raw  )  const [inline]
 

Get the binary representation.

Returns:
The binary form of this error code.

Mword Ipc_err::rcv_map_failed  )  const [inline]
 

Error == Receive map failed?

Returns:
true if error is receive map failed.
See also:
Error Codes

Mword Ipc_err::redirected  )  const [inline]
 

Message redirected?

Returns:
The state of the redirect bit.

Mword Ipc_err::snd_error  )  const [inline]
 

Was there a send error?

Returns:
true if there was a send error.

Mword Ipc_err::snd_map_failed  )  const [inline]
 

Error == Send map failed?

Returns:
true if error is send map failed.
See also:
Error Codes

Mword Ipc_err::src_inside  )  const [inline]
 

Source inside?

Returns:
The state of the source-inside bit.

char const * Ipc_err::str_error  )  const
 

Return short word explaining the error.

Returns:
pointer to static string


Member Data Documentation

Mword Ipc_err::_raw [private]
 


The documentation for this class was generated from the following files:
Generated on Mon Sep 26 14:20:14 2005 for Fiasco by  doxygen 1.4.2