Miscellaneous Utilities

The utilities library includes various support classes for general-purpose operations. These tools provide supporting functionality for the HOPS4 framework’s data processing, file I/O, time handling, and system integration requirements.

MHO_Tokenizer

Class

MHO_Tokenizer

Category

Miscellaneous

Configuration Parameters

Delimiter strings (default: space)
Empty token inclusion
Multi-character delimiter support
Quote preservation
Whitespace trimming

Primary Functionality

Configurable string tokenization

Key Features

Flexible delimiter configuration
Quote-aware parsing
Whitespace handling options
Empty token control

The MHO_Tokenizer class provides flexible string tokenization with configurable delimiters and parsing options including quote preservation and whitespace handling. This utility class is heavily used by the control file parsing library and vex parsing library.

MHO_UUID

Class

MHO_UUID

Category

Miscellaneous

Primary Functionality

128-bit UUID storage and manipulation

Key Features

16-byte UUID representation
String and integer conversion
Comparison operators
Support for stream operations

The MHO_UUID class provides 128-bit UUID storage and manipulation with some conversion capabilities and comparison operators for object identification.

MHO_UUIDGenerator

Class

MHO_UUIDGenerator

Category

Miscellaneous

Primary Functionality

RFC 4122 compliant UUID generation

Key Features

Pseudo-random UUID generation
Follows RFC 4122 (v4) standard
String conversion utilities

The MHO_UUIDGenerator class generates a RFC-4122 (v4) compliant pseudo-random UUID for object identification. The random number generation is done via the STL Mersenne Twister algorithm.

MHO_MD5HashGenerator

Class

MHO_MD5HashGenerator

Category

Miscellaneous

Template Parameters

Variadic template for supported data types

Primary Functionality

MD5 hash generation for data integrity

Key Features

Streaming MD5 hash computation
Support for POD types and strings
UUID conversion from hash digests

The MHO_MD5HashGenerator class provides MD5 hash generation capabilities for data hasing/UUID creation. It has streaming support for various data types. The underlying implementation is done by the picohash.h header library. placed under public domain by Kazuho Oku.

Additional Utility Classes

The utilities library also includes several specialized utility classes/files: