@tool |
Abstract class representing a tool. A tool is a piece of software without any special UI requirements other than a console for outputting status information, and an output stream. Typically tools mimic shell scripts like in a unix environment, or "console" programs. It's class-name (used for any type of code generation) is "tool".
The namespace within the parent namespace is "ph:tools".
The object fits into the tree of objects in the following way. Click on other objects in to navigate to that object. Objects to the left of this object are superclasses, and objects listed below it derive from this one.
Here is a list of all uses of this object inside others. Click on the object to take you to the definition.
Click here to see a tree representation of all objects.
Click here to return to the main index page.
This object contains members which hold data for the object. Following is a list of those members. The declaration of the member closely follows the UML conventions.
templates : templatevectortype
Template objects used to create others.
This object contains methods which can be called from other objects. Following is a list of those methods. The syntax of the method, it's arguments and return value follow closely the UML conventions.
Do whatever the tool does. All tools override this method and then provide an implementation to do whatever they need to do. Typically they will process information and then output something to an output buffer.
Any other method of any other object can call this method. This is called 'public' access.
The data-type returned is "booltype"; Returns true if the function is successful.
The method takes the following arguments:
console : streamptrtype
A place to put errors or status information which is not meant to be part of the output.
output : streamptrtype
The output stream for this tool.
Here is a list of all overrides of this method inside sub-classes. Click on the object to take you to the definition.
This object defines a number of types, all listed here. Objects that appear as sub-classes if this one may use these types in return types, arguments to methods or when defining methods.
The following builtin types are defined in this object. Click on a type to take you to it's description.
The following types are defined in this object.
An pointer to an array of characters.
An pointer to a map between pairs of strings.
A pointer to context used when creating xmlobjs.
The following types have implementations defined in this object. Each implementation is language specific, and is used to output code for that language when using the type.
This implementation is for the language C++.
When declaring variables, we use:
char **
When declaring arguments, we use:
char **
This implementation is for the language C++.
When declaring variables, we use:
std::map<std::string, std::string> *
When declaring arguments, we use:
std::map<std::string, std::string> *
To use this type the file "<map>" is included.
This implementation is for the language C++.
To initialise variables of this type we use:
0
When declaring variables, we use:
ph::xmlobj::xmlobj_context *
When declaring arguments, we use:
ph::xmlobj::xmlobj_context *
To use this type the file ""../cppxmlobj/xmlobj_context.hpp"" is included.