System Library
[Libraries]


Detailed Description

Created: 6th June 2006 Updated: 14th January 2007.

This library defines classes and functions for accessing and manipulating aspects of the operating environment.

The system components provided by the STLSoft libraries include:


Classes

struct  environment_variable_traits
 Abstraction of the platform-dependent environment variable handling. More...
class  system_traits
 Traits class for system operations. More...
class  cmdargs
 Facade class that presents argc+argv command line parameters as two separate sequences of options (those arguments with - or -- prefixes and, optionally, separated from an option value by a =) and values (those without any leading hyphens). More...
class  basic_commandline_parser
 Parses a command line into parts, and provides sequence semantics for their access. More...
struct  cwd_policy
 Special String Instance policy template for eliciting the current directory. More...
class  basic_environment_variable
 Represents an environment variable. More...
struct  system_traits
 Traits for accessing the correct system functions for a given character type. More...
struct  abspath_policy
 Special String Instance policy template for eliciting the absolute form of a given path. More...
struct  cwd_policy
 Special String Instance policy template for eliciting the current directory. More...
class  basic_commandline_parser
 Parses a Windows (WinMain()) command line into parts, and provides array semantics for their access. More...
class  console_ctrl_handler_scope
 Scopes the registration of a console control handler. More...
class  basic_environment_block
 Class used for preparing environment blocks compatible with the Windows CreateProcess() function. More...
class  basic_environment_sequence
 STL-like sequence for the system environment variables. More...
class  basic_environment_variable
 Represents an environment variable. More...
struct  moddir_policy
 Represents the directory of a module. More...
struct  modfname_policy
 Represents a module filename. More...
class  pid_sequence
 Process Id sequence. More...
class  process_module_sequence
 Process module (constituent DLLs) sequence. More...
class  basic_searchpath_sequence
 Presents an STL-like sequence interface to the search path sequence for the current process. More...
struct  sysdir_policy
 Special String Instance policy template for eliciting the Windows System directory. More...
class  system_info
 Provides system information, which provides information regarding the host system, such as number of processors and page size. More...
struct  system_traits
 Traits for accessing the correct system functions for a given character type. More...
class  system_version
 Provides system version information. More...
class  version_info_exception
 Exception thrown by the version_info class. More...
class  fixed_file_info
 Represents the fixed part of a version information block. More...
class  VsVar
 Represents a variable file part of a version information block. More...
class  VsString
 Represents a string part of a version information block. More...
class  VsStringTable
 Represents a string table. More...
class  VsVarFileInfo
 Represents a variable file info part of a version information block. More...
class  VsStringFileInfo
 Represents a variable string part of a version information block. More...
class  version_info
 Provides convenient access to aspects of a module's version information. More...
struct  windir_policy
 Special String Instance policy template for eliciting the Windows directory. More...
size_type size () const
 Size.
bool empty () const
 Indicates whether the enviroment sequence is empty.

Typedefs

typedef
basic_commandline_parser< char > 
commandline_parser_a
 Specialisation of the basic_commandline_parser template for the ANSI character type char.
typedef
basic_commandline_parser
< wchar_t > 
commandline_parser_w
 Specialisation of the basic_commandline_parser template for the Unicode character type wchar_t.
typedef
stlsoft::special_string_instance_0
< cwd_policy< char > > 
current_directory_a
 A Special String Instance that represents the current directory; ANSI specialisation.
typedef
stlsoft::special_string_instance_0
< cwd_policy< wchar_t > > 
current_directory_w
 A Special String Instance that represents the current directory; 'Unicode' specialisation.
typedef
stlsoft::special_string_instance_0
< cwd_policy< char > > 
current_directory
 A Special String Instance that represents the current directory; char specialisation.
typedef
basic_environment_variable
< char, system_traits< char > > 
environment_variable_a
 Specialisation of the basic_environment_variable template for the ANSI character type char.
typedef
basic_environment_variable
< wchar_t, system_traits
< wchar_t > > 
environment_variable_w
 Specialisation of the basic_environment_variable template for the Unicode character type wchar_t.
typedef
basic_environment_variable
< char, system_traits< char > > 
environment_variable
 Specialisation of the basic_environment_variable template for the 'default' character type char.
typedef
stlsoft::special_string_instance_0
< cwd_policy< char > > 
current_directory_a
 A Special String Instance that represents the current directory; ANSI specialisation.
typedef
stlsoft::special_string_instance_0
< cwd_policy< wchar_t > > 
current_directory_w
 A Special String Instance that represents the current directory; 'Unicode' specialisation.
typedef
stlsoft::special_string_instance_0
< cwd_policy< TCHAR > > 
current_directory
 A Special String Instance that represents the current directory; TCHAR specialisation.
typedef
basic_commandline_parser< char > 
commandline_parser_a
 Specialisation of the basic_commandline_parser template for the ANSI character type char.
typedef
basic_commandline_parser
< wchar_t > 
commandline_parser_w
 Specialisation of the basic_commandline_parser template for the Unicode character type wchar_t.
typedef
basic_commandline_parser
< TCHAR > 
commandline_parser
 Specialisation of the basic_commandline_parser template for the Win32 character type TCHAR.
typedef
basic_environment_block
< wchar_t > 
environment_block_w
 Specialisation of the basic_environment_block template for the Unicode character type wchar_t.
typedef
basic_environment_block< TCHAR > 
environment_block
 Specialisation of the basic_environment_block template for the Win32 character type TCHAR.
typedef
basic_environment_sequence
< char > 
environment_sequence_a
 Specialisation of the basic_environment_sequence template for the ANSI character type char.
typedef
basic_environment_sequence
< wchar_t > 
environment_sequence_w
 Specialisation of the basic_environment_sequence template for the Unicode character type wchar_t.
typedef
basic_environment_sequence
< TCHAR > 
environment_sequence
 Specialisation of the basic_environment_sequence template for the Win32 character type TCHAR.
typedef
basic_environment_variable
< char, system_traits< char > > 
environment_variable_a
 Specialisation of the basic_environment_variable template for the ANSI character type char.
typedef
basic_environment_variable
< wchar_t, system_traits
< wchar_t > > 
environment_variable_w
 Specialisation of the basic_environment_variable template for the Unicode character type wchar_t.
typedef
basic_environment_variable
< TCHAR, system_traits< TCHAR > > 
environment_variable
 Specialisation of the basic_environment_variable template for the Win32 character type TCHAR.
typedef
stlsoft::special_string_instance_1
< moddir_policy< char > > 
module_directory_a
 A Special String Instance that represents the module directory; ANSI specialisation.
typedef
stlsoft::special_string_instance_1
< moddir_policy< wchar_t > > 
module_directory_w
 A Special String Instance that represents the module directory; 'Unicode' specialisation.
typedef
stlsoft::special_string_instance_1
< moddir_policy< TCHAR > > 
module_directory
 A Special String Instance that represents the module directory; TCHAR specialisation.
typedef
stlsoft::special_string_instance_1
< modfname_policy< char > > 
module_filename_a
 A Special String Instance that represents the module directory; ANSI specialisation.
typedef
stlsoft::special_string_instance_1
< modfname_policy< wchar_t > > 
module_filename_w
 A Special String Instance that represents the module directory; 'Unicode' specialisation.
typedef
stlsoft::special_string_instance_1
< modfname_policy< TCHAR > > 
module_filename
 A Special String Instance that represents the module directory; TCHAR specialisation.
typedef
basic_searchpath_sequence
< char, filesystem_traits
< char > > 
searchpath_sequence_a
 Specialisation of the basic_searchpath_sequence template for the ANSI character type char.
typedef
basic_searchpath_sequence
< wchar_t, filesystem_traits
< wchar_t > > 
searchpath_sequence_w
 Specialisation of the basic_searchpath_sequence template for the Unicode character type wchar_t.
typedef
basic_searchpath_sequence
< TCHAR, filesystem_traits
< TCHAR > > 
searchpath_sequence
 Specialisation of the basic_searchpath_sequence template for the Win32 character type TCHAR.
typedef
stlsoft::special_string_instance_0
< sysdir_policy< char > > 
system_directory_a
 A Special String Instance that represents the Windows System directory; ANSI specialisation.
typedef
stlsoft::special_string_instance_0
< sysdir_policy< wchar_t > > 
system_directory_w
 A Special String Instance that represents the Windows System directory; 'Unicode' specialisation.
typedef
stlsoft::special_string_instance_0
< sysdir_policy< TCHAR > > 
system_directory
 A Special String Instance that represents the Windows System directory; TCHAR specialisation.
typedef
stlsoft::special_string_instance_0
< windir_policy< char > > 
windows_directory_a
 A Special String Instance that represents the Windows directory; ANSI specialisation.
typedef
stlsoft::special_string_instance_0
< windir_policy< wchar_t > > 
windows_directory_w
 A Special String Instance that represents the Windows directory; 'Unicode' specialisation.
typedef
stlsoft::special_string_instance_0
< windir_policy< TCHAR > > 
windows_directory
 A Special String Instance that represents the Windows directory; TCHAR specialisation.

Functions

template<typename C>
basic_environment_variable< C > make_environment_variable (C const *path)
 This helper function makes an environment variable without needing to qualify the template parameter.
STLSOFT_INLINE BOOL winstl__CreateProcessFEA (char const *cmdLine, DWORD flags, void const *envBlock)
STLSOFT_INLINE BOOL winstl__CreateProcessEA (char const *cmdLine, void const *envBlock)
STLSOFT_INLINE BOOL winstl__CreateProcess0A (char const *cmdLine)
BOOL CreateProcess (char const *cmdLine, DWORD flags, void const *envBlock)
BOOL CreateProcess (char const *cmdLine, void const *envBlock)
BOOL CreateProcess (char const *cmdLine)
STLSOFT_INLINE size_t winstl__get_console_width (void)
 Evalutes the current width of the console.
STLSOFT_INLINE HWND winstl__get_console_window (void)
 Returns the window handle of the current console, or NULL if it cannot be found.
size_t get_console_width ()
 Evalutes the current width of the console.
HWND get_console_window (void)
 Returns the window handle of the current console, or NULL if it cannot be found.


Typedef Documentation

typedef basic_commandline_parser<TCHAR> commandline_parser

Specialisation of the basic_commandline_parser template for the Win32 character type TCHAR.

typedef basic_commandline_parser< char > commandline_parser_a

Specialisation of the basic_commandline_parser template for the ANSI character type char.

typedef basic_commandline_parser< char > commandline_parser_a

Specialisation of the basic_commandline_parser template for the ANSI character type char.

typedef basic_commandline_parser< wchar_t > commandline_parser_w

Specialisation of the basic_commandline_parser template for the Unicode character type wchar_t.

typedef basic_commandline_parser< wchar_t > commandline_parser_w

Specialisation of the basic_commandline_parser template for the Unicode character type wchar_t.

typedef stlsoft:: special_string_instance_0< cwd_policy<TCHAR> > current_directory

A Special String Instance that represents the current directory; TCHAR specialisation.

typedef stlsoft:: special_string_instance_0< cwd_policy<char> > current_directory

A Special String Instance that represents the current directory; char specialisation.

typedef stlsoft:: special_string_instance_0< cwd_policy< char > > current_directory_a

A Special String Instance that represents the current directory; ANSI specialisation.

typedef stlsoft:: special_string_instance_0< cwd_policy< char > > current_directory_a

A Special String Instance that represents the current directory; ANSI specialisation.

typedef stlsoft:: special_string_instance_0< cwd_policy< wchar_t > > current_directory_w

A Special String Instance that represents the current directory; 'Unicode' specialisation.

typedef stlsoft:: special_string_instance_0< cwd_policy< wchar_t > > current_directory_w

A Special String Instance that represents the current directory; 'Unicode' specialisation.

typedef basic_environment_block<TCHAR> environment_block

Specialisation of the basic_environment_block template for the Win32 character type TCHAR.

typedef basic_environment_block< wchar_t > environment_block_w

Specialisation of the basic_environment_block template for the Unicode character type wchar_t.

typedef basic_environment_sequence<TCHAR> environment_sequence

Specialisation of the basic_environment_sequence template for the Win32 character type TCHAR.

typedef basic_environment_sequence< char > environment_sequence_a

Specialisation of the basic_environment_sequence template for the ANSI character type char.

typedef basic_environment_sequence< wchar_t > environment_sequence_w

Specialisation of the basic_environment_sequence template for the Unicode character type wchar_t.

typedef basic_environment_variable<TCHAR, system_traits<TCHAR> > environment_variable

Specialisation of the basic_environment_variable template for the Win32 character type TCHAR.

typedef basic_environment_variable<char, system_traits<char> > environment_variable

Specialisation of the basic_environment_variable template for the 'default' character type char.

typedef basic_environment_variable< char , system_traits< char > > environment_variable_a

Specialisation of the basic_environment_variable template for the ANSI character type char.

typedef basic_environment_variable< char , system_traits< char > > environment_variable_a

Specialisation of the basic_environment_variable template for the ANSI character type char.

typedef basic_environment_variable< wchar_t , system_traits< wchar_t > > environment_variable_w

Specialisation of the basic_environment_variable template for the Unicode character type wchar_t.

typedef basic_environment_variable< wchar_t , system_traits< wchar_t > > environment_variable_w

Specialisation of the basic_environment_variable template for the Unicode character type wchar_t.

typedef stlsoft:: special_string_instance_1<moddir_policy<TCHAR> > module_directory

A Special String Instance that represents the module directory; TCHAR specialisation.

typedef stlsoft:: special_string_instance_1<moddir_policy< char > > module_directory_a

A Special String Instance that represents the module directory; ANSI specialisation.

typedef stlsoft:: special_string_instance_1<moddir_policy< wchar_t > > module_directory_w

A Special String Instance that represents the module directory; 'Unicode' specialisation.

typedef stlsoft:: special_string_instance_1<modfname_policy<TCHAR> > module_filename

A Special String Instance that represents the module directory; TCHAR specialisation.

typedef stlsoft:: special_string_instance_1<modfname_policy< char > > module_filename_a

A Special String Instance that represents the module directory; ANSI specialisation.

typedef stlsoft:: special_string_instance_1<modfname_policy< wchar_t > > module_filename_w

A Special String Instance that represents the module directory; 'Unicode' specialisation.

typedef basic_searchpath_sequence<TCHAR, filesystem_traits<TCHAR> > searchpath_sequence

Specialisation of the basic_searchpath_sequence template for the Win32 character type TCHAR.

typedef basic_searchpath_sequence< char , filesystem_traits< char > > searchpath_sequence_a

Specialisation of the basic_searchpath_sequence template for the ANSI character type char.

typedef basic_searchpath_sequence< wchar_t , filesystem_traits< wchar_t > > searchpath_sequence_w

Specialisation of the basic_searchpath_sequence template for the Unicode character type wchar_t.

typedef stlsoft:: special_string_instance_0< sysdir_policy<TCHAR> > system_directory

A Special String Instance that represents the Windows System directory; TCHAR specialisation.

typedef stlsoft:: special_string_instance_0< sysdir_policy< char > > system_directory_a

A Special String Instance that represents the Windows System directory; ANSI specialisation.

typedef stlsoft:: special_string_instance_0< sysdir_policy< wchar_t > > system_directory_w

A Special String Instance that represents the Windows System directory; 'Unicode' specialisation.

typedef stlsoft:: special_string_instance_0< windir_policy<TCHAR> > windows_directory

A Special String Instance that represents the Windows directory; TCHAR specialisation.

typedef stlsoft:: special_string_instance_0< windir_policy< char > > windows_directory_a

A Special String Instance that represents the Windows directory; ANSI specialisation.

typedef stlsoft:: special_string_instance_0< windir_policy< wchar_t > > windows_directory_w

A Special String Instance that represents the Windows directory; 'Unicode' specialisation.


Function Documentation

bool empty (  )  const [inherited]

Indicates whether the enviroment sequence is empty.

size_t winstl::get_console_width (  )  [inline]

Evalutes the current width of the console.

References winstl__get_console_width().

HWND winstl::get_console_window ( void   )  [inline]

Returns the window handle of the current console, or NULL if it cannot be found.

Warning:
This only works on Windows 2000, or later, operating systems. It will return NULL on other operating systems.

References winstl__get_console_window().

basic_environment_variable<C> unixstl::make_environment_variable ( C const *  path  )  [inline]

This helper function makes an environment variable without needing to qualify the template parameter.

size_type size (  )  const [inherited]

Size.

Returns the number of elements in the enviroment sequence

STLSOFT_INLINE size_t winstl__get_console_width ( void   ) 

Evalutes the current width of the console.

Referenced by winstl::get_console_width().

STLSOFT_INLINE HWND winstl__get_console_window ( void   ) 

Returns the window handle of the current console, or NULL if it cannot be found.

Warning:
This only works on Windows 2000, or later, operating systems. It will return NULL on other operating systems.

Referenced by winstl::get_console_window().


Generated on Thu Jun 10 08:58:19 2010 for STLSoft by  doxygen 1.5.6