conexus logo

Conexus Namespace Reference


Namespaces

namespace  exception
namespace  Gtk
namespace  IPv4
 The conexus::IPv4 namespace contains classes capable of communicating at OSI Layers 3 (Network) and 4 (Transport) which includes support for raw IP, TCP/IP and UDP/IP communications [ For more information see IP(7) ].
namespace  IPv6
 The conexus::IPv6 namespace contains classes capable of communicating at OSI Layers 3 (Network) and 4 (Transport) which includes support for raw IP, TCP/IP and UDP/IP communications [ For more information see IP(7) ].
namespace  LL
 The conexus::LL (Link Layer) namespace contains classes capable of communicating directly at the OSI Layer 2 and allows protocol modules to be implemented in user space directly on top of the physical layer [ For more information see PACKET(7) ].
namespace  Network
namespace  NSPR
namespace  NSS
namespace  SSL

Classes

class  Address
 This top level class provides a pure-virtual inheritance interface for children to inherit from. More...
class  Data
 This structure represents a data chunk. More...
struct  Timeout
class  Endpoint
 This class is the top level object for all subclasses performing I/O (Input/Output) operations. More...
class  EndpointServer
 The EndpointServer generates Endpoints as a result of operation. More...
class  conexus_exception
 Base class for all conexus library exceptions. More...
class  interface_index_exception
 Interface index error. More...
class  address_exception
 Base class for all address exceptions. More...
class  bind_exception
 Base class for all binding exceptions. More...
class  close_exception
 Base class for all close exceptions. More...
class  connect_exception
 Base class for all connect exceptions. More...
class  listen_exception
 Base class for all listen exceptions. More...
class  open_exception
 Base class for all open exceptions. More...
class  read_exception
 Base class for all receiving exceptions. More...
class  socket_exception
 Base class for all binding exceptions. More...
class  state_exception
 Base class for all state transition exceptions. More...
class  write_exception
 Base class for all write exceptions. More...
class  Factory
class  File
 This class encapsulates a file. More...
class  FileDescriptor
 This class is the top level object for all subclasses performing I/O (Input/Output) operations via file descriptors (which in Linux/Unix/POSIX can be used for almost all I/O). More...
class  IP
 This class serves as the base class for all IP communication classes. More...
class  IPAddressInterface
 IP network address interface. More...
class  MessageQueue
 This class encapsulates a POSIX message queue. More...
class  Object
 This class provides a common inheritance hierarchy for all conexus objects. More...
class  Pipe
 This class encapsulates a POSIX pipe. More...
class  Registry
 This class serves as a registy for named endpoints and endpoint servers. More...
class  Serial
 This class encapsulates a raw serial port. More...
class  SerialInterface
class  Server
class  Socket
 This class encapsulates Linux's BSD Socket API and serves as the base class for all objects performing socket I/O. More...
class  TimeVal
class  TTY
 This class extends Serial to include operations upon TTY (TeleTYpe) serial communications. More...
class  TTYInterface
class  nss_exception
 Base class for all nss exceptions. More...

Typedefs

typedef enum Conexus::DataMode DataMode
typedef enum Conexus::ReadWrite ReadWrite
typedef enum Conexus::EndpointState EndpointState
typedef enum Conexus::StartStop StartStop
typedef enum Conexus::SocketState SocketState
typedef enum Conexus::PipeMode PipeMode
typedef enum Conexus::FileMode FileMode
typedef enum Conexus::QueueMode QueueMode
typedef enum Conexus::TOS TOS
typedef enum Conexus::SetOption SetOption
typedef enum Conexus::Parity Parity
typedef enum Conexus::ParityError ParityError
typedef enum Conexus::FlowControl FlowControl
typedef enum Conexus::ExceptionType ExceptionType

Enumerations

enum  DataMode { COPY, MANAGED, UNMANAGED }
enum  ReadWrite {
  READ_WRITE_NONE = 0, READ = 1, WRITE = 2, READ_WRITE = 3,
  READ_WRITE_UNCHANGED = 4, READ_WRITE_LAST_STATE = READ_WRITE_UNCHANGED
}
enum  EndpointState {
  ENDPOINT_NOSTATE = 0, ENDPOINT_CLOSED = 1<<0, ENDPOINT_OPENED = 1<<1, ENDPOINT_LAST_STATE = ENDPOINT_OPENED,
  ENDPOINT_UNCHANGED = ~0
}
enum  StartStop { STOP = 0, START = 1 }
enum  SocketState {
  SOCKET_BOUND = ENDPOINT_LAST_STATE << 1, SOCKET_CONNECTED = ENDPOINT_LAST_STATE << 2, SOCKET_LISTENING = ENDPOINT_LAST_STATE << 3, SOCKET_ACCEPTED = ENDPOINT_LAST_STATE << 4,
  SOCKET_LAST_STATE = SOCKET_ACCEPTED
}
enum  PipeMode { PIPE_READ = ENDPOINT_LAST_STATE<<1, PIPE_WRITE = ENDPOINT_LAST_STATE<<2 }
enum  FileMode {
  FILE_READ = 1<<0, FILE_WRITE = 1<<1, FILE_APPEND = 1<<2, FILE_CREATE = 1<<3,
  FILE_DIRECT = 1<<4, FILE_LARGE_FILE = 1<<5, FILE_NO_ACCESS_TIME = 1<<6, FILE_NO_FOLLOW = 1<<7,
  FILE_TRUNCATE = 1<<8, FILE_EXCLUSIVE_CREATE = 1<<9, FILE_UNCHANGED = 1<<10, FILE_LAST_STATE = FILE_UNCHANGED
}
enum  QueueMode {
  QUEUE_READ = 1<<0, QUEUE_WRITE = 1<<1, QUEUE_CREATE = 1<<2, QUEUE_EXCLUSIVE_CREATE = 1<<3,
  QUEUE_NONBLOCKING = 1<<4, QUEUE_UNCHANGED = 1<<5
}
enum  TOS { TOS_LOWDELAY = IPTOS_LOWDELAY, TOS_THROUGHPUT = IPTOS_THROUGHPUT, TOS_RELIABILITY = IPTOS_RELIABILITY, TOS_LOWCOST = IPTOS_LOWCOST }
enum  SetOption { SET_NOW = TCSANOW, SET_FLUSH = TCSAFLUSH, SET_DRAIN = TCSADRAIN }
enum  Parity { PARITY_NONE, PARITY_ODD, PARITY_EVEN }
enum  ParityError { PARITY_ERROR_DISCARD, PARITY_ERROR_MARK, PARITY_ERROR_ZERO, PARITY_ERROR_IGNORE }
enum  FlowControl { FLOW_NONE, FLOW_HARDWARE, FLOW_SOFTWARE, FLOW_CUSTOM }
enum  ExceptionType {
  EXCEPTION_ADDRESS, EXCEPTION_OPEN, EXCEPTION_BIND, EXCEPTION_CLOSE,
  EXCEPTION_CONNECT, EXCEPTION_LISTEN, EXCEPTION_READ, EXCEPTION_SOCKET,
  EXCEPTION_STATE, EXCEPTION_WRITE
}

Functions

void throw_exception (int exception_num, ExceptionType type) throw ( conexus_exception )
void throw_open_exception (int exception_num) throw ( open_exception )
void throw_close_exception (int exception_num) throw ( close_exception )
void throw_read_exception (int exception_num) throw ( read_exception )
void throw_write_exception (int exception_num) throw ( write_exception )
void throw_bind_exception (int exception_num) throw ( bind_exception )
void throw_connect_exception (int exception_num) throw ( connect_exception )
void throw_listen_exception (int exception_num) throw ( listen_exception )
void throw_address_exception (int exception_num) throw ( address_exception )
void throw_socket_exception (int exception_num) throw ( socket_exception )
Factory::pointer __default_factory (Factory::create())
Registry::pointer __default_registry (Registry::create())
void init (bool use_dispatcher_default=false, bool init_dbus=true)
 The init method should be called before any conexus servers are started.
bool initialized ()
bool use_dispatcher_default ()
void set_use_dispatcher_default (bool use_dispatcher_default)
void set_default_multicast_hop_limit (unsigned hop_limit)
void enable_default_multicast_loopback (bool enable)
Factorydefault_factory ()
bool set_default_factory (Factory::pointer new_factory)
Registrydefault_registry ()
bool set_default_registry (Registry::pointer new_registry)
void throw_ssl_exception () throw ( SSL::exception )

Variables

bool __use_dispatcher_default = false
bool __initialized = false
Factory::pointer __default_factory
Registry::pointer __default_registry

Typedef Documentation

These enumerations are used in the socket class methods, and use is also encouraged in children.

typedef enum Conexus::FileMode Conexus::FileMode [related]

typedef enum Conexus::Parity Conexus::Parity [related]

typedef enum Conexus::PipeMode Conexus::PipeMode [related]

typedef enum Conexus::QueueMode Conexus::QueueMode [related]

typedef enum Conexus::SetOption Conexus::SetOption [related]

Aliases for the tty function options relating to when an option change takes effect.

These enumerations are used in the socket class methods, and use is also encouraged in children.

typedef enum Conexus::StartStop Conexus::StartStop [related]

Enumerates start/stop states

STOP was selected as 0, so that a variable of this enum can boolean test START as true and STOP as false.

typedef enum Conexus::TOS Conexus::TOS [related]


Enumeration Type Documentation

Enumerator:
COPY 
MANAGED 
UNMANAGED 

enum EndpointState [related, inherited]

These enumerations are used in the socket class methods, and use is also encouraged in children.

Enumerator:
ENDPOINT_NOSTATE 
ENDPOINT_CLOSED  The Endpoint object is in a closed state.
ENDPOINT_OPENED  The Endpoint object is in an opened state.
ENDPOINT_LAST_STATE 
ENDPOINT_UNCHANGED  setting this mode will keep the mode unchanged

Enumerator:
EXCEPTION_ADDRESS 
EXCEPTION_OPEN 
EXCEPTION_BIND 
EXCEPTION_CLOSE 
EXCEPTION_CONNECT 
EXCEPTION_LISTEN 
EXCEPTION_READ 
EXCEPTION_SOCKET 
EXCEPTION_STATE 
EXCEPTION_WRITE 

enum FileMode [related, inherited]

Enumerator:
FILE_READ 
FILE_WRITE 
FILE_APPEND 
FILE_CREATE 
FILE_DIRECT 
FILE_LARGE_FILE 
FILE_NO_ACCESS_TIME 
FILE_NO_FOLLOW 
FILE_TRUNCATE 
FILE_EXCLUSIVE_CREATE 
FILE_UNCHANGED 
FILE_LAST_STATE 

enum FlowControl [related, inherited]

Enumerator:
FLOW_NONE 
FLOW_HARDWARE  CRTSCTS off, IXON off, IXOFF off.
FLOW_SOFTWARE  CRTSCTS on, IXON off, IXOFF off.
FLOW_CUSTOM  CRTSCTS off, IXON on, IXOFF on.

enum Parity [related, inherited]

Enumerator:
PARITY_NONE 
PARITY_ODD  No parity check.
PARITY_EVEN  Odd parity checks.

enum ParityError [related, inherited]

Enumerator:
PARITY_ERROR_DISCARD 
PARITY_ERROR_MARK  Discards all parity error bytes.
PARITY_ERROR_ZERO  Delivers three bytes (0xFF, 0x00 and c; where c is the error byte.
PARITY_ERROR_IGNORE  Delivers 0x00 when a parity error is detected.

enum PipeMode [related, inherited]

Enumerator:
PIPE_READ  opened for reading
PIPE_WRITE  opened for writing

enum QueueMode [related, inherited]

Enumerator:
QUEUE_READ 
QUEUE_WRITE 
QUEUE_CREATE 
QUEUE_EXCLUSIVE_CREATE 
QUEUE_NONBLOCKING 
QUEUE_UNCHANGED 

Enumerator:
READ_WRITE_NONE 
READ 
WRITE 
READ_WRITE 
READ_WRITE_UNCHANGED 
READ_WRITE_LAST_STATE 

enum SetOption [related, inherited]

Aliases for the tty function options relating to when an option change takes effect.

Enumerator:
SET_NOW  the setting change occurs immediately
SET_FLUSH  the setting change occurs after all output written to the object has been transmitted, and all input that has been received but not read will be discarded before the change is made.
SET_DRAIN  the setting change occurs after all output has been transmitted; This function should be used when changing parameters that affect output.

enum SocketState [related, inherited]

These enumerations are used in the socket class methods, and use is also encouraged in children.

Enumerator:
SOCKET_BOUND  The socket is bound to an interface.
SOCKET_CONNECTED  The socket is connected (TCP).
SOCKET_LISTENING  The socket is listening for connections (TCP).
SOCKET_ACCEPTED  The socket is an accepted connection (TCP).
SOCKET_LAST_STATE 

enum StartStop [related, inherited]

Enumerates start/stop states

STOP was selected as 0, so that a variable of this enum can boolean test START as true and STOP as false.

Enumerator:
STOP 
START 

enum TOS [related, inherited]

Enumerator:
TOS_LOWDELAY  minimize delays for interactive traffic
TOS_THROUGHPUT  optimize throughput
TOS_RELIABILITY  optimize for reliability
TOS_LOWCOST  for "filler data" where slow transmission doesn’t matter


Function Documentation

Factory::pointer Conexus::__default_factory ( Factory::  create()  ) 

Registry::pointer Conexus::__default_registry ( Registry::  create()  ) 

Factory & Conexus::default_factory (  ) 

Registry & Conexus::default_registry (  ) 

void Conexus::enable_default_multicast_loopback ( bool  enable  ) 

void Conexus::init ( bool  use_dispatcher_default = false,
bool  init_dbus = true 
)

The init method should be called before any conexus servers are started.

Generally it is a good idea to call this at the beginning of your program if you are going to use the conexus servers.

Parameters:
use_dispatcher_default If true, dispatchers will be used by default for multi-threaded callbacks. For use in Gtk, Gtkmm or any other environment that needs callbacks to occur in a main thread this is a good idea. Handling of the incoming data will remain multi-threaded, and queued by the thread. Only data dispatching will return to the single threaded model if use_dispatcher_default is true.
init_dbus If conexus was built with dbus support and this parameter is true DBus::init() will be called. If conexus was not built with dbus support the value of this parameter does not matter.
Examples:
anonymous_pipe.cpp, anonymous_pipe_server.cpp, factory_client.cpp, factory_server.cpp, file_client.cpp, file_eof.cpp, file_server.cpp, ipv4_multicast_client.cpp, ipv4_multicast_server.cpp, ipv4_tcp_client.cpp, ipv4_tcp_echo_client.cpp, ipv4_tcp_echo_server.cpp, ipv4_tcp_server.cpp, ipv4_udp_client.cpp, ipv4_udp_server.cpp, ipv4_udpposet_client.cpp, ipv4_udpposet_server.cpp, ipv6_multicast_client.cpp, ipv6_multicast_server.cpp, ipv6_tcp_client.cpp, ipv6_tcp_echo_client.cpp, ipv6_tcp_echo_server.cpp, ipv6_tcp_server.cpp, ipv6_udp_client.cpp, ipv6_udp_server.cpp, ipv6_udpposet_client.cpp, ipv6_udpposet_server.cpp, ll_client.cpp, ll_server.cpp, messagequeue_client.cpp, messagequeue_server.cpp, miniterm.cpp, registry_client.cpp, registry_server.cpp, and serial_send.cpp.

References __initialized, __use_dispatcher_default, Conexus::Factory::add(), and default_factory().

bool Conexus::initialized (  ) 

bool Conexus::set_default_factory ( Factory::pointer  new_factory  ) 

References __default_factory.

void Conexus::set_default_multicast_hop_limit ( unsigned  hop_limit  ) 

bool Conexus::set_default_registry ( Registry::pointer  new_registry  ) 

References __default_registry.

void Conexus::set_use_dispatcher_default ( bool  use_dispatcher_default  ) 

void Conexus::throw_address_exception ( int  exception_num  )  throw ( address_exception )

Referenced by throw_exception().

void Conexus::throw_bind_exception ( int  exception_num  )  throw ( bind_exception )

void Conexus::throw_close_exception ( int  exception_num  )  throw ( close_exception )

void Conexus::throw_connect_exception ( int  exception_num  )  throw ( connect_exception )

void Conexus::throw_exception ( int  exception_num,
ExceptionType  type 
) throw ( conexus_exception )

void Conexus::throw_listen_exception ( int  exception_num  )  throw ( listen_exception )

void Conexus::throw_open_exception ( int  exception_num  )  throw ( open_exception )

void Conexus::throw_read_exception ( int  exception_num  )  throw ( read_exception )

void Conexus::throw_socket_exception ( int  exception_num  )  throw ( socket_exception )

void Conexus::throw_ssl_exception (  )  throw ( SSL::exception )

void Conexus::throw_write_exception ( int  exception_num  )  throw ( write_exception )

bool Conexus::use_dispatcher_default (  ) 


Variable Documentation

bool Conexus::__initialized = false

Referenced by init(), and initialized().


Generated on Wed Jul 8 15:51:17 2009 for conexus by doxygen 1.5.8