Common namespace for all ucommon objects.
|
Data Structures |
| class | Exclusive |
| | An exclusive locking protocol interface base. More...
|
| class | Shared |
| | An exclusive locking protocol interface base. More...
|
| class | exclusive_lock |
| | A kind of smart pointer object to support exclusive locking protocol. More...
|
| class | shared_lock |
| | A kind of smart pointer object to support shared locking protocol. More...
|
| class | bitmap |
| | A class to access bit fields in external bitmaps. More...
|
| class | counter |
| | Automatic integer counting class. More...
|
| class | SeqCounter |
| | Automatically return a sequence of untyped objects. More...
|
| class | toggle |
| | Automatically toggle a bool on each reference. More...
|
| class | sequence |
| | A template to return a sequence of objects of a specified type. More...
|
| class | fsys |
| | A container for generic and o/s portable threadsafe file system functions. More...
|
| class | keydata |
| | Data keys parsed from a keyfile. More...
|
| class | keyfile |
| | Traditional keypair config file parsing class. More...
|
| class | LinkedObject |
| | Common base class for all objects that can be formed into a linked list. More...
|
| class | ReusableObject |
| | Reusable objects for forming private heaps. 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 | 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 | LinkedList |
| | A double linked list object. More...
|
| class | MultiMap |
| | A multipath linked list where membership is managed in multiple lists. More...
|
| class | named_value |
| | Templated value class to embed data structure into a named list. More...
|
| class | linked_value |
| | Templated value class to embed data structure into a linked list. More...
|
| class | linked_pointer |
| | A templated smart pointer for iterating linked lists. More...
|
| class | multimap |
| | Embed data objects into a multipap structured memory database. More...
|
| class | treemap |
| | Embed data objects into a tree structured memory database. More...
|
| class | keymap |
| | A templated class for a hash map. More...
|
| class | keylist |
| | A template for ordered index of typed name key mapped objects. 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 | mapped_array |
| | Template class to map typed vector into shared memory. More...
|
| class | mapped_reuse |
| | Template class to map typed resusble objects into shared memory heap. More...
|
| class | mapped_view |
| | Class to access a named mapped segment published from another process. More...
|
| class | memalloc |
| | An alternate memory pager private heap manager. More...
|
| class | mempager |
| | A managed private heap for small allocations. More...
|
| class | autorelease |
| | Create a linked list of auto-releasable 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 | keyassoc |
| | A class to hold memory pointers referenced by string names. More...
|
| class | assoc_pointer |
| | A typed template for using a key association with typed objects. More...
|
| class | pager |
| | Mempager managed type factory for pager pool objects. More...
|
| class | Object |
| | A common base class for all managed objects. More...
|
| class | CountedObject |
| | A base class for reference counted objects. More...
|
| class | Temporary |
| | Used as base class for temporary objects. More...
|
| class | auto_delete |
| | A helper class for the temporary object template. More...
|
| class | auto_pointer |
| | A general purpose smart pointer helper class. More...
|
| class | sparse_array |
| | A sparse array of managed objects. More...
|
| class | sarray |
| | Generate a typed sparse managed object array. More...
|
| class | temporary |
| | Manage temporary object stored on the heap. More...
|
| class | object_value |
| | Template for embedding a data structure into a reference counted object. More...
|
| class | pointer |
| | Typed smart pointer class. More...
|
| class | cidr |
| | A class to hold internet segment routing rules. More...
|
| class | Socket |
| | A generic socket base class. More...
|
| class | ListenSocket |
| | A bound socket used to listen for inbound socket connections. More...
|
| class | string |
| | A copy-on-write string class that operates by reference count. More...
|
| class | memstring |
| | A string class that uses a cstring buffer that is fixed in memory. More...
|
| class | StringFormat |
| | A string conversion class for use as a base class in objects which can transform themselves into string representations. More...
|
| class | charbuf |
| | A template to create a character array that can be manipulated as a string. More...
|
| class | stringbuf |
| | A string class that has a predefined string buffer. 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 | TimedEvent |
| | Event notification to manage scheduled realtime threads. More...
|
| class | rexlock |
| | Portable recursive exclusive lock. More...
|
| class | rwlock |
| | A generic and portable implimentation of Read/Write locking. More...
|
| class | ReusableAllocator |
| | Class for resource bound memory pools between threads. More...
|
| class | ConditionalLock |
| | An optimized and convertable shared lock. More...
|
| class | barrier |
| | A portable implimentation of "barrier" thread sychronization. More...
|
| class | semaphore |
| | A portable counting semaphore class. More...
|
| class | mutex |
| | Generic non-recursive exclusive lock class. More...
|
| class | auto_protect |
| | A mutex locked object smart pointer helper class. More...
|
| class | LockedPointer |
| | An object pointer that uses mutex to assure thread-safe singleton use. More...
|
| class | SharedObject |
| | Shared singleton object. More...
|
| class | SharedPointer |
| | The shared pointer is used to manage a singleton instance of shared object. More...
|
| class | Thread |
| | An abstract class for defining classes that operate as a thread. More...
|
| class | JoinableThread |
| | A child thread object that may be joined by parent. More...
|
| class | DetachedThread |
| | A detached thread object that is stand-alone. More...
|
| class | queue |
| | Manage a thread-safe queue of objects through reference pointers. More...
|
| class | stack |
| | Manage a thread-safe stack of objects through reference pointers. More...
|
| class | Buffer |
| | A thread-safe buffer for serializing and streaming class data. More...
|
| class | locked_release |
| | Auto-pointer support class for locked objects. More...
|
| class | shared_release |
| | Auto-pointer support class for shared singleton objects. More...
|
| class | queueof |
| | A templated typed class for thread-safe queue of object pointers. More...
|
| class | stackof |
| | A templated typed class for thread-safe stack of object pointers. More...
|
| class | bufferof |
| | A templated typed class for buffering of objects. More...
|
| class | shared_pointer |
| | Templated shared pointer for singleton shared objects of specific type. More...
|
| class | locked_pointer |
| | Templated locked pointer for referencing locked objects of specific type. More...
|
| class | locked_instance |
| | A templated smart pointer instance for lock protected objects. More...
|
| class | shared_instance |
| | A templated smart pointer instance for shared singleton typed objects. More...
|
| class | mutex_pointer |
| | Typed smart locked pointer class. More...
|
| class | Timer |
| | Timer class to use when scheduling realtime events. More...
|
| class | TimerQueue |
| | A timer queue for timer events. More...
|
| class | ArrayReuse |
| | An array of reusable objects. More...
|
| class | PagerReuse |
| | A mempager source of reusable objects. More...
|
| class | Vector |
| | A managed vector for generic object pointers. More...
|
| class | MemVector |
| | Vector with fixed size member list. More...
|
| class | vectorof |
| | A templated vector for a list of a specific Object subtype. More...
|
| class | array_reuse |
| | An array of reusable types. More...
|
| class | paged_reuse |
| | A reusable private pool of reusable types. More...
|
| class | vectorbuf |
| | Allocated vector list of a specified type. More...
|
| class | XMLParser |
| | XML streaming parser. More...
|
Typedefs |
|
typedef exclusive_lock | exlock_t |
| | Convenience type to use for object referencing an exclusive object.
|
|
typedef shared_lock | shlock_t |
| | Convenience type to use for object referencing a shared object.
|
|
typedef counter | counter_t |
| | A convenience typecast for integer counters.
|
|
typedef toggle | toggle_t |
| | A convenience typecast for auto-toggled bools.
|
|
typedef void * | dir_t |
| | Convenience type for directory scan operations.
|
|
typedef void * | mem_t |
| | Convenience type for loader operations.
|
|
typedef fsys | fsys_t |
| | Convience type for fsys.
|
|
typedef LinkedObject * | LinkedIndex |
| | Convenience typedef for root pointers of single linked lists.
|
|
typedef Socket | socket |
| | A convenience class for socket.
|
|
typedef unsigned short | strsize_t |
| | A convenience class for size of strings.
|
|
typedef string | string_t |
| | A convenience type for string.
|
| typedef string | String |
| | A convenience type when mixing std::string in old compilers that are bad with namespaces.
|
|
typedef ConditionalLock | condlock_t |
| | Convenience type for using conditional locks.
|
|
typedef ConditionalAccess | accesslock_t |
| | Convenience type for scheduling access.
|
|
typedef TimedEvent | timedevent_t |
| | Convenience type for using timed events.
|
|
typedef mutex | mutex_t |
| | Convenience type for using exclusive mutex locks.
|
|
typedef mutex | Mutex |
| | Convenience type for using exclusive mutex on systems which define "mutex" (solaris) already to avoid type confusion.
|
|
typedef rwlock | rwlock_t |
| | Convenience type for using read/write locks.
|
|
typedef rexlock | rexlock_t |
| | Convenience type for using recursive exclusive locks.
|
|
typedef semaphore | semaphore_t |
| | Convenience type for using counting semaphores.
|
|
typedef barrier | barrier_t |
| | Convenience type for using thread barriers.
|
|
typedef stack | stack_t |
| | Convenience type for using thread-safe object stacks.
|
|
typedef queue | fifo_t |
| | Convenience type for using thread-safe object fifo (queue).
|
|
typedef TimerQueue::event | TQEvent |
| | A convenience type for timer queue timer events.
|
|
typedef Timer | timer_t |
| | A convenience type for timers.
|
Functions |
| void | lock (Exclusive *object) |
| | Convenience function to exclusively lock an object through it's protocol.
|
| void | unlock (Exclusive *object) |
| | Convenience function to unlock an exclusive object through it's protocol.
|
| void | access (Shared *object) |
| | Convenience function to access (lock) shared object through it's protocol.
|
| void | release (Shared *object) |
| | Convenience function to unlock shared object through it's protocol.
|
| void | exclusive (Shared *object) |
| | Convenience function to exclusive lock shared object through it's protocol.
|
| void | share (Shared *object) |
| | Convenience function to restore shared locking for 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 | retain (Object *object) |
| | Convenence function to access object retention.
|
| void | release (Object *object) |
| | Convenence function to access object release.
|
| Object * | copy (Object *object) |
| | Convenence function to access object copy.
|
| template<class T > |
| bool | is (T &object) |
| | Convenience function to validate object.
|
| template<class T > |
| bool | isnull (T &object) |
| | Convenience function to test pointer object.
|
| template<class T > |
| bool | isnullp (T *object) |
| | Convenience function to test pointer-pointer object.
|
| template<class T > |
| void | swap (T &o1, T &o2) |
| | Convenience function to swap objects.
|
| template<class T > |
| T &() | max (T &o1, T &o2) |
| | Convenience function to return max of two objects.
|
| template<class T > |
| T &() | min (T &o1, T &o2) |
| | Convenience function to return min of two objects.
|
| struct addrinfo * | addrinfo (socket::address &address) |
| | A convenience function to convert a socket address list into an addrinfo.
|
| struct sockaddr * | addr (socket::address &address) |
| | A convenience function to convert a socket address list into a socket address.
|
| 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.
|
| 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.
|
| 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 | release (semaphore_t &semaphore) |
| | Convenience function to release a semaphore.
|
| void | acquire (mutex_t &mutex) |
| | Convenience function to acquire a mutex.
|
| void | release (mutex_t &mutex) |
| | Convenience function to release a mutex.
|
| void | modify (accesslock_t &lock) |
| | Convenience function to exclusively schedule conditional access.
|
| void | access (accesslock_t &lock) |
| | Convenience function to shared read schedule conditional access.
|
| void | release (accesslock_t &lock) |
| | Convenience function to release an access lock.
|
| void | commit (accesslock_t &lock) |
| | Convenience function to commit an exclusive access lock.
|
| void | exclusive (condlock_t &lock) |
| | Convenience function to exclusively lock shared conditional lock.
|
| void | share (condlock_t &lock) |
| | Convenience function to restore shared access on a conditional lock.
|
| void | modify (condlock_t &lock) |
| | Convenience function to exclusively aquire a conditional lock.
|
| void | commit (condlock_t &lock) |
| | Convenience function to commit and release an exclusively locked conditional lock.
|
| void | access (condlock_t &lock) |
| | Convenience function for shared access to a conditional lock.
|
| void | release (condlock_t &lock) |
| | Convenience function to release shared access to a conditional lock.
|
| bool | exclusive (rwlock_t &lock, timeout_t timeout=Timer::inf) |
| | Convenience function for exclusive write access to a read/write lock.
|
| bool | share (rwlock_t &lock, timeout_t timeout=Timer::inf) |
| | Convenience function for shared read access to a read/write lock.
|
| void | release (rwlock_t &lock) |
| | Convenience function to release a shared lock.
|
| void | lock (rexlock_t &lock) |
| | Convenience function to lock a shared recursive mutex lock.
|
| void | release (rexlock_t &lock) |
| | Convenience function to release a shared recursive mutex lock.
|
| void | push (stack_t &stack, Object *object) |
| | Convenience function to push an object onto a stack.
|
| Object * | pull (stack_t &stack, timeout_t timeout=Timer::inf) |
| | Convenience function to pull an object from a stack.
|
| void | remove (stack_t &stack, Object *object) |
| | Convenience function to remove an object from a stack.
|
| void | push (fifo_t &fifo, Object *object) |
| | Convenience function to push an object onto a fifo.
|
| Object * | pull (fifo_t &fifo, timeout_t timeout=Timer::inf) |
| | Convenience function to pull an object from a fifo.
|
| void | remove (fifo_t &fifo, Object *object) |
| | Convenience function to remove an object from a fifo.
|
Common namespace for all ucommon objects.
We are using a common namespace to easily seperate ucommon from other libraries. This namespace may be changed from ucc to gnu when we merge code with GNU Common C++. In any case, it is controlled by macros and so any changes will be hidden from user applications so long as the namespace macros (UCOMMON_NAMESPACE, NAMESPACE_UCOMMON, END_NAMESPACE) are used in place of direct namespace declarations.