The OEInterface object can has a significant amount of information,
default values, text descriptions etc, about the parameters it holds.
This information can be made accessible from the command line using
the OECheckHelp function. This function is described in detail in
the API documentation, but in general is simply check if the first
argument on the command line (argv[1]) is "help", and if it
is I supplies instructions on how to access the various help functions.
If no help is requested (i.e., argv[1]
isn't "help)
the function is a no-op.
Given the following program
Chapter 32 - Example 6 : cpp file
#include "oeplatform.h" #include "oesystem.h" //Defines static const unsigned char* array InterfaceData #include "ch32-6.itf" using namespace OEPlatform; using namespace OESystem; int main(int argc, char** argv) { OEInterface itf; OEConfigure(itf,InterfaceData); if (OECheckHelp(itf,argc,argv)) return 0; OEParseCommandLine(itf,argc,argv); OEWriteSettings(itf,oeout,true); return 0; }
and text configuration file
Chapter 32 - Example 6 : txt configuration file
!PARAMETER -x !TYPE float !DEFAULT 0.0 !VISIBILITY simple !BRIEF First variable !END !PARAMETER -y !TYPE float !DEFAULT 0.0 !BRIEF Second variable !END !PARAMETER -op !TYPE string !BRIEF Operation to perform on x and y !DETAIL The operation performed is x <-op> y So if -op is 'add' the operation is x + y !VISIBILITY normal !END
Calling the program with "help" as the first argument gives and no further arguments gives the following.
> ch32-6 --help Help functions: ch32-6 --help simple : Get a list of simple parameters ch32-6 --help all : Get a complete list of parameters ch32-6 --help defaults : List the defaults for all parameters ch32-6 --help <parameter> : Get detailed help on a parameter ch32-6 --help html : Create an html help file for this program >
The specific help function return the following output
> ch32-6 --help simple Simple parameter list -x : First variable -y : Second variable > ch32-6 --help all Complete parameter list -op : Operation to perform on x and y -x : First variable -y : Second variable > ch32-6 --help defaults Default settings -op : add -x : 0.000000 -y : 0.000000 > ch32-6 --help -x Contents of parameter -x Type : floatDefault : 0.000000 Simple : true Required : false Brief : First variable > ch32-6 --help -y Contents of parameter -y Type : floatDefault : 0.000000 Simple : true Required : false Brief : Second variable > ch32-6 --help -op Contents of parameter -op Type : string Simple : false Required : false Brief : Operation to perform on x and y Detail The operation performed is x <-op> y So if -op is 'add' the operation is x + y > ch32-6 --help html Creating 'ch32-6_help.html'
The difference between the simple and all help is that all lists every parameter with a visibility setting of "simple" or "normal", while simple only lists parameters with a visibility setting of "simple". "simple" is the default visibility if !VISIBILITY isn't specified. Calling the html help creates an html file with all the available help content from the OEInterface.