SipXportLib Overview
From SipXtapi
Contents |
Overview
The sipXportLib provides OS layer abstraction and utilities for the rest of the sipX libraries so that differences across OS platforms are isolated to the sipXportLib. The sipXportLib provides container and containable objects, queues, sockets, timers, threads, mutex and other common utilities used across other sipX libraries.
Containers
- OsNameDb - name database hash map
- UtlContainer - abstract container
- UtlDList - doubly linked list
- UtlDListIterator - iterator for doubly linked list
- UtlHashBag - key value pairs allowing multiple values for single key
- UtlHashBagIterator - iterator for UtlHashBag
- UtlHashMap key value pairs allowing only one value per key
- UtlHashMapIterator - iterator for UtlHashMap
- UtlIterator - abstract container iterator
- UtlList - abstract list container
- UtlListIterator - abstract list iterator
- UtlSList - singly linked list
- UtlSListIterator - UtlSList iterator
- UtlSortedList - sorted list container
- UtlSortedListIterator - UtlSortedList iterator
Containables
- UtlBool - boolean
- UtlContainable - abstract containable
- UtlDateTime - containable OsDateTime
- UtlInt - integer
- UtlIntPtr - pointer
- UtlLongLong - double integer
- UtlString - string
- UtlVoidPtr - pointer (void*)
OS and File System
- OsDir - file directory
- OsEncryption - Encryption utilities
- OsFile - file system file object
- OsFileInfo file properties
- OsFileIterator - utility to iterate through files
- OsFileSystem - file system object
- OsPath - file system path
- OsProcess - OS process, typically external to application
- OsProcessIterator - OS process iterator
- OsProcessMgr - OS process manager interface
- OsSharedLibMgr - shared library loader and entry point retriever
- OsUtl - misc. OS functions
- Plugin - shared library plugin framework
- UtlRandom - random number generator and seeding
Logging
- OsStackTraceLogger - logging utility to log starting and entering of scope, usually for a method
- OsSysLog - syslog like system logging
- UtlHistogram - keeps histogram of data
Messages and Queues
- OsIntPtrMsg - message containing a pointer
- OsMsg - message base class
- OsMsgDispatcher - message dispatcher and queue
- OsMsgPool pool used to minimize allocs & frees of messages
- OsMsgQ - message queue
- OsPtrMsg - pointer message (void*)
- OsRpcMsg
Multi-Thread Utilities
- OsBSem - Binary Semiphore
- OsEvent - Notification used to signal between threads
- OsLock - thread lock
- OsMutex - mutex
- OsNotification - abstract class for cross thread signaling
- OsQueuedEvent - Notification resulting in a message getting queued
- OsReadLock - read lock, allow multiple reads
- OsRWMutex - read/write mutex
- OsServerTask - task with message queue and abstract handleMessage method
- OsSync - base implementation for syntonization objects
- OsTask - thread class with abstract run method
- OsWriteLock - single write lock
Regular Expression and Parsing
- RegEx - regular expressions
- Crc32 - CRC hash calculator
- UtlNameValueTokenizer - name value pair tokenizer/parser
- UtlTokenizer - string tokenizer/parser
Sockets
- OsDatagramSocket - UDP socket
- OsMulticastSocket - multicast socket
- - OsNatAgentTask - NAT (STUN & TURN) client/server task
- OsNatConnectionSocket - STUN and/or TURN enabled TCP client socket
- OsNatDatagramSocket - STUN and/or TURN enabled UDP socket
- OsNatServerSocket - STUN and/or TURN enabled TCP server socket
- OsServerSocket - TCP server socket
- OsSocket abastract base class for sockets
- StunMessage - STUN Message
- TurnMessage - TURN Message
- UtlCryptoKey - Abstract crypto key used with SSL/TLS and encryption
- UtlCryptoKeyRsa - RSA crypto key
- UtlCryptoKeySym - Symmetric crypto key
Date, Time and Timers
- OsDateTime - date and time container
- OsTime - time container
- OsTimeLog - time snap shot logger
- OsTimer - timer
Tiny XML Parser
- TiXmlBase Tiny XML base node class
- TiXmlDocument - Tiny XML document
