.TH "ost" 3 "Sun Dec 27 2020" "GNU CommonC++" \" -*- nroff -*- .ad l .nh .SH NAME ost .SH SYNOPSIS .br .PP .SS "Classes" .in +1c .ti -1c .RI "class \fBAppLog\fP" .br .RI "Application logger is a class that implements a logger that can be used by applications to save log file somewhere on the system\&. " .ti -1c .RI "class \fBAssoc\fP" .br .RI "This class is used to associate (object) pointers with named strings\&. " .ti -1c .RI "class \fBAtomicCounter\fP" .br .RI "The \fBAtomicCounter\fP class offers thread-safe manipulation of an integer counter\&. " .ti -1c .RI "class \fBBaseObject\fP" .br .RI "\fBBaseObject\fP\&. " .ti -1c .RI "class \fBBuffer\fP" .br .RI "The buffer class represents an IPC service that is built upon a buffer of fixed capacity that can be used to transfer objects between one or more producer and consumer threads\&. " .ti -1c .RI "class \fBCancellation\fP" .br .RI "A class to automatically set the thread cancellation mode of a member function\&. " .ti -1c .RI "class \fBChecksumDigest\fP" .br .RI "A simple checksum digest function\&. " .ti -1c .RI "struct \fBcistring_char_traits\fP" .br .ti -1c .RI "class \fBCommandOption\fP" .br .RI "\fBCommandOption\fP is the base class for all command line options\&. " .ti -1c .RI "class \fBCommandOptionArg\fP" .br .RI "Class for options with an argument e\&.g\&. " .ti -1c .RI "class \fBCommandOptionCollect\fP" .br .RI "It only makes sense to have a single one of these set and it is also exclusive with \fBCommandOptionRest\fP\&. " .ti -1c .RI "class \fBCommandOptionNoArg\fP" .br .RI "\fBCommandOption\fP type for flags\&. " .ti -1c .RI "class \fBCommandOptionParse\fP" .br .RI "This is the \fBCommandOptionParse\fP interface class\&. " .ti -1c .RI "class \fBCommandOptionRest\fP" .br .RI "It only makes sense to have a single one of these set and it is exclusive with \fBCommandOptionCollect\fP\&. " .ti -1c .RI "class \fBCommandOptionWithArg\fP" .br .RI "Derived class of \fBCommandOption\fP for options that have a value associated with them\&. " .ti -1c .RI "class \fBConditional\fP" .br .RI "A conditional variable synchcronization object for one to one and one to many signal and control events between processes\&. " .ti -1c .RI "class \fBCounter\fP" .br .RI "The counter template is used for generic objects which act as automatic counters\&. " .ti -1c .RI "class \fBCRC16Digest\fP" .br .RI "A crc16 collection/compution hash accumulator class\&. " .ti -1c .RI "class \fBCRC32Digest\fP" .br .RI "A crc32 collection/computation hash accumulator class\&. " .ti -1c .RI "class \fBDate\fP" .br .RI "The \fBDate\fP class uses a julian date representation of the current year, month, and day\&. " .ti -1c .RI "class \fBDateNumber\fP" .br .RI "A number class that manipulates a string buffer that is also a date\&. " .ti -1c .RI "class \fBDatetime\fP" .br .RI "The \fBDatetime\fP class uses a julian date representation of the current year, month, and day and a integer representation of the current time\&. " .ti -1c .RI "class \fBDCCPSocket\fP" .br .RI "DCCP sockets are used for stream based connected sessions between two sockets\&. " .ti -1c .RI "class \fBDigest\fP" .br .RI "The digest base class is used for implementing and deriving one way hashing functions\&. " .ti -1c .RI "class \fBDir\fP" .br .RI "A low level portable directory class\&. " .ti -1c .RI "class \fBDirTree\fP" .br .RI "A generic class to walk a hierarchical directory structure\&. " .ti -1c .RI "class \fBDSO\fP" .br .RI "The \fBDSO\fP dynamic loader class is used to load object files\&. " .ti -1c .RI "class \fBEngine\fP" .br .RI "\fBEngine\fP\&. " .ti -1c .RI "class \fBEvent\fP" .br .RI "The \fBEvent\fP class implements a feature originally found in the WIN32 API; event notification\&. " .ti -1c .RI "class \fBFile\fP" .br .ti -1c .RI "class \fBFixedBuffer\fP" .br .RI "A buffer class that holds a known capacity of fixed sized objects defined during creation\&. " .ti -1c .RI "class \fBHEXdump\fP" .br .RI "Produces a dump of a buffer in a hexdump way with its code Ascii translation and relative buffer address\&. " .ti -1c .RI "class \fBIPV4Address\fP" .br .RI "The network name and address objects are all derived from a common \fBIPV4Address\fP base class\&. " .ti -1c .RI "class \fBIPV4Broadcast\fP" .br .RI "The broadcast address object is used to store the broadcast address for a specific subnet\&. " .ti -1c .RI "class \fBIPV4Cidr\fP" .br .RI "The CIDR class is used to support routing tables and validate address policies\&. " .ti -1c .RI "class \fBIPV4Host\fP" .br .RI "This object is used to hold the actual and valid internet address of a specific host machine that will be accessed through a socket\&. " .ti -1c .RI "class \fBIPV4Mask\fP" .br .RI "Internet addresses used specifically as masking addresses (such as ' 255\&.255\&.255\&.0') are held in the \fBIPV4Mask\fP derived object\&. " .ti -1c .RI "class \fBIPV4Multicast\fP" .br .RI "A specialization of \fBIPV4Address\fP that provides address validation for multicast addresses\&. " .ti -1c .RI "class \fBIPV4MulticastValidator\fP" .br .RI "Class for the function object that validates multicast addresses\&. " .ti -1c .RI "class \fBIPV4Validator\fP" .br .RI "Classes derived from \fBIPV4Address\fP would require an specific validator to pass to the \fBIPV4Address\fP constructor\&. " .ti -1c .RI "class \fBIPV6Address\fP" .br .RI "The network name and address objects are all derived from a common \fBIPV6Address\fP base class\&. " .ti -1c .RI "class \fBIPV6Broadcast\fP" .br .RI "The broadcast address object is used to store the broadcast address for a specific subnet\&. " .ti -1c .RI "class \fBIPV6Cidr\fP" .br .RI "The CIDR class is used to support routing tables and validate address policies\&. " .ti -1c .RI "class \fBIPV6Host\fP" .br .RI "This object is used to hold the actual and valid internet address of a specific host machine that will be accessed through a socket\&. " .ti -1c .RI "class \fBIPV6Mask\fP" .br .RI "Internet addresses used specifically as masking addresses (such as ' 255\&.255\&.255\&.0') are held in the \fBIPV6Mask\fP derived object\&. " .ti -1c .RI "class \fBIPV6Multicast\fP" .br .RI "A specialization of \fBIPV6Address\fP that provides address validation for multicast addresses\&. " .ti -1c .RI "class \fBIPV6MulticastValidator\fP" .br .RI "Class for the function object that validates multicast addresses\&. " .ti -1c .RI "class \fBIPV6Validator\fP" .br .RI "Classes derived from \fBIPV6Address\fP would require an specific validator to pass to the \fBIPV6Address\fP constructor\&. " .ti -1c .RI "class \fBIZStream\fP" .br .ti -1c .RI "class \fBKeydata\fP" .br .RI "\fBKeydata\fP objects are used to load and hold 'configuration' data for a given application\&. " .ti -1c .RI "class \fBkeyMap\fP" .br .ti -1c .RI "class \fBLinkedDouble\fP" .br .RI "Self managed double linked list object chain\&. " .ti -1c .RI "class \fBLinkedSingle\fP" .br .RI "Self managed single linked list object chain\&. " .ti -1c .RI "class \fBLockfile\fP" .br .RI "This class is used to create a 'named' lock entity that can be used to control access to a resource between multiple processes\&. " .ti -1c .RI "class \fBMapIndex\fP" .br .RI "The \fBMapIndex\fP allows linear access into a \fBMapTable\fP, that otherwise could have its elements being retrieved only by key\&. " .ti -1c .RI "class \fBMapObject\fP" .br .RI "The \fBMapObject\fP is a base class which can be used to make a derived class operate on a \fBMapTable\fP\&. " .ti -1c .RI "class \fBMappedFile\fP" .br .RI "Create and map a disk file into memory\&. " .ti -1c .RI "class \fBMapTable\fP" .br .RI "A map table allows for entities to be mapped (hash index) onto it\&. " .ti -1c .RI "class \fBMD5Digest\fP" .br .RI "A md5 collection/computation accululator class\&. " .ti -1c .RI "class \fBMemPager\fP" .br .RI "The memory pager is used to allocate cumulative memory pages for storing object specific 'persistant' data that is presumed to persist during the life of a given derived object\&. " .ti -1c .RI "class \fBMemPagerObject\fP" .br .RI "This class is used to create derived classes which are constructed within a memory pager pool\&. " .ti -1c .RI "class \fBMIMEFormData\fP" .br .RI "This is a document part type for use in submitting multipart form data to a web server\&. " .ti -1c .RI "class \fBMIMEItemPart\fP" .br .RI "This is used to attach an item part to a MIME multipart document that is being streamed\&. " .ti -1c .RI "class \fBMIMEMultipart\fP" .br .RI "A container class for multi-part MIME document objects which can be streamed to a std::ostream destination\&. " .ti -1c .RI "class \fBMIMEMultipartForm\fP" .br .RI "The Multipart form is a MIME multipart document specific for the construction and delivery of form data to a web server through a post method\&. " .ti -1c .RI "class \fBMutex\fP" .br .RI "The \fBMutex\fP class is used to protect a section of code so that at any given time only a single thread can perform the protected operation\&. " .ti -1c .RI "class \fBMutexCounter\fP" .br .RI "The \fBMutex\fP \fBCounter\fP is a counter variable which can safely be incremented or decremented by multiple threads\&. " .ti -1c .RI "class \fBMutexLock\fP" .br .RI "The \fBMutexLock\fP class is used to protect a section of code so that at any given time only a single thread can perform the protected operation\&. " .ti -1c .RI "class \fBNetworkDeviceInfo\fP" .br .RI "Network device information class\&. " .ti -1c .RI "class \fBNumber\fP" .br .RI "A number manipulation class\&. " .ti -1c .RI "class \fBobjCounter\fP" .br .RI "Generic template class for creating classes which maintain an active count of the number of instances currently in active use\&. " .ti -1c .RI "class \fBobjList\fP" .br .RI "Used to create and manage a single linked list of objects of a common type\&. " .ti -1c .RI "class \fBobjMap\fP" .br .RI "Used to create and manage a hash index of objects through a common type\&. " .ti -1c .RI "class \fBobjSync\fP" .br .RI "Generic template to create objects of a common base type which share a static mutex so that all instances of the class have a global lock\&. " .ti -1c .RI "class \fBOZStream\fP" .br .ti -1c .RI "class \fBPointer\fP" .br .RI "Used to create and manage referece counted pointers\&. " .ti -1c .RI "class \fBPosixThread\fP" .br .ti -1c .RI "class \fBProcess\fP" .br .RI "A class for containing portable process related functions that help create portable code\&. " .ti -1c .RI "class \fBRandomFile\fP" .br .RI "The purpose of this class is to define a base class for low level random file access that is portable between Win32 and Posix systems\&. " .ti -1c .RI "class \fBReadLock\fP" .br .RI "The \fBReadLock\fP class is used to protect a section of code through a \fBThreadLock\fP for 'read' access to the member function\&. " .ti -1c .RI "class \fBRefObject\fP" .br .RI "A reference countable object\&. " .ti -1c .RI "class \fBRefPointer\fP" .br .RI "\fBPointer\fP to reference counted objects\&. " .ti -1c .RI "class \fBRunable\fP" .br .RI "A container for objects that can be queued against a runlist\&. " .ti -1c .RI "class \fBRunlist\fP" .br .RI "A runlist is used to restrict concurrent exection to a limited set of concurrent sessions, much like a semaphore\&. " .ti -1c .RI "class \fBSemaphore\fP" .br .RI "A semaphore is generally used as a synchronization object between multiple threads or to protect a limited and finite resource such as a memory or thread pool\&. " .ti -1c .RI "class \fBSemaphoreLock\fP" .br .RI "The \fBSemaphoreLock\fP class is used to protect a section of code through a semaphore so that only x instances of the member function may execute concurrently\&. " .ti -1c .RI "class \fBSerial\fP" .br .RI "The \fBSerial\fP class is used as the base for all serial I/O services under APE\&. " .ti -1c .RI "class \fBSerialPort\fP" .br .RI "The serial port is an internal class which is attached to and then serviced by a specified \fBSerialService\fP thread\&. " .ti -1c .RI "class \fBSerialService\fP" .br .RI "The \fBSerialService\fP is a thead service object that is meant to service attached serial ports\&. " .ti -1c .RI "class \fBSharedFile\fP" .br .RI "This class defines a database I/O file service that can be shared by multiple processes\&. " .ti -1c .RI "class \fBSharedMemPager\fP" .br .RI "The shared mempager uses a mutex to protect key access methods\&. " .ti -1c .RI "class \fBSimpleTCPStream\fP" .br .RI "Simple TCP Stream, to be used with Common C++ Library\&. " .ti -1c .RI "class \fBSlog\fP" .br .RI "The slog class is used to stream messages to the system's logging facility (syslogd)\&. " .ti -1c .RI "class \fBSocket\fP" .br .RI "The \fBSocket\fP is used as the base for all Internet protocol services under Common C++\&. " .ti -1c .RI "class \fBSocketPort\fP" .br .RI "The socket port is an internal class which is attached to and then serviced by a specific \fBSocketService\fP 'object'\&. " .ti -1c .RI "class \fBSocketService\fP" .br .RI "The \fBSocketService\fP is a thread pool object that is meant to service attached socket ports\&. " .ti -1c .RI "class \fBSSLStream\fP" .br .ti -1c .RI "class \fBSString\fP" .br .ti -1c .RI "class \fBStackPager\fP" .br .RI "The \fBStackPager\fP provides a repository to stash and retrieve working data in last-in-first-out order\&. " .ti -1c .RI "class \fBString\fP" .br .RI "This is a generic and portable string class\&. " .ti -1c .RI "class \fBStringObject\fP" .br .RI "The \fBStringObject\fP class is used to derive subclasses that use the \fBString\fP managed memory pool for all space allocations by overriding new and delete operators\&. " .ti -1c .RI "class \fBStringTokenizer\fP" .br .RI "Splits delimited string into tokens\&. " .ti -1c .RI "class \fBSysTime\fP" .br .RI "This class is used to access non-reentrant date and time functions in the standard C library\&. " .ti -1c .RI "class \fBTCPSession\fP" .br .RI "The TCP session is used to primarily to represent a client connection that can be managed on a separate thread\&. " .ti -1c .RI "class \fBTCPSocket\fP" .br .RI "TCP sockets are used for stream based connected sessions between two sockets\&. " .ti -1c .RI "class \fBTCPStream\fP" .br .RI "TCP streams are used to represent TCP client connections to a server by TCP protocol servers for accepting client connections\&. " .ti -1c .RI "class \fBTCPV6Socket\fP" .br .RI "TCPV6 sockets are used for stream based connected sessions between two ipv6 sockets\&. " .ti -1c .RI "class \fBThread\fP" .br .RI "Every thread of execution in an application is created by instantiating an object of a class derived from the \fBThread\fP class\&. " .ti -1c .RI "class \fBThreadFile\fP" .br .RI "This class defines a database I/O file service that can be shared by multiple threads\&. " .ti -1c .RI "class \fBThreadKey\fP" .br .RI "This class allows the creation of a thread context unique 'pointer' that can be set and retrieved and can be used to create thread specific data areas for implementing 'thread safe' library routines\&. " .ti -1c .RI "class \fBThreadLock\fP" .br .RI "The \fBThreadLock\fP class impliments a thread rwlock for optimal reader performance on systems which have rwlock support, and reverts to a simple mutex for those that do not\&. " .ti -1c .RI "class \fBThreadQueue\fP" .br .RI "Somewhat generic queue processing class to establish a producer consumer queue\&. " .ti -1c .RI "class \fBTime\fP" .br .RI "The \fBTime\fP class uses a integer representation of the current time\&. " .ti -1c .RI "class \fBTimerPort\fP" .br .RI "Timer ports are used to provide synchronized timing events when managed under a 'service thread' such as \fBSocketService\fP\&. " .ti -1c .RI "class \fBTTYSession\fP" .br .RI "The \fBTTYSession\fP aggragates a \fBTTYStream\fP and a Common C++ \fBThread\fP which is assumed to be the execution context that will be used to perform actual I/O operations\&. " .ti -1c .RI "class \fBTTYStream\fP" .br .RI "TTY streams are used to represent serial connections that are fully 'streamable' objects using C++ stream classes and friends\&. " .ti -1c .RI "class \fBttystream\fP" .br .RI "A more natural C++ 'ttystream' class for use by non-threaded applications\&. " .ti -1c .RI "class \fBTypeManager\fP" .br .RI "This class manages the types for generation of the persistent objects\&. " .ti -1c .RI "class \fBUDPBroadcast\fP" .br .RI "Representing a UDP socket used for subnet broadcasts, this class provides an alternate binding and setPeer() capability for UDP sockets\&. " .ti -1c .RI "class \fBUDPDuplex\fP" .br .RI "UDP duplex connections impliment a bi-directional point-to-point UDP session between two peer hosts\&. " .ti -1c .RI "class \fBUDPReceive\fP" .br .RI "Representing half of a two-way UDP connection, the UDP receiver can receive data from another peer host or subnet\&. " .ti -1c .RI "class \fBUDPSocket\fP" .br .RI "UDP sockets implement the TCP SOCK_DGRAM UDP protocol\&. " .ti -1c .RI "class \fBUDPTransmit\fP" .br .RI "Representing half of a two-way UDP connection, the UDP transmitter can broadcast data to another selected peer host or to an entire subnet\&. " .ti -1c .RI "class \fBUnixSession\fP" .br .RI "The Unix domain session is used to primarily to represent a client connection that can be managed on a separate thread\&. " .ti -1c .RI "class \fBUnixSocket\fP" .br .RI "Unix domain sockets are used for stream based connected sessions between processes on the same machine\&. " .ti -1c .RI "class \fBunixstream\fP" .br .RI "A more natural C++ 'unixstream' class for use by non-threaded applications\&. " .ti -1c .RI "class \fBUnixStream\fP" .br .RI "Unix streams are used to represent Unix domain client connections to a local server for accepting client connections\&. " .ti -1c .RI "class \fBURLStream\fP" .br .RI "A URL processing version of \fBTCPStream\fP\&. " .ti -1c .RI "class \fBWriteLock\fP" .br .RI "The \fBWriteLock\fP class is used to protect a section of code through a \fBThreadLock\fP for 'write' access to the member function\&. " .ti -1c .RI "class \fBXMLRPC\fP" .br .RI "This class impliments a core \fBXMLRPC\fP service without the underlying transports\&. " .ti -1c .RI "class \fBXMLStream\fP" .br .RI "This class impliments a basic XML stream parser that can be used to examine an XML resource thru virtual I/O methods\&. " .ti -1c .RI "class \fBZNumber\fP" .br .in -1c .SS "Typedefs" .in +1c .ti -1c .RI "typedef unsigned short \fBtpport_t\fP" .br .RI "Transport Protocol Ports\&. " .ti -1c .RI "typedef unsigned long \fBpos_t\fP" .br .ti -1c .RI "typedef size_t \fBccxx_size_t\fP" .br .ti -1c .RI "typedef std::string_char_traits< char > \fBcstring_char_traits\fP" .br .ti -1c .RI "typedef std::basic_string< char > \fBcstring\fP" .br .ti -1c .RI "typedef std::basic_string< char, \fBcistring_char_traits\fP< char > > \fBcistring\fP" .br .ti -1c .RI "typedef class \fBBaseObject\fP *(* \fBNewBaseObjectFunction\fP) (void)" .br .ti -1c .RI "typedef int \fBsigno_t\fP" .br .in -1c .SS "Functions" .in +1c .ti -1c .RI "\fB__EXPORT\fP std::ostream & \fBoperator<<\fP (std::ostream &os, const \fBIPV4Address\fP &ia)" .br .ti -1c .RI "struct in_addr \fBgetaddress\fP (const \fBIPV4Address\fP &ia)" .br .ti -1c .RI "\fB__EXPORT\fP std::ostream & \fBoperator<<\fP (std::ostream &os, const \fBIPV6Address\fP &ia)" .br .ti -1c .RI "struct in6_addr \fBgetaddress\fP (const \fBIPV6Address\fP &ia)" .br .ti -1c .RI "\fB__EXPORT\fP \fBAppLog\fP & \fBdebug\fP (\fBAppLog\fP &sl)" .br .RI "Manipulator for debug level\&. " .ti -1c .RI "\fB__EXPORT\fP \fBAppLog\fP & \fBwarn\fP (\fBAppLog\fP &sl)" .br .RI "Manipulator for warn level\&. " .ti -1c .RI "\fB__EXPORT\fP \fBAppLog\fP & \fBerror\fP (\fBAppLog\fP &sl)" .br .RI "Manipulator for error level\&. " .ti -1c .RI "\fB__EXPORT\fP \fBAppLog\fP & \fBemerg\fP (\fBAppLog\fP &sl)" .br .RI "Manipulator for emerg level\&. " .ti -1c .RI "\fB__EXPORT\fP \fBAppLog\fP & \fBalert\fP (\fBAppLog\fP &sl)" .br .RI "Manipulator for alert level\&. " .ti -1c .RI "\fB__EXPORT\fP \fBAppLog\fP & \fBcritical\fP (\fBAppLog\fP &sl)" .br .RI "Manipulator for critical level\&. " .ti -1c .RI "\fB__EXPORT\fP \fBAppLog\fP & \fBnotice\fP (\fBAppLog\fP &sl)" .br .RI "Manipulator for notice level\&. " .ti -1c .RI "\fB__EXPORT\fP \fBAppLog\fP & \fBinfo\fP (\fBAppLog\fP &sl)" .br .RI "Manipulator for info level\&. " .ti -1c .RI "\fB__EXPORT\fP \fBCommandOptionParse\fP * \fBmakeCommandOptionParse\fP (int argc, char **argv, const char *comment, \fBCommandOption\fP *options=\fBdefaultCommandOptionList\fP)" .br .RI "makeCommandOptionParse will create an implementation of a \fBCommandOptionParse\fP object\&. " .ti -1c .RI "template const T & \fBabs\fP (const T &v)" .br .ti -1c .RI "\fB__EXPORT\fP void \fBendKeydata\fP (void)" .br .ti -1c .RI "\fB__EXPORT\fP void * \fBmemmove\fP (char *dest, const char *source, size_t length)" .br .ti -1c .RI "\fB__EXPORT\fP char * \fBstrdup\fP (const char *str)" .br .ti -1c .RI "\fB__EXPORT\fP int \fBlockf\fP (int fd, int mode, long offset)" .br .ti -1c .RI "char * \fBstrtok_r\fP (char *s, const char *d, char **x)" .br .ti -1c .RI "\fB__EXPORT\fP char * \fBlsetField\fP (char *target, size_t size, const char *src, const char fill=0)" .br .ti -1c .RI "\fB__EXPORT\fP char * \fBrsetField\fP (char *target, size_t size, const char *src, const char fill=0)" .br .ti -1c .RI "\fB__EXPORT\fP char * \fBsetString\fP (char *target, size_t size, const char *src)" .br .ti -1c .RI "\fB__EXPORT\fP char * \fBaddString\fP (char *target, size_t size, const char *src)" .br .ti -1c .RI "\fB__EXPORT\fP char * \fBnewString\fP (const char *src, size_t size=0)" .br .ti -1c .RI "\fB__EXPORT\fP void \fBdelString\fP (char *str)" .br .ti -1c .RI "\fB__EXPORT\fP char * \fBsetUpper\fP (char *string, size_t size)" .br .ti -1c .RI "\fB__EXPORT\fP char * \fBsetLower\fP (char *string, size_t size)" .br .ti -1c .RI "\fB__EXPORT\fP char * \fBfind\fP (const char *cs, char *str, size_t len=0)" .br .ti -1c .RI "\fB__EXPORT\fP char * \fBrfind\fP (const char *cs, char *str, size_t len=0)" .br .ti -1c .RI "\fB__EXPORT\fP char * \fBifind\fP (const char *cs, char *str, size_t len=0)" .br .ti -1c .RI "\fB__EXPORT\fP char * \fBstrip\fP (const char *cs, char *str, size_t len=0)" .br .ti -1c .RI "\fB__EXPORT\fP size_t \fBstrchop\fP (const char *cs, char *str, size_t len=0)" .br .ti -1c .RI "\fB__EXPORT\fP size_t \fBstrtrim\fP (const char *cs, char *str, size_t len=0)" .br .ti -1c .RI "char * \fBdupString\fP (const char *src, size_t size=0)" .br .ti -1c .RI "\fB__EXPORT\fP std::istream & \fBgetline\fP (std::istream &is, \fBString\fP &str, char delim='\\n', size_t size=0)" .br .ti -1c .RI "struct timespec * \fBgetTimeout\fP (struct timespec *spec, \fBtimeout_t\fP timeout)" .br .ti -1c .RI "void \fBwait\fP (\fBsigno_t\fP signo)" .br .ti -1c .RI "\fBThread\fP * \fBgetThread\fP (void)" .br .ti -1c .RI "struct tm * \fBlocaltime_r\fP (const time_t *t, struct tm *b)" .br .ti -1c .RI "char * \fBctime_r\fP (const time_t *t, char *buf)" .br .ti -1c .RI "struct tm * \fBgmtime_r\fP (const time_t *t, struct tm *b)" .br .ti -1c .RI "char * \fBasctime_r\fP (const struct tm *tm, char *b)" .br .in -1c .SS "Variables" .in +1c .ti -1c .RI "class \fB__EXPORT\fP \fBIPV4Host\fP" .br .ti -1c .RI "class \fB__EXPORT\fP \fBIPV6Host\fP" .br .ti -1c .RI "\fB__EXPORT\fP \fBAppLog\fP \fBalog\fP" .br .RI "alog global log stream definition " .ti -1c .RI "\fB__EXPORT\fP \fBCommandOption\fP * \fBdefaultCommandOptionList\fP" .br .RI "This defines a linked list head pointer for all the command line options that use the default list\&. " .ti -1c .RI "class \fB__EXPORT\fP \fBMIMEMultipart\fP" .br .ti -1c .RI "class \fB__EXPORT\fP \fBMIMEItemPart\fP" .br .ti -1c .RI "class \fB__EXPORT\fP \fBRunlist\fP" .br .ti -1c .RI "class \fB__EXPORT\fP \fBRunable\fP" .br .ti -1c .RI "class \fB__EXPORT\fP \fBMapObject\fP" .br .ti -1c .RI "class \fB__EXPORT\fP \fBMapIndex\fP" .br .ti -1c .RI "class \fB__EXPORT\fP \fBSerialPort\fP" .br .ti -1c .RI "class \fB__EXPORT\fP \fBSerialService\fP" .br .ti -1c .RI "\fB__EXPORT\fP \fBSlog\fP \fBslog\fP" .br .ti -1c .RI "class \fB__EXPORT\fP \fBSimpleTCPStream\fP" .br .ti -1c .RI "class \fB__EXPORT\fP \fBSocketPort\fP" .br .ti -1c .RI "class \fB__EXPORT\fP \fBSocketService\fP" .br .ti -1c .RI "class \fB__EXPORT\fP \fBThread\fP" .br .ti -1c .RI "class \fB__EXPORT\fP \fBThreadKey\fP" .br .ti -1c .RI "class \fB__EXPORT\fP \fBConditional\fP" .br .ti -1c .RI "class \fB__EXPORT\fP \fBEvent\fP" .br .in -1c .SH "Typedef Documentation" .PP .SS "typedef size_t \fBost::ccxx_size_t\fP" .SS "typedef std::basic_string > \fBost::cistring\fP" .SS "typedef std::basic_string \fBost::cstring\fP" .SS "typedef std::string_char_traits \fBost::cstring_char_traits\fP" .SS "typedef class \fBBaseObject\fP*(* ost::NewBaseObjectFunction) (void)" .SS "typedef unsigned long \fBost::pos_t\fP" .SS "typedef int \fBost::signo_t\fP" .SS "typedef unsigned short \fBost::tpport_t\fP" .PP Transport Protocol Ports\&. .PP \fBExamples\fP .in +1c \fBSampleSocketPort\&.cpp\fP\&. .SH "Function Documentation" .PP .SS "template const T& ost::abs (const T & v)\fC [inline]\fP" .SS "\fB__EXPORT\fP char* ost::addString (char * target, size_t size, const char * src)" .SS "\fB__EXPORT\fP \fBAppLog\fP& ost::alert (\fBAppLog\fP & sl)\fC [inline]\fP" .PP Manipulator for alert level\&. .PP \fBParameters\fP .RS 4 \fIsl\fP application logger stream .RE .PP \fBReturns\fP .RS 4 application logger stream .RE .PP .SS "char* ost::asctime_r (const struct tm * tm, char * b)\fC [inline]\fP" .SS "\fB__EXPORT\fP \fBAppLog\fP& ost::critical (\fBAppLog\fP & sl)\fC [inline]\fP" .PP Manipulator for critical level\&. .PP \fBParameters\fP .RS 4 \fIsl\fP application logger stream .RE .PP \fBReturns\fP .RS 4 application logger stream .RE .PP .SS "char* ost::ctime_r (const time_t * t, char * buf)\fC [inline]\fP" .SS "\fB__EXPORT\fP \fBAppLog\fP& ost::debug (\fBAppLog\fP & sl)\fC [inline]\fP" .PP Manipulator for debug level\&. .PP \fBParameters\fP .RS 4 \fIsl\fP application logger stream .RE .PP \fBReturns\fP .RS 4 application logger stream .RE .PP .SS "\fB__EXPORT\fP void ost::delString (char * str)" .SS "char* ost::dupString (const char * src, size_t size = \fC0\fP)\fC [inline]\fP" .PP References newString()\&. .SS "\fB__EXPORT\fP \fBAppLog\fP& ost::emerg (\fBAppLog\fP & sl)\fC [inline]\fP" .PP Manipulator for emerg level\&. .PP \fBParameters\fP .RS 4 \fIsl\fP application logger stream .RE .PP \fBReturns\fP .RS 4 application logger stream .RE .PP .SS "\fB__EXPORT\fP void ost::endKeydata (void)" This should be used before detaching a deamon, \fCexec()\fP, \fCfork()\fP, etc\&. .PP References ost::Keydata::end()\&. .SS "\fB__EXPORT\fP \fBAppLog\fP& ost::error (\fBAppLog\fP & sl)\fC [inline]\fP" .PP Manipulator for error level\&. .PP \fBParameters\fP .RS 4 \fIsl\fP application logger stream .RE .PP \fBReturns\fP .RS 4 application logger stream .RE .PP .PP Referenced by ost::RandomFile::error(), ost::Serial::error(), and ost::Socket::error()\&. .SS "\fB__EXPORT\fP char* ost::find (const char * cs, char * str, size_t len = \fC0\fP)" .PP Referenced by ost::String::find()\&. .SS "struct in_addr ost::getaddress (const \fBIPV4Address\fP & ia)\fC [inline]\fP" .SS "struct in6_addr ost::getaddress (const \fBIPV6Address\fP & ia)\fC [inline]\fP" .SS "\fB__EXPORT\fP std::istream& ost::getline (std::istream & is, \fBString\fP & str, char delim = \fC'\\n'\fP, size_t size = \fC0\fP)" .PP \fBParameters\fP .RS 4 \fIis\fP stream to read\&. .br \fIstr\fP string to save into\&. .br \fIdelim\fP deliminator to use\&. .br \fIsize\fP optional size limitor\&. .RE .PP .SS "\fBThread\fP* ost::getThread (void)\fC [inline]\fP" .PP References ost::Thread::get()\&. .SS "struct timespec* ost::getTimeout (struct timespec * spec, \fBtimeout_t\fP timeout)" .SS "struct tm* ost::gmtime_r (const time_t * t, struct tm * b)\fC [inline]\fP" .PP References ost::SysTime::getGMTTime()\&. .SS "\fB__EXPORT\fP char* ost::ifind (const char * cs, char * str, size_t len = \fC0\fP)" .SS "\fB__EXPORT\fP \fBAppLog\fP& ost::info (\fBAppLog\fP & sl)\fC [inline]\fP" .PP Manipulator for info level\&. .PP \fBParameters\fP .RS 4 \fIsl\fP application logger stream .RE .PP \fBReturns\fP .RS 4 application logger stream .RE .PP .SS "struct tm* ost::localtime_r (const time_t * t, struct tm * b)\fC [inline]\fP" .PP References ost::SysTime::getLocalTime()\&. .SS "\fB__EXPORT\fP int ost::lockf (int fd, int mode, long offset)" .SS "\fB__EXPORT\fP char* ost::lsetField (char * target, size_t size, const char * src, const char fill = \fC0\fP)" .SS "\fB__EXPORT\fP \fBCommandOptionParse\fP* ost::makeCommandOptionParse (int argc, char ** argv, const char * comment, \fBCommandOption\fP * options = \fC\fBdefaultCommandOptionList\fP\fP)" .PP makeCommandOptionParse will create an implementation of a \fBCommandOptionParse\fP object\&. This particular implementation is a wrapper around getopt_long(3)\&. That interface unfortunatly does not provide enough information to give the best error messages with malformed input\&. If the implementation changes there is a good chance that the binary interface will remain the same\&. .PP \fBExamples\fP .in +1c \fBcmdlineopt\&.cpp\fP\&. .SS "\fB__EXPORT\fP void* ost::memmove (char * dest, const char * source, size_t length)" .SS "\fB__EXPORT\fP char* ost::newString (const char * src, size_t size = \fC0\fP)" .PP Referenced by dupString()\&. .SS "\fB__EXPORT\fP \fBAppLog\fP& ost::notice (\fBAppLog\fP & sl)\fC [inline]\fP" .PP Manipulator for notice level\&. .PP \fBParameters\fP .RS 4 \fIsl\fP application logger stream .RE .PP \fBReturns\fP .RS 4 application logger stream .RE .PP .SS "\fB__EXPORT\fP std::ostream& ost::operator<< (std::ostream & os, const \fBIPV4Address\fP & ia)" .SS "\fB__EXPORT\fP std::ostream& ost::operator<< (std::ostream & os, const \fBIPV6Address\fP & ia)" .SS "\fB__EXPORT\fP char* ost::rfind (const char * cs, char * str, size_t len = \fC0\fP)" .SS "\fB__EXPORT\fP char* ost::rsetField (char * target, size_t size, const char * src, const char fill = \fC0\fP)" .SS "\fB__EXPORT\fP char* ost::setLower (char * string, size_t size)" .SS "\fB__EXPORT\fP char* ost::setString (char * target, size_t size, const char * src)" .SS "\fB__EXPORT\fP char* ost::setUpper (char * string, size_t size)" .SS "\fB__EXPORT\fP size_t ost::strchop (const char * cs, char * str, size_t len = \fC0\fP)" .PP Referenced by ost::String::chop()\&. .SS "\fB__EXPORT\fP char* ost::strdup (const char * str)" .SS "\fB__EXPORT\fP char* ost::strip (const char * cs, char * str, size_t len = \fC0\fP)" .SS "char* ost::strtok_r (char * s, const char * d, char ** x)\fC [inline]\fP" .SS "\fB__EXPORT\fP size_t ost::strtrim (const char * cs, char * str, size_t len = \fC0\fP)" .PP Referenced by ost::String::trim()\&. .SS "void ost::wait (\fBsigno_t\fP signo)" .PP \fBExamples\fP .in +1c \fBcmdlineopt\&.cpp\fP\&. .SS "\fB__EXPORT\fP \fBAppLog\fP& ost::warn (\fBAppLog\fP & sl)\fC [inline]\fP" .PP Manipulator for warn level\&. .PP \fBParameters\fP .RS 4 \fIsl\fP application logger stream .RE .PP \fBReturns\fP .RS 4 application logger stream .RE .PP .SH "Variable Documentation" .PP .SS "\fB__EXPORT\fP \fBAppLog\fP ost::alog\fC [extern]\fP" .PP alog global log stream definition .SS "class \fB__EXPORT\fP \fBost::Conditional\fP" .SS "\fB__EXPORT\fP \fBCommandOption\fP* ost::defaultCommandOptionList\fC [extern]\fP" .PP This defines a linked list head pointer for all the command line options that use the default list\&. It will most likely be used in most cases without being explicitly referenced in application code\&. It is a default value of various method's parameters\&. .PP \fBExamples\fP .in +1c \fBcmdlineopt\&.cpp\fP\&. .SS "class \fB__EXPORT\fP \fBost::Event\fP" .SS "class \fB__EXPORT\fP \fBost::IPV4Host\fP" .SS "class \fB__EXPORT\fP \fBost::IPV6Host\fP" .SS "class \fB__EXPORT\fP \fBost::MapIndex\fP" .SS "class \fB__EXPORT\fP \fBost::MapObject\fP" .SS "class \fB__EXPORT\fP \fBost::MIMEItemPart\fP" .SS "class \fB__EXPORT\fP \fBost::MIMEMultipart\fP" .SS "class \fB__EXPORT\fP \fBost::Runable\fP" .SS "class \fB__EXPORT\fP \fBost::Runlist\fP" .SS "class \fB__EXPORT\fP \fBost::SerialPort\fP" .SS "class \fB__EXPORT\fP \fBost::SerialService\fP" .SS "class \fB__EXPORT\fP \fBost::SimpleTCPStream\fP" .SS "\fB__EXPORT\fP \fBSlog\fP ost::slog\fC [extern]\fP" .PP \fBExamples\fP .in +1c \fBslogTest\&.cpp\fP\&. .SS "class \fB__EXPORT\fP \fBost::SocketPort\fP" .PP \fBExamples\fP .in +1c \fBSampleSocketPort\&.cpp\fP\&. .SS "class \fB__EXPORT\fP \fBost::SocketService\fP" .PP \fBExamples\fP .in +1c \fBSampleSocketPort\&.cpp\fP, and \fBtcpservice\&.cpp\fP\&. .SS "class \fB__EXPORT\fP \fBost::Thread\fP" .PP \fBExamples\fP .in +1c \fBSampleSocketPort\&.cpp\fP\&. .SS "class \fB__EXPORT\fP \fBost::ThreadKey\fP" .SH "Author" .PP Generated automatically by Doxygen for GNU CommonC++ from the source code\&.