E-MailRelay

- Main Page
- Namespaces
- Classes
- Files

- Namespace List
- Namespace Members

Namespaces | Classes | Typedefs | Functions
G Namespace Reference

Low-level classes. More...

## Namespaces
| Slot
| A typesafe callback library that isolates event sinks from event sources.

## Classes
class | Arg
| A class which holds a represention of the argc/argv command line array, and supports simple command-line parsing. More...
class | Base64
| A base64 codec class. More...
class | BatchFile
| A class for reading and writing windows-style startup batch files containing a single command-line, optionally using "start". More...
class | Cleanup
| A static interface for registering cleanup functions that are called when the process terminates abnormally. More...
class | CleanupImp
| A pimple-pattern implementation class used by G::Cleanup. More...
class | Convert
| A static class which provides string encoding conversion functions. More...
class | ConvertImp
| A pimple-pattern implementation class for G::Convert. More...
class | Daemon
| A static interface for daemonising the calling process. More...
class | Date
| A date (dd/mm/yyyy) class. More...
class | DateTime
| A low-level static class used by Date and Time. More...
class | Directory
| An encapsulation of a file system directory that allows for iterating through the set of contained files. More...
class | DirectoryIterator
| A Directory iterator. More...
class | DirectoryIteratorImp
| A pimple-pattern implementation class for DirectoryIterator using opendir()/readdir(). More...
class | DirectoryList
| A Directory iterator with the same kind of interface as G::DirectoryIterator, but doing all file i/o in one go. More...
class | Environment
| A static class to wrap getenv() and putenv(). More...
class | EpochTime
| A subsecond-resolution timestamp based on a time_t. More...
class | Exception
| A general-purpose exception class derived from std::exception and containing a std::string. More...
class | ExecutableCommand
| A structure representing an external program, holding a path and a set of arguments. More...
class | File
| A simple static class for dealing with files. More...
class | GetOpt
| A command line option parser. More...
class | Hash
| A class for creating HMACs using an arbitrary cryptographic hash function. More...
class | HashState
| Helper functions for representing the state of a hash function as a non-printable string. More...
class | Identity
| A combination of user-id and group-id, with a very low-level interface to the get/set/e/uid/gid functions. More...
class | IdentityUser
| A convenience class which, when used as a private base, can improve readability when calling Identity 'set' methods. More...
class | limits
| A scoping structure for a set of buffer sizes. More...
class | Log
| A class for doing iostream-based logging. More...
class | LogOutput
| Controls and implements low-level logging output, as used by the Log interface. More...
class | MapFile
| A class for reading and editing key=value files, supporting comments, creation of backup files, variable expansion and logging. More...
class | Md5
| MD5 message digest class. More...
class | Msg
| Wrappers for sendmsg() and recvmsg() that are near drop-in replacements for send()/sendto() and recv()/recvto(), but with SIGPIPE disabled and optional file-descriptor-passing capabilities. More...
class | NewProcess
| A class for creating new processes. More...
class | NewProcessImp
| A pimple-pattern implementation class used by G::NewProcess. More...
class | NewProcessWaitFuture
| A class that holds the parameters and the results of a waitpid() system call. More...
class | noncopyable
| A noncopyable base class (a la boost). More...
class | OptionMap
| A multimap-like container for command-line options and their values. More...
class | OptionParser
| A parser for command-line arguments that operates according to an Options specification and returns an OptionValue multimap. More...
class | Options
| A class to represent allowed command-line options and to provide command-line usage text. More...
class | OptionsLayout
| Describes the layout for G::Options output. More...
class | OptionsLevel
| Used by G::Options for extra type safety. More...
class | OptionValue
| A simple structure encapsulating the value of a command-line option. More...
class | Pam
| A thin interface to the system PAM library, with two pure virtual methods that derived classes should implement: the converse() method supplies passwords etc. More...
class | PamError
| An exception class used by G::Pam. More...
class | PamImp
| A pimple-pattern implementation class for G::Pam. More...
class | Path
| A Path object represents a file system path. More...
class | PathImp
| A private implementation class used by G::Path providing a set of static methods. More...
class | PidFile
| A class for creating pid files. More...
class | Pipe
| A private implementation class used by G::NewProcess that wraps a unix pipe. More...
class | Process
| A static interface for doing things with processes. More...
class | ReadWrite
| An abstract interface for reading and writing from a non-blocking i/o channel. More...
class | Root
| A class which acquires the process's special privileges on construction and releases them on destruction. More...
class | SignalSafe
| An empty structure that is used to indicate a signal-safe, reentrant implementation. More...
class | StateMachine
| A finite state machine class template. More...
class | Str
| A static class which provides string helper functions. More...
class | StringMapReader
| An adaptor for reading a const map<string,string> with at(key). More...
class | Test
| A static interface for enabling test features at run-time. More...
struct | threading
| Helper class for std::thread capabilities. More...
class | Time
| A simple time-of-day (hh/mm/ss) class. More...
class | Xtext
| An xtext codec class, encoding space as "+20" etc. More...

## Typedefs
typedef std::vector< std::string > | StringArray
| A std::vector of std::strings.
typedef std::map< std::string, std::string > | StringMap
| A std::map of std::strings.

## Functions
EpochTime | operator+ (EpochTime et, std::time_t s)
EpochTime | operator+ (EpochTime lhs, EpochTime rhs)
EpochTime | operator- (EpochTime big, EpochTime small_)
bool | operator< (EpochTime lhs, EpochTime rhs)
bool | operator== (EpochTime lhs, EpochTime rhs)
bool | operator!= (EpochTime lhs, EpochTime rhs)
bool | operator<= (EpochTime lhs, EpochTime rhs)
bool | operator>= (EpochTime lhs, EpochTime rhs)
bool | operator> (EpochTime lhs, EpochTime rhs)
std::ostream & | operator<< (std::ostream &s, const EpochTime &et)
bool | is_windows ()
bool | is_linux ()
bool | is_free_bsd ()
bool | is_open_bsd ()
bool | is_bsd ()
std::string | hostname ()
| Returns the hostname. More...
std::ostream & | operator<< (std::ostream &stream, const G::Identity &identity)
std::ostream & | operator<< (std::ostream &stream, const Path &path)
Path & | operator+= (Path &p, const std::string &str)
Path | operator+ (const Path &p, const std::string &str)
void | swap (Path &p1, Path &p2)
| G_EXCEPTION_CLASS (StateMachine_Error,"invalid state machine transition")

## Detailed Description

Low-level classes.

The G namespace contains low-level classes for file-system abstraction, date and time representation, string utility functions, logging, command line parsing etc.

Key classes are:

- Directory
- File
- GetOpt
- Log
- LogOutput
- Path
- Process
- Str

## Function Documentation

std::string G::hostname | ( |  | ) |

Returns the hostname.

This may or may not relate to the host's name on some network.

Definition at line 27 of file ghostname_unix.cpp.