►Nalgorithms | |
Cheap | |
►Napplication | Implements an application lock to ensure only one is running at once |
Capplication_shell | The application_shell is a base object for console programs |
Cbase_application | Provides a base object for the root application portion of a program |
Ccommand_parameter | |
Ccommand_line | |
Choople_service | A platform-independent way to alert a program that it should shut down immediately |
Claunch_manager | Provides methods for starting, stopping and checking on processes |
Cstdio_redirecter | Redirects I/O for a newly launched application |
Cshared_memory | Implements storage for memory that can be shared between threads |
Csingleton_application | |
►Nbasis | The guards collection helps in testing preconditions and reporting errors |
Carray | Represents a sequential, ordered, contiguous collection of objects |
Cint_array | A simple object that wraps a templated array of ints |
Cdouble_array | An array of double floating point numbers |
Castring | Provides a dynamically resizable ASCII character string |
Ca_sprintf | A_sprintf is a specialization of astring that provides printf style support |
Cbase_string | Defines the base class for all string processing objects in hoople |
Cbyte_array | A very common template for a dynamic array of bytes |
Cpackable | A base class for objects that can pack into an array of bytes |
Ccommon | "common" class defines our common_outcomes |
Cattribute | Defines an attribute base class that supports get and set operations |
Cequalizable | Base class for object that can tell itself apart from other instances |
Corderable | A base for objects that can be alphabetically (lexicographically) ordered |
Cbase_logger | Provides an abstract base for logging mechanisms |
Cbase_synchronizer | Interface for a simple form of synchronization |
Cclonable | A clonable object knows how to make copy of itself |
Cnameable | Root object for any class that knows its own name |
Ctext_formable | A base class for objects that can provide a synopsis of their current state |
Choople_standard | Base class of the most easily used and tested objects in the library |
Ctext_streamable | Base for classes that can stream their contents out to a textual form |
Cenhance_cpp | |
Cenvironment | Provides access to the system's environment variables |
Cmutex | |
Cauto_synchronizer | Auto_synchronizer simplifies concurrent code by automatically unlocking |
Coutcome | Outcomes describe the state of completion for an operation |
►Nconfiguration | |
Cregistry_configurator | Supports the configurator class interface on the windows registry |
Capplication_configuration | Defines installation-specific locations in the file system |
Cconfig_watcher | Object that watches the contents of a configurator for changes |
Cconfiglet | Represents an atom of configuration info |
Cstring_configlet | String_configlet holds onto a character string value |
Cint_configlet | Stores a simple integer in a configuration repository |
Cbounded_int_configlet | Stores an integer in a configuration repository with range checking |
Cconfiguration_list | Manages a collection of configlet objects |
Cconfigurator | Provides a base class for configuration repositories |
Cini_configurator | Supports a configurator-based interface on text initialization files |
Cini_parser | Parses strings in the fairly well-known INI file format |
Cini_roller | Implements an id generator that interacts with a configuration file |
Csection_manager | Tracks a collection of related configurations in a configurator |
Csystem_values | This class provides a way to look up generated values used in the code base |
Ctable_configurator | Supports the configurator interface using a collection of string tables |
Cvariable_tokenizer | Manages a bank of textual definitions of variables |
►Ncromp | |
Ccromp_client | |
Ccromp_common | A few common features used by both CROMP clients and servers |
Ccromp_security | Implements the client registry in a cromp-appropriate manner |
Ccromp_server | |
Ccromp_transaction | |
►Ncrypto | |
Cblowfish_crypto | Provides BlowFish encryption on byte_arrays using the OpenSSL package |
Crsa_crypto | Supports public key encryption and decryption |
Cssl_init | Some initialization for the RSA and blowfish crypto |
Neml_to_txt | |
►Nfilesystem | A platform independent way to obtain the timestamp of a file |
Cbyte_filer | Provides file managment services using the standard I/O support |
Cdirectory | Implements a scanner that finds all filenames in the directory specified |
Cdirectory_tree | An object that traverses directory trees and provides a view of all files |
Cfile_info | Encapsulates some measures and calculations based on a file's contents |
Cfile_time | |
Cfilename | Provides operations commonly needed on file names |
Cfilename_list | |
Cfilename_tree | |
Cfname_tree_creator | This is the tree factory used in the recursive_unpack |
Cfile_transfer_header | Describes one portion of an ongoing file transfer |
Cheavy_file_operations | Provides serious file operations, such as copy and partial writing |
Chuge_file | Supports reading and writing to very large files, > 4 gigabytes |
►Nfix_project_references | |
Cfix_project_references | |
►Ngeometric | Contains all of our objects for geometry and avoids name clashes |
Cangle | |
Cdouble_angle | Double_angle provides a non-templated class for forward declarations |
Ccartesian_point | Provides a geometric point that use double floating points numbers |
Ccartesian_line | Provides a geometric line that use double floating points numbers |
Ccartesian_rectangle | Provides a geometric rectangle that use double floating points numbers |
Ccircle | Represents a geometric circle |
Cellipse | Represents a geometric ellipse |
Cline | Represents a geometric line segment |
Cpoint | Represents a geometric point |
Cpolygon | |
Crectangle | Represents a geometric rectangle |
Cscreen_point | Simple class used to describe points on a graphics screen |
Cscreen_rectangle | Represents a rectangle as interpreted on display screens |
Ctriangle | Represents a geometric triangle |
Crectangle_warper | |
►Nloggers | A logger that sends to the console screen using the standard output device |
Ccombo_logger | Combines a file_logger with a console logger, behaving like the 'tee' command |
Cconsole_logger | |
Ccritical_events | Provides a means of logging events for runtime problems |
Ceol_aware | Provides an abstract base for logging mechanisms |
Cfile_logger | |
Cfilter_set | A simple object that wraps a templated set of ints |
Cprogram_wide_logger | A class that provides logging facilities vertically to all of hoople |
Cnull_logger | Trash can for logging; throws away all entries |
Cstandard_log_base | A base class for a very usable logger with a filter_set and eol awareness |
►Nmathematics | An extension to floating point primitives providing approximate equality |
►Caverager | Maintains a list of numbers and provides the average for them |
Cweighted_entry | Structure holding a weighted chunk of the average |
Cint_averager | Keeps an average on a stream of integers |
Cchaos | Platform-independent way to acquire random numbers in a specific range |
Cdouble_plus | |
Cmath_ops | A grab-bag of mathematical functions that are frequently useful |
►Nnodes | |
►Cdoubly_linked_list | Implements a guarded, doubly linked list structure |
Citerator | Iterators allow the list to be traversed |
Cnode | An object representing the interstitial cell in most linked data structures |
Cbasket | Basket class holds an object and supports connecting them as nodes |
Cpackable_tree | A tree object that can be packed into an array of bytes and unpacked again |
Cpackable_tree_factory | |
Cpath | A method for tracing a route from a tree's root to a particular node |
Csingly_linked_list | Implements a singly-linked list structure |
Csymbol_tree | A symbol table that supports scope nesting and/or trees of symbol tables |
►Ctree | A dynamically linked tree with an arbitrary number of branches |
Citerator | |
►Noctopi | |
Centity_data_bin | Stores a set of infotons grouped by the entity that owns them |
Coctopus_entity | Provides a way of identifying users of an octopus object |
Coctopus_request_id | Identifies requests made on an octopus by users |
Coctopus_request_id_set | Collection of unique request ids |
Cinfoton_id_pair | Implements a list of waiting infotons |
Cinfoton_list | List of pending requests and who made them |
Cidentity_infoton | Encapsulates just the action of identifying an octopus user |
Cidentity_tentacle | Supports an early step in using octopus services: getting an identity |
Cinfoton | An infoton is an individual request parcel with accompanying information |
Coctopus | Octopus is a design pattern for generalized request processing systems |
Ctentacle | Manages a service within an octopus by processing certain infotons |
Ctentacle_helper | Prefab implementations for parts of the tentacle object |
Cunhandled_request | Informs the caller that a request type was unknown to the server octopus |
Cunhandled_request_tentacle | |
Cencryption_infoton | Encapsulates the chit-chat necessary to establish an encrypted connection |
Cencryption_tentacle | Processes the encryption_infoton object for setting up an encrypted channel |
Cencryption_wrapper | Wraps an encrypted infoton when the octopus is in an encrypted mode |
Cunwrapping_tentacle | This simple tentacle just unpacks the encryption_wrapper infoton |
Centity_registry | Provides a security model for the octopus |
Cblank_entity_registry | Blank_entity_registry can be used when security is not an issue |
Cfile_transfer_infoton | Base objects used by the file transfer tentacle to schedule transfers |
Cfile_transfer_tentacle | Manages the transferrence of directory trees from one place to another |
Coctenc_key_record | Tracks the keys that have been assigned for a secure channel |
Ckey_repository | |
Clogin_tentacle | Provides rudimentary login services |
Crecursive_file_copy | Copies entire hierarchies in the file system from one place to another |
Csecurity_infoton | Encapsulates security activities (login, logout, refresh) |
Csimple_entity_registry | Provides a basic implementation of an entity_registry for octopus |
None_line_cert_to_pem | |
►Norg | |
►Nfeistymeow | |
►Nalgorithms | |
CBinarySearchTree< K extends Comparable | |
CRectangleIntersector | |
CSubstringFinder | |
►Ndragdrop | |
►Cdragdrop_list_test | |
CCustomCellRenderer | |
CDraggableDroppableList | |
►Cdragdrop_tree_test | |
CCustomCellRenderer | |
CDraggableDroppableTree | |
CDragonTransferHandler | |
CIDragonDropDataProvider | |
CListTransferable | |
►Nencryption | |
CUnixCrypt | |
►Nexample | |
CZSorter< T extends Comparable | |
►Nfilesystem | |
CPathHelper | |
►Nnetworking | |
►CBasicWebServer | |
CservingThread | |
►Nprocess | |
Cethread | |
►Nsystem | |
CRegistryEditor | |
CRegistryEditorTestCase | |
►Ntextual | |
CSimpleDictionary | |
CWordBreakFinder | |
►Nutility | |
CExtemporizer | |
CNaming | |
►Nwindowing | |
CExitListener | |
CWindowUtilities | |
►Ngffs | |
►Napplication | |
CMemoryFootprint | |
CProgramTools | |
►Ncache | |
CTimedOutLRUCache | |
►Ncompression | |
CPackTar | |
►CUnpackTar | |
CarchiveType | |
►Nfilesystem | |
CFileSystemHelper | |
►Nio | |
CIOUtils | |
►Nnetwork | |
CDeadHostChecker | |
CURLDownloader | |
►Nversion | |
CVersion | |
CVersionManager | |
►Nphrase_replacer | |
Cphrase_replacer | |
►Nprocesses | |
Cconfigured_applications | Manages the initialization file for a set of registered applications |
Cethread | Provides a platform-independent object for adding threads to a program |
Cheartbeat | Monitors a periodic heartbeat to track a resource's health |
Cchar_star_array | Simple wrapper of an array of char *, used by launch_process::break_line() |
Claunch_process | Provides the capability to start processes in a variety of ways to run other applications |
Cletter | A virtual base class for pieces of "mail". Used by the mailbox object |
►Cmail_stop | Base class for routes on which letters are automatically delivered |
Citems_to_deliver | |
Cmailbox | Implements a thread safe "mail" delivery system |
COS_event | Models an OS-level event so we can represent activities occurring there |
Cpost_office | Manages a collection of mailboxes and implements delivery routes for mail |
Cprocess_control | Provides a bridge to the operating system for information on processes |
Cprocess_entry | Encapsulates information about OS processes |
Cprocess_entry_array | Handy class that implements an array of process entries |
Crendezvous | An inter-process synchronization primitive |
Csafe_callback | A reasonably easy way to make callbacks safe from shutdown ordering issues |
Ccallback_data_block | Simple place-holder that anonymizes the type passed to the callback |
Csafe_roller | Implements a thread-safe roller object |
Cstate_machine | Monitors objects with multiple states and the transitions between states |
Ctransition_map | The transition_map manages state machines and causes state changes to occur |
Cthread_cabinet | Manages a collection of threads |
►Nsockets | Provides access to the operating system's socket methods |
Cbase_address | |
Cinternet_address | This type of address describes a destination out on the internet |
Cmachine_uid | |
Cinternet_machine_uid | |
Cmachine_uid_array | |
Crange_limiter | Mechanism for restricting access to a resource by the client's IP address |
Craw_socket | |
Csequence_tracker | This will keep track of sequencing for a communication process on a per host basis |
Csocket_data | |
Csocket_minder | |
Cspan_manager | Manages lists of numbers representing the completion of some activity |
Cspocket | Abstraction for a higher-level BSD socket that is platform independent |
Csubnet_calculator | Provides an easy way to determine the range of a subnet given the subnet mask and a sample IP address |
Ctcpip_stack | Helpful functions for interacting with TCP/IP stacks |
Ccommunication_commons | Defines our communication related outcome values |
Cthroughput_counter | Reports on average bandwidth of the transfers being measured |
Nstring_convert | A collection of conversions between popular string types |
►Nstructures | A dynamic container class that holds any kind of object via pointers |
Camorph | |
Cbit_vector | An array of bits with operations for manipulating and querying individual bits |
Crotating_byte_hasher | Implements a hashing algorithm based on the contents stored in an object |
Cchecksums | |
Cinternal_hash_array | |
Chashing_algorithm | A hashing algorithm takes a key and derives a related integer from it |
Chash_table | Implements hashing into buckets for quick object access |
Chash_wrapper | |
Cbucket | |
Cint_hash | A hash table for storing integers |
Cmatrix | Represents a two-dimensional array of objects |
Cint_matrix | A matrix of integers |
Cstring_matrix | A matrix of strings |
Cdouble_matrix | A matrix of double floating point numbers |
Cmemory_limiter | Tracks memory currently in use by memory manager objects |
Cpointer_hash | A hash table for storing pointers |
Croller | Maintains a pseudo-unique identifier number and issues a new one on demand |
Cint_roller | A roller that's based on integers. This is the most common type so far |
Cset | Emulates a mathematical set, providing several standard set operations |
Cint_set | A simple object that wraps a templated set of ints |
Cstring_set | A simple object that wraps a templated set of strings |
Cpointer_set | A set of pointers that hides the platform's pointer size |
Cstack | An abstraction that represents a stack data structure |
Cstatic_memory_gremlin | Holds onto memory chunks that are allocated globally within the program |
Cstring_array | An array of strings with some additional helpful methods |
Cstring_hash | Implements a hash table indexed on character strings |
Cstring_hasher | Implements a simple hashing algorithm for strings |
Castring_hasher | |
Cstring_table | Provides a symbol_table that holds strings as the content |
Cinternal_symbol_indexer | |
Cinternal_symbol_info | |
Cinternal_symbol_list | |
Csymbol_table | Maintains a list of names, where each name has a type and some contents |
Cinternal_pointer_hider | |
Csym_tab_apply_data | |
Cunique_id | Provides an abstraction for the responsibilities of a unique identifier |
Corderable_unique_id | A unique identifier class that supports sorting |
Cunique_int | A unique identifier based on integers |
Cversion | Holds a file's version identifier |
Cversion_record | Holds all information about a file's versioning |
►Nsynchronic | |
Cbundle_list | Provides a structure for managing a collection of synchronizables |
Clist_manager | Supports distributed management of a list of object states |
Clist_synchronizer | |
Csynchronizable | Encapsulates all of the attributes known for an object |
Nsystem_checkup | |
►Ntest | |
►Njava | |
►Nsemantics | |
Cbehavior_of_finally_when_exception_in_catch | |
►Ntextual | |
Cbyte_formatter | Provides functions for manipulating arrays of bytes |
Clist_parsing | A set of functions that help out with parsing lists of things |
Cparser_bits | Warehouses some functions that are often useful during text parsing |
Cstring_manipulation | Provides various functions for massaging strings |
Cxml_generator | Supports simple XML output with consistency checking |
Cxml_parser | Parses XML input and invokes a callback for the different syntactic pieces |
►Ntimely | #include <time.h> |
Cclock_time | A specific point in time as represented by a 24 hour clock |
Cday_in_year | An object that represents a particular day in a year |
Ctime_locus | An object that represents a particular point in time |
Cstopwatch | A class for measuring event durations in real time |
Ctime_control | Provides some functions that affect time, or ones perception of time |
Ctime_stamp | Represents a point in time relative to the operating system startup time |
Ctimeable | Timeable is the base for objects that can be hooked into timer events |
Ctimer_driver | Provides platform-independent timer support |
►Nunit_test | Useful support functions for unit testing, especially within hoople |
Cunit_base | |
►Nversions | |
Cversion_checker | Provides version checking for shared libraries |
Cversion_ini | This provides support for writing windows version files |