osg::ApplicationUsage Class Reference

`#include <ApplicationUsage>`

Inheritance diagram for osg::ApplicationUsage:

## Public Types

enum | Type { NO_HELP = 0x0 , COMMAND_LINE_OPTION = 0x1 , ENVIRONMENTAL_VARIABLE = 0x2 , KEYBOARD_MOUSE_BINDING = 0x4 , HELP_ALL = KEYBOARD_MOUSE_BINDING|ENVIRONMENTAL_VARIABLE|COMMAND_LINE_OPTION }
typedef std::map< std::string, std::string > | UsageMap

## Public Member Functions

| ApplicationUsage ()
| ApplicationUsage (const std::string &commandLineUsage)
void | setApplicationName (const std::string &name)
const std::string & | getApplicationName () const
void | setDescription (const std::string &desc)
const std::string & | getDescription () const
void | addUsageExplanation (Type type, const std::string &option, const std::string &explanation)
void | setCommandLineUsage (const std::string &explanation)
const std::string & | getCommandLineUsage () const
void | addCommandLineOption (const std::string &option, const std::string &explanation, const std::string &defaultValue="")
void | setCommandLineOptions (const UsageMap &usageMap)
const UsageMap & | getCommandLineOptions () const
void | setCommandLineOptionsDefaults (const UsageMap &usageMap)
const UsageMap & | getCommandLineOptionsDefaults () const
void | addEnvironmentalVariable (const std::string &option, const std::string &explanation, const std::string &defaultValue="")
void | setEnvironmentalVariables (const UsageMap &usageMap)
const UsageMap & | getEnvironmentalVariables () const
void | setEnvironmentalVariablesDefaults (const UsageMap &usageMap)
const UsageMap & | getEnvironmentalVariablesDefaults () const
void | addKeyboardMouseBinding (const std::string &prefix, int key, const std::string &explanation)
void | addKeyboardMouseBinding (int key, const std::string &explanation)
void | addKeyboardMouseBinding (const std::string &option, const std::string &explanation)
void | setKeyboardMouseBindings (const UsageMap &usageMap)
const UsageMap & | getKeyboardMouseBindings () const
void | getFormattedString (std::string &str, const UsageMap &um, unsigned int widthOfOutput=80, bool showDefaults=false, const UsageMap &ud=UsageMap())
void | write (std::ostream &output, const UsageMap &um, unsigned int widthOfOutput=80, bool showDefaults=false, const UsageMap &ud=UsageMap())
void | write (std::ostream &output, unsigned int type=COMMAND_LINE_OPTION, unsigned int widthOfOutput=80, bool showDefaults=false)
void | writeEnvironmentSettings (std::ostream &output)
Public Member Functions inherited from osg::Referenced
| Referenced ()
| Referenced (bool threadSafeRefUnref)
| Referenced (const Referenced &)
Referenced & | operator= (const Referenced &)
virtual void | setThreadSafeRefUnref (bool)
bool | getThreadSafeRefUnref () const
OpenThreads::Mutex * | getRefMutex () const
int | ref () const
int | unref () const
int | unref_nodelete () const
int | referenceCount () const
ObserverSet * | getObserverSet () const
ObserverSet * | getOrCreateObserverSet () const
void | addObserver (Observer *observer) const
void | removeObserver (Observer *observer) const

## Static Public Member Functions

static ApplicationUsage * | instance ()
Static Public Member Functions inherited from osg::Referenced
static OpenThreads::Mutex * | getGlobalReferencedMutex ()
static void | setDeleteHandler (DeleteHandler *handler)
static DeleteHandler * | getDeleteHandler ()

## Protected Member Functions

virtual | ~ApplicationUsage ()
Protected Member Functions inherited from osg::Referenced
virtual | ~Referenced ()
void | signalObserversAndDelete (bool signalDelete, bool doDelete) const
void | deleteUsingDeleteHandler () const

## Protected Attributes

std::string | _applicationName
std::string | _description
std::string | _commandLineUsage
UsageMap | _commandLineOptions
UsageMap | _environmentalVariables
UsageMap | _keyboardMouse
UsageMap | _environmentalVariablesDefaults
UsageMap | _commandLineOptionsDefaults
Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr | _observerSet
OpenThreads::Atomic | _refCount

## Member Typedef Documentation

## UsageMap

typedef std::map<std::string,std::string> osg::ApplicationUsage::UsageMap

## Member Enumeration Documentation

## Type

enum osg::ApplicationUsage::Type

Enumerator
NO_HELP |
COMMAND_LINE_OPTION |
ENVIRONMENTAL_VARIABLE |
KEYBOARD_MOUSE_BINDING |
HELP_ALL |

## Constructor & Destructor Documentation

## ApplicationUsage() [1/2]

osg::ApplicationUsage::ApplicationUsage | ( |  | ) |

inline

Referenced by instance().

## ApplicationUsage() [2/2]

osg::ApplicationUsage::ApplicationUsage | ( | const std::string & | commandLineUsage | ) |

## ~ApplicationUsage()

virtual osg::ApplicationUsage::~ApplicationUsage | ( |  | ) |

inline protected virtual

## Member Function Documentation

## addCommandLineOption()

void osg::ApplicationUsage::addCommandLineOption | ( | const std::string & | option,
|  | const std::string & | explanation,
|  | const std::string & | defaultValue = "" )

## addEnvironmentalVariable()

void osg::ApplicationUsage::addEnvironmentalVariable | ( | const std::string & | option,
|  | const std::string & | explanation,
|  | const std::string & | defaultValue = "" )

## addKeyboardMouseBinding() [1/3]

void osg::ApplicationUsage::addKeyboardMouseBinding | ( | const std::string & | option,
|  | const std::string & | explanation )

## addKeyboardMouseBinding() [2/3]

void osg::ApplicationUsage::addKeyboardMouseBinding | ( | const std::string & | prefix,
|  | int | key,
|  | const std::string & | explanation )

## addKeyboardMouseBinding() [3/3]

void osg::ApplicationUsage::addKeyboardMouseBinding | ( | int | key,
|  | const std::string & | explanation )

## addUsageExplanation()

void osg::ApplicationUsage::addUsageExplanation | ( | Type | type,
|  | const std::string & | option,
|  | const std::string & | explanation )

Referenced by osg::ApplicationUsageProxy::ApplicationUsageProxy().

## getApplicationName()

const std::string & osg::ApplicationUsage::getApplicationName | ( |  | ) | const

inline

References _applicationName.

## getCommandLineOptions()

const UsageMap & osg::ApplicationUsage::getCommandLineOptions | ( |  | ) | const

inline

References _commandLineOptions.

## getCommandLineOptionsDefaults()

const UsageMap & osg::ApplicationUsage::getCommandLineOptionsDefaults | ( |  | ) | const

inline

References _commandLineOptionsDefaults.

## getCommandLineUsage()

const std::string & osg::ApplicationUsage::getCommandLineUsage | ( |  | ) | const

inline

References _commandLineUsage.

## getDescription()

const std::string & osg::ApplicationUsage::getDescription | ( |  | ) | const

inline

References _description.

## getEnvironmentalVariables()

const UsageMap & osg::ApplicationUsage::getEnvironmentalVariables | ( |  | ) | const

inline

References _environmentalVariables.

## getEnvironmentalVariablesDefaults()

const UsageMap & osg::ApplicationUsage::getEnvironmentalVariablesDefaults | ( |  | ) | const

inline

References _environmentalVariablesDefaults.

## getFormattedString()

void osg::ApplicationUsage::getFormattedString | ( | std::string & | str,
|  | const UsageMap & | um,
|  | unsigned int | widthOfOutput = 80,
|  | bool | showDefaults = false,
|  | const UsageMap & | ud = UsageMap() )

## getKeyboardMouseBindings()

const UsageMap & osg::ApplicationUsage::getKeyboardMouseBindings | ( |  | ) | const

inline

References _keyboardMouse.

## instance()

ApplicationUsage * osg::ApplicationUsage::instance | ( |  | ) |

static

References ApplicationUsage().

Referenced by osg::ApplicationUsageProxy::ApplicationUsageProxy().

## setApplicationName()

void osg::ApplicationUsage::setApplicationName | ( | const std::string & | name | ) |

inline

The ApplicationName is often displayed when logging errors, and frequently incorporated into the Description (below).

References _applicationName.

## setCommandLineOptions()

void osg::ApplicationUsage::setCommandLineOptions | ( | const UsageMap & | usageMap | ) |

inline

References _commandLineOptions.

## setCommandLineOptionsDefaults()

void osg::ApplicationUsage::setCommandLineOptionsDefaults | ( | const UsageMap & | usageMap | ) |

inline

References _commandLineOptionsDefaults.

## setCommandLineUsage()

void osg::ApplicationUsage::setCommandLineUsage | ( | const std::string & | explanation | ) |

inline

References _commandLineUsage.

## setDescription()

void osg::ApplicationUsage::setDescription | ( | const std::string & | desc | ) |

inline

If non-empty, the Description is typically shown by the Help Handler as text on the Help display (which also lists keyboard abbreviations.

References _description.

## setEnvironmentalVariables()

void osg::ApplicationUsage::setEnvironmentalVariables | ( | const UsageMap & | usageMap | ) |

inline

References _environmentalVariables.

## setEnvironmentalVariablesDefaults()

void osg::ApplicationUsage::setEnvironmentalVariablesDefaults | ( | const UsageMap & | usageMap | ) |

inline

References _environmentalVariablesDefaults.

## setKeyboardMouseBindings()

void osg::ApplicationUsage::setKeyboardMouseBindings | ( | const UsageMap & | usageMap | ) |

inline

References _keyboardMouse.

## write() [1/2]

void osg::ApplicationUsage::write | ( | std::ostream & | output,
|  | const UsageMap & | um,
|  | unsigned int | widthOfOutput = 80,
|  | bool | showDefaults = false,
|  | const UsageMap & | ud = UsageMap() )

## write() [2/2]

void osg::ApplicationUsage::write | ( | std::ostream & | output,
|  | unsigned int | type = COMMAND_LINE_OPTION,
|  | unsigned int | widthOfOutput = 80,
|  | bool | showDefaults = false )

References COMMAND_LINE_OPTION.

## writeEnvironmentSettings()

void osg::ApplicationUsage::writeEnvironmentSettings | ( | std::ostream & | output | ) |

## Member Data Documentation

## _applicationName

std::string osg::ApplicationUsage::_applicationName

protected

Referenced by getApplicationName(), and setApplicationName().

## _commandLineOptions

UsageMap osg::ApplicationUsage::_commandLineOptions

protected

Referenced by getCommandLineOptions(), and setCommandLineOptions().

## _commandLineOptionsDefaults

UsageMap osg::ApplicationUsage::_commandLineOptionsDefaults

protected

Referenced by getCommandLineOptionsDefaults(), and setCommandLineOptionsDefaults().

## _commandLineUsage

std::string osg::ApplicationUsage::_commandLineUsage

protected

Referenced by getCommandLineUsage(), and setCommandLineUsage().

## _description

std::string osg::ApplicationUsage::_description

protected

Referenced by getDescription(), and setDescription().

## _environmentalVariables

UsageMap osg::ApplicationUsage::_environmentalVariables

protected

Referenced by getEnvironmentalVariables(), and setEnvironmentalVariables().

## _environmentalVariablesDefaults

UsageMap osg::ApplicationUsage::_environmentalVariablesDefaults

protected

Referenced by getEnvironmentalVariablesDefaults(), and setEnvironmentalVariablesDefaults().

## _keyboardMouse

UsageMap osg::ApplicationUsage::_keyboardMouse

protected

Referenced by getKeyboardMouseBindings(), and setKeyboardMouseBindings().

The documentation for this class was generated from the following file:

- ApplicationUsage