Data Structures |
class | array_pointer |
| Generic smart array class. More...
|
class | array_reuse |
| An array of reusable types. More...
|
class | ArrayReuse |
| An array of reusable objects. More...
|
class | assoc_pointer |
| A typed template for using a key association with typed objects. More...
|
class | atomic |
| Generic atomic class for referencing atomic objects and static functions. More...
|
class | auto_object |
| A general purpose smart pointer helper class. More...
|
class | auto_protect |
| A mutex locked object smart pointer helper class. More...
|
class | autorelease |
| Create a linked list of auto-releasable objects. More...
|
class | barrier |
| A portable implimentation of "barrier" thread sychronization. More...
|
class | bitmap |
| A class to access bit fields in external bitmaps. More...
|
class | Buffer |
| A thread-safe buffer for serializing and streaming class data. More...
|
class | bufferof |
| A templated typed class for buffering of objects. More...
|
class | BufferProtocol |
| Common buffer protocol class. More...
|
class | bufpager |
| Buffered pager for storing paged strings for character protocol. More...
|
class | CharacterProtocol |
| Common character processing protocol. More...
|
class | charbuf |
| A template to create a character array that can be manipulated as a string. More...
|
class | charfile |
| Access standard files through character protocol. More...
|
class | cidr |
| A class to hold internet segment routing rules. More...
|
class | Cipher |
| A generic data ciphering class. More...
|
class | Conditional |
| The conditional is a common base for other thread synchronizing classes. More...
|
class | ConditionalAccess |
| The conditional rw seperates scheduling for optizming behavior or rw locks. More...
|
class | ConditionalLock |
| An optimized and convertable shared lock. More...
|
class | CountedObject |
| A base class for reference counted objects. More...
|
class | counter |
| Automatic integer counting class. More...
|
class | Date |
| The Date class uses a julian date representation of the current year, month, and day. More...
|
class | DateNumber |
| A number class that manipulates a string buffer that is also a date. More...
|
class | DateTime |
| The Datetime class uses a julian date representation of the current year, month, and day and a integer representation of the current time. More...
|
class | DateTimeString |
| A DateTime string class. More...
|
class | DetachedThread |
| A detached thread object that is stand-alone. More...
|
class | Digest |
| A cryptographic digest class. More...
|
class | DLinkedObject |
| A double-linked Object, used for certain kinds of lists. More...
|
class | exclusive_lock |
| A kind of smart pointer object to support exclusive locking protocol. More...
|
class | ExclusiveProtocol |
| An exclusive locking protocol interface base. More...
|
class | fbuf |
| A generic file streaming class built from the buffer protocol. More...
|
class | filestream |
| Streamable tcp connection between client and server. More...
|
class | fsys |
| A container for generic and o/s portable threadsafe file system functions. More...
|
class | JoinableThread |
| A child thread object that may be joined by parent. More...
|
class | keyassoc |
| A class to hold memory pointers referenced by string names. More...
|
class | keydata |
| Data keys parsed from a keyfile. More...
|
class | keyfile |
| Traditional keypair config file parsing class. More...
|
class | keylist |
| A template for ordered index of typed name key mapped objects. More...
|
class | keymap |
| A template class for a hash map. More...
|
class | keypager |
| A template class for a hash pager. More...
|
class | linked_allocator |
| Linked allocator template to gather linked objects. More...
|
class | linked_pointer |
| A smart pointer template for iterating linked lists. More...
|
class | linked_pointer< struct sockaddr > |
| Linked pointer for address lists. More...
|
class | linked_value |
| Template value class to embed data structure into a linked list. More...
|
class | LinkedAllocator |
| Linked allocator helper for linked_allocator template. More...
|
class | LinkedList |
| A double linked list object. More...
|
class | LinkedObject |
| Common base class for all objects that can be formed into a linked list. More...
|
class | ListenSocket |
| A bound socket used to listen for inbound socket connections. More...
|
class | locked_instance |
| A templated smart pointer instance for lock protected objects. More...
|
class | locked_pointer |
| Templated locked pointer for referencing locked objects of specific type. More...
|
class | locked_release |
| Auto-pointer support class for locked objects. More...
|
class | LockedPointer |
| An object pointer that uses mutex to assure thread-safe singleton use. More...
|
class | LockingProtocol |
| Common locking protocol. More...
|
class | mapped_array |
| Template class to map typed vector into shared memory. More...
|
class | mapped_reuse |
| Template class to map typed reusable objects into shared memory heap. More...
|
class | mapped_view |
| Class to access a named mapped segment published from another process. More...
|
class | MappedMemory |
| Construct or access a named section of memory. More...
|
class | MappedReuse |
| Map a reusable allocator over a named shared memory segment. More...
|
class | memalloc |
| A memory protocol pager for private heap manager. More...
|
class | MemoryRedirect |
| A redirection base class for the memory protocol. More...
|
class | mempager |
| A managed private heap for small allocations. More...
|
class | memstring |
| A string class that uses a cstring buffer that is fixed in memory. More...
|
class | MemVector |
| Vector with fixed size member list. More...
|
class | multimap |
| Embed data objects into a multipap structured memory database. More...
|
class | MultiMap |
| A multipath linked list where membership is managed in multiple lists. More...
|
class | Mutex |
| Generic non-recursive exclusive lock class. More...
|
class | mutex_pointer |
| Typed smart locked pointer class. More...
|
class | named_value |
| Template value class to embed data structure into a named list. More...
|
class | NamedObject |
| A linked object base class with members found by name. More...
|
class | NamedTree |
| The named tree class is used to form a tree oriented list of associated objects. More...
|
class | Number |
| A number manipulation class. More...
|
class | object_pointer |
| Typed smart pointer class. More...
|
class | object_value |
| Template for embedding a data structure into a reference counted object. More...
|
class | ObjectProtocol |
| A common base class for all managed objects. More...
|
class | ObjectQueue |
| A queue of double linked object. More...
|
class | objfifo |
| Template for typesafe basic object fifo container. More...
|
class | objqueue |
| Template for typesafe basic object queue container. More...
|
class | objstack |
| Template for typesafe basic object stack container. More...
|
class | OrderedIndex |
| An index container for maintaining an ordered list of objects. More...
|
class | OrderedObject |
| A linked object base class for ordered objects. More...
|
class | paged_reuse |
| A reusable private pool of reusable types. More...
|
class | pager |
| Mempager managed type factory for pager pool objects. More...
|
class | PagerObject |
| This is a base class for objects that may be created in pager pools. More...
|
class | PagerPool |
| Pager pool base class for managed memory pools. More...
|
class | PagerReuse |
| A mempager source of reusable objects. More...
|
class | PersistEngine |
| Stream serialization of persistent classes. More...
|
class | PersistObject |
| PersistObject. More...
|
class | pipestream |
| Streamable tcp connection between client and server. More...
|
class | pointer |
| Generic smart pointer class. More...
|
class | queue |
| Manage a thread-safe queue of objects through reference pointers. More...
|
class | queueof |
| A templated typed class for thread-safe queue of object pointers. More...
|
class | Random |
| Cryptographically relevant random numbers. More...
|
class | RecursiveMutex |
| Portable recursive exclusive lock. More...
|
class | ReusableAllocator |
| Class for resource bound memory pools between threads. More...
|
class | ReusableObject |
| Reusable objects for forming private heaps. More...
|
class | sarray |
| Generate a typed sparse managed object array. More...
|
class | save_restore |
| Save and restore global objects in function call stack frames. More...
|
class | secure |
| Common secure socket support. More...
|
class | Semaphore |
| A portable counting semaphore class. More...
|
class | SeqCounter |
| Automatically return a sequence of untyped objects. More...
|
class | sequence |
| A template to return a sequence of objects of a specified type. More...
|
class | shared_instance |
| A templated smart pointer instance for shared singleton typed objects. More...
|
class | shared_lock |
| A kind of smart pointer object to support shared locking protocol. More...
|
class | shared_pointer |
| Templated shared pointer for singleton shared objects of specific type. More...
|
class | shared_release |
| Auto-pointer support class for shared singleton objects. More...
|
class | SharedObject |
| Shared singleton object. More...
|
class | SharedPointer |
| The shared pointer is used to manage a singleton instance of shared object. More...
|
class | SharedProtocol |
| An exclusive locking protocol interface base. More...
|
class | Socket |
| A generic socket base class. More...
|
class | sparse_array |
| A sparse array of managed objects. More...
|
class | SSLBuffer |
| Secure socket buffer. More...
|
class | sstream |
| Secure socket using std::iostream. More...
|
class | stack |
| Manage a thread-safe stack of objects through reference pointers. More...
|
class | stackof |
| A templated typed class for thread-safe stack of object pointers. More...
|
class | StreamProtocol |
| Common stream protocol for std C++ i/o classes. More...
|
class | string |
| A copy-on-write string class that operates by reference count. More...
|
class | stringbuf |
| A string class that has a predefined string buffer. More...
|
class | stringpager |
| String pager for storing lists of NULL terminated strings. More...
|
class | TCPBuffer |
| A generic tcp socket class that offers i/o buffering. More...
|
class | TCPServer |
| A generic tcp server class. More...
|
class | tcpstream |
| Streamable tcp connection between client and server. More...
|
class | temp_array |
| Manage temporary array stored on the heap. More...
|
class | temporary |
| Manage temporary object stored on the heap. More...
|
class | Thread |
| An abstract class for defining classes that operate as a thread. More...
|
class | ThreadLock |
| A generic and portable implimentation of Read/Write locking. More...
|
class | Time |
| The Time class uses a integer representation of the current time. More...
|
class | TimedEvent |
| Event notification to manage scheduled realtime threads. More...
|
class | Timer |
| Timer class to use when scheduling realtime events. More...
|
class | TimerQueue |
| A timer queue for timer events. More...
|
class | toggle |
| Automatically toggle a bool on each reference. More...
|
class | treemap |
| Embed data objects into a tree structured memory database. More...
|
class | TypeManager |
| Type manager for persistence engine. More...
|
class | UString |
| A copy-on-write utf8 string class that operates by reference count. More...
|
class | utf8 |
| A core class of ut8 encoded string functions. More...
|
class | utf8_pointer |
| Pointer to utf8 encoded character data. More...
|
class | Vector |
| A managed vector for generic object pointers. More...
|
class | vectorbuf |
| Allocated vector list of a specified type. More...
|
class | vectorof |
| A templated vector for a list of a specific Object subtype. More...
|
class | XMLParser |
| XML streaming parser. More...
|
class | ZNumber |
| A number manipulation class that maintains a zero lead filled string. More...
|
Typedefs |
typedef ConditionalAccess | accesslock_t |
| Convenience type for scheduling access.
|
typedef barrier | barrier_t |
| Convenience type for using thread barriers.
|
typedef Cipher | cipher_t |
| Convenience type for generic ciphers.
|
typedef ConditionalLock | condlock_t |
| Convenience type for using conditional locks.
|
typedef counter | counter_t |
| A convenience typecast for integer counters.
|
typedef Date | date_t |
| Convenience type for using Date object.
|
typedef DateTime | datetime_t |
| Convenience type for using DateTime object.
|
typedef DateTimeString | datetimestring_t |
| Convenience type for using DateTimeString object.
|
typedef Digest | digest_t |
| Convenience type for generic digests.
|
typedef void * | dir_t |
| Convenience type for directory scan operations.
|
typedef exclusive_lock | exlock_t |
| Convenience type to use for object referencing an exclusive object.
|
typedef queue | fifo_t |
| Convenience type for using thread-safe object fifo (queue).
|
typedef fbuf | file_t |
| Convenience type for buffered file operations.
|
typedef fsys | fsys_t |
| Convience type for fsys.
|
typedef LinkedObject * | LinkedIndex |
| Convenience typedef for root pointers of single linked lists.
|
typedef void * | mem_t |
| Convenience type for loader operations.
|
typedef Mutex | mutex_t |
| Convenience type for using exclusive mutex locks.
|
typedef class PersistObject *(* | NewPersistObjectFunction )(void) |
typedef Number | number_t |
| A convenience type for number.
|
typedef OrderedIndex | objfifo_t |
| Convenience type for a fifo of linked objects.
|
typedef ObjectQueue | objqueue_t |
| Convenience type for a queue of linked objects.
|
typedef ObjectStack | objstack_t |
| Convenience type for a stack of linked objects.
|
typedef RecursiveMutex | rexlock_t |
| Convenience type for using recursive exclusive locks.
|
typedef ThreadLock | rwlock_t |
| Convenience type for using read/write locks.
|
typedef Semaphore | semaphore_t |
| Convenience type for using counting semaphores.
|
typedef shared_lock | shlock_t |
| Convenience type to use for object referencing a shared object.
|
typedef Cipher::Key | skey_t |
| Convenience type for generic cipher key.
|
typedef Socket | socket |
| A convenience class for socket.
|
typedef SSLBuffer | ssl_t |
| Convenience type for secure socket.
|
typedef stack | stack_t |
| Convenience type for using thread-safe object stacks.
|
typedef string | String |
| A convenience type when mixing std::string in old compilers that are bad with namespaces...
|
typedef string | string_t |
| A convenience type for string.
|
typedef unsigned short | strsize_t |
| A convenience class for size of strings.
|
typedef TCPBuffer | tcp_t |
| Convenience type for pure tcp sockets.
|
typedef TCPServer | tcpserv_t |
typedef TimedEvent | timedevent_t |
| Convenience type for using timed events.
|
typedef Timer | timer_t |
| A convenience type for timers.
|
typedef toggle | toggle_t |
| A convenience typecast for auto-toggled bools.
|
typedef TimerQueue::event | TQEvent |
| A convenience type for timer queue timer events.
|
typedef int16_t | ucs2_t |
| 16 bit unicode character code.
|
typedef int32_t | ucs4_t |
| 32 bit unicode character code.
|
typedef void * | unicode_t |
| Resolves issues where wchar_t is not defined.
|
typedef UString | ustring_t |
| Convenience type for utf8 encoded strings.
|
typedef utf8_pointer | utf8_t |
| Convenience type for utf8_pointer strings.
|
typedef ZNumber | znumber_t |
| A convenience type for znumber.
|
Functions |
struct sockaddr * | _getaddrinfo (struct addrinfo *addrinfo) |
| Helper function for linked_pointer<struct sockaddr>.
|
socket_t | _getaddrsock (struct addrinfo *addrinfo) |
| Helper function for linked_pointer<struct sockaddr>.
|
struct addrinfo * | _nextaddrinfo (struct addrinfo *addrinfo) |
| Helper function for linked_pointer<struct sockaddr>.
|
template<typename T > |
const T | abs (const T &value) |
| Template for absolute value of a type.
|
void | access (SharedProtocol *object) |
| Convenience function to access (lock) shared object through it's protocol.
|
void | access (accesslock_t &lock) |
| Convenience function to shared read schedule conditional access.
|
void | access (condlock_t &lock) |
| Convenience function for shared access to a conditional lock.
|
void | acquire (mutex_t &mutex) |
| Convenience function to acquire a mutex.
|
void | add (ObjectStack &stack, LinkedObject *object) |
| Add a linked object onto a stack of linked objects.
|
void | add (OrderedIndex &fifo, LinkedObject *object) |
| Add a linked object onto a fifo of linked objects.
|
void | add (ObjectQueue &queue, DLinkedObject *object) |
| Add a linked object to end of queue of objects.
|
struct sockaddr * | addr (socket::address &address) |
| A convenience function to convert a socket address list into a socket address.
|
struct addrinfo * | addrinfo (socket::address &address) |
| A convenience function to convert a socket address list into an addrinfo.
|
bool | case_eq (char *s1, char *s2) |
| Compare two null terminated strings if equal ignoring case.
|
bool | case_eq (char *s1, char *s2, size_t size) |
| Compare two null terminated strings if equal for a specified size ignoring case.
|
void | commit (accesslock_t &lock) |
| Convenience function to commit an exclusive access lock.
|
void | commit (condlock_t &lock) |
| Convenience function to commit and release an exclusively locked conditional lock.
|
ObjectProtocol * | copy (ObjectProtocol *object) |
| Convenience function to access object copy.
|
template<typename T > |
T * | dup (T &object) |
| Convenience function to duplicate object pointer to heap.
|
template<> |
char * | dup< char > (char &object) |
template<typename T > |
void | dupfree (T object) |
template<> |
void | dupfree< char * > (char *object) |
template<> |
void | dupfree< ucs2_t * > (ucs2_t *string) |
template<> |
void | dupfree< ucs4_t * > (ucs4_t *string) |
template<> |
void | dupfree< unicode_t > (unicode_t string) |
bool | eq (char *s1, char *s2) |
| Compare two null terminated strings if equal.
|
bool | eq (char *s1, char *s2, size_t size) |
| Compare two null terminated strings if equal up to specified size.
|
bool | eq (String &s1, String &s2) |
| Compare two string objects if equal.
|
bool | eq (struct sockaddr *s1, struct sockaddr *s2) |
| Compare two socket addresses to see if equal.
|
bool | eq (struct sockaddr_storage *s1, struct sockaddr_storage *s2) |
| Compare two stored socket addresses to see if equal.
|
void | exclusive (SharedProtocol *object) |
| Convenience function to exclusive lock shared object through it's protocol.
|
void | exclusive (condlock_t &lock) |
| Convenience function to exclusively lock shared conditional lock.
|
bool | exclusive (rwlock_t &lock, timeout_t timeout=Timer::inf) |
| Convenience function for exclusive write access to a read/write lock.
|
bool | host_eq (struct sockaddr *s1, struct sockaddr *s2) |
| Compare two host addresses to see if equal.
|
bool | ieq (char *s1, char *s2) |
bool | ieq (char *s1, char *s2, size_t size) |
bool | ieq (String &s1, String &s2) |
| Compare two string objects if equal ignoring case.
|
bool | ieq (struct sockaddr *s1, struct sockaddr *s2) |
template<class T > |
bool | is (T &object) |
| Convenience function to validate object assuming it is castable to bool.
|
template<typename T > |
bool | isnull (T &object) |
| Convenience function to test pointer object.
|
template<typename T > |
bool | isnullp (T *object) |
| Convenience function to test pointer-pointer object.
|
void | lock (ExclusiveProtocol *object) |
| Convenience function to exclusively lock an object through it's protocol.
|
void | lock (rexlock_t &lock) |
| Convenience function to lock a shared recursive mutex lock.
|
template<typename T > |
const T() | max (const T &v1, const T &v2) |
| Template for max value of a type.
|
template<typename T > |
T &() | max (T &o1, T &o2) |
| Convenience function to return max of two objects.
|
template<typename T > |
const T() | min (const T &v1, const T &v2) |
| Template for min value of a type.
|
template<typename T > |
T &() | min (T &o1, T &o2) |
| Convenience function to return min of two objects.
|
void | modify (accesslock_t &lock) |
| Convenience function to exclusively schedule conditional access.
|
void | modify (condlock_t &lock) |
| Convenience function to exclusively aquire a conditional lock.
|
LinkedObject * | pop (ObjectStack &stack) |
| Pop a linked object from a stack of linked objects.
|
LinkedObject * | pop (OrderedIndex &fifo) |
| Pop a linked object from a fifo of linked objects.
|
DLinkedObject * | pop (ObjectQueue &queue) |
| Pop a linked object from end of queue.
|
ObjectProtocol * | pull (stack_t &stack, timeout_t timeout=Timer::inf) |
| Convenience function to pull an object from a stack.
|
ObjectProtocol * | pull (fifo_t &fifo, timeout_t timeout=Timer::inf) |
| Convenience function to pull an object from a fifo.
|
LinkedObject * | pull (ObjectStack &stack) |
| Pop a linked object from a stack of linked objects.
|
LinkedObject * | pull (OrderedIndex &fifo) |
| Pop a linked object from a fifo of linked objects.
|
DLinkedObject * | pull (ObjectQueue &queue) |
| Pull a linked object from start of a queue.
|
void | push (stack_t &stack, ObjectProtocol *object) |
| Convenience function to push an object onto a stack.
|
void | push (fifo_t &fifo, ObjectProtocol *object) |
| Convenience function to push an object onto a fifo.
|
void | push (ObjectStack &stack, LinkedObject *object) |
| Push a linked object onto a stack of linked objects.
|
void | push (OrderedIndex &fifo, LinkedObject *object) |
| Push a linked object onto a fifo of linked objects.
|
void | push (ObjectQueue &queue, DLinkedObject *object) |
| Push a linked object to start of queue.
|
void | release (SharedProtocol *object) |
| Convenience function to unlock shared object through it's protocol.
|
void | release (exlock_t &reference) |
| Convenience function to release a reference to an exclusive lock.
|
void | release (shlock_t &reference) |
| Convenience function to release a reference to a shared lock.
|
void | release (ObjectProtocol *object) |
| Convenience function to access object release.
|
void | release (semaphore_t &semaphore) |
| Convenience function to release a semaphore.
|
void | release (mutex_t &mutex) |
| Convenience function to release a mutex.
|
void | release (accesslock_t &lock) |
| Convenience function to release an access lock.
|
void | release (condlock_t &lock) |
| Convenience function to release shared access to a conditional lock.
|
void | release (rwlock_t &lock) |
| Convenience function to release a shared lock.
|
void | release (rexlock_t &lock) |
| Convenience function to release a shared recursive mutex lock.
|
void | remove (stack_t &stack, ObjectProtocol *object) |
| Convenience function to remove an object from a stack.
|
void | remove (fifo_t &fifo, ObjectProtocol *object) |
| Convenience function to remove an object from a fifo.
|
void | retain (ObjectProtocol *object) |
| Convenience function to access object retention.
|
void | share (SharedProtocol *object) |
| Convenience function to restore shared locking for object through it's protocol.
|
void | share (condlock_t &lock) |
| Convenience function to restore shared access on a conditional lock.
|
bool | share (rwlock_t &lock, timeout_t timeout=Timer::inf) |
| Convenience function for shared read access to a read/write lock.
|
void | start (JoinableThread *thread, int priority=0) |
| Convenience function to start a joinable thread.
|
void | start (DetachedThread *thread, int priority=0) |
| Convenience function to start a detached thread.
|
String | str (charfile &fp, strsize_t size) |
String | str (char *string) |
String | str (String &string) |
String | str (short value) |
String | str (unsigned short value) |
String | str (long value) |
String | str (unsigned long value) |
String | str (double value) |
String | str (CharacterProtocol &cp, strsize_t size) |
String | str (Socket &so, strsize_t size) |
int | stricmp (char *string1, char *string2) |
| Convenience function for case insensitive null terminated string compare.
|
int | strnicmp (char *string1, char *string2, size_t max) |
| Convenience function for case insensitive null terminated string compare.
|
ucs4_t * | strudup (char *string) |
ucs2_t * | strwdup (char *string) |
template<typename T > |
void | swap (T &o1, T &o2) |
| Convenience function to swap objects.
|
template<> |
void | swap< string_t > (string_t &s1, string_t &s2) |
unicode_t | unidup (char *string) |
void | unlock (ExclusiveProtocol *object) |
| Convenience function to unlock an exclusive object through it's protocol.
|
void | wait (barrier_t &barrier) |
| Convenience function to wait on a barrier.
|
void | wait (semaphore_t &semaphore, timeout_t timeout=Timer::inf) |
| Convenience function to wait on a semaphore.
|
void | zerofill (void *addr, size_t size) |
Variables |
charfile | cstderr |
charfile | cstdin |
charfile | cstdout |