lwpa  0.1.0
LightWeight Platform Abstraction (lwpa)
View other versions:
lwpa

Overview

Lightweight Platform Abstraction (lwpa): A set of platform abstraction modules.

Lightweight Platform Abstraction (lwpa) supports the writing of platform-neutral C and C++ libraries by providing a set of modules to abstract common system calls. There are also a few platform-neutral utilities (e.g. data structures, logging) thrown in here and there for convenience. lwpa headers can be either platform-neutral (contained in include/) or platform-specific (contained in include/[platform]). All platform-specific headers of the same lwpa module will conform to an identical interface.

Modules

 lwpa_lock
 Platform-neutral locks, mutexes and signals.
 
 lwpa_thread
 Platform-neutral threads.
 
 lwpa_bool
 A C boolean type.
 
 lwpa_cid
 Type and helper functions for the Component IDentifier (CID) used in the ACN family of protocols.
 
 lwpa_error
 Platform-neutral error codes.
 
 lwpa_inet
 POSIX-like identifiers for IP addresses and network interfaces.
 
 lwpa_int
 Fixed-width integer types.
 
 lwpa_log
 A platform-neutral module enabling applications and libraries to log messages in either or both of syslog-compliant and human-readable format.
 
 lwpa_mempool
 Memory pools with fixed-size elements.
 
 lwpa_netint
 A platform-neutral method for enumerating network interfaces.
 
 lwpa_pack
 Platform- and endianness-independent buffer packing and unpacking.
 
 lwpa_pdu
 Parse or pack a generic PDU or PDU block.
 
 lwpa_rbtree
 A red-black tree implementation.
 
 lwpa_socket
 Platform-neutral BSD-modeled network socket implementation.
 
 lwpa_timer
 Platform-neutral system timers.
 
 lwpa_uid
 Type and helper functions for the Unique ID (UID) used in the RDM family of protocols.
 

Macros

#define LWPA_WAIT_FOREVER   -1
 For lwpa_ functions that take a millisecond timeout, this means to wait indefinitely.