Project
Loading...
Searching...
No Matches
qconfig.h File Reference
#include <cstdint>
#include "qconfigoptions.h"

Go to the source code of this file.

Namespaces

namespace  qConfig
 

Macros

#define AddArrayDefaults(...)
 
#define QCONFIG_HEADER_GUARD
 
#define BeginNamespace(name)
 
#define EndNamespace()   }
 
#define AddOption(name, type, default, optname, optnameshort, help, ...)   type name = default;
 
#define AddVariable(name, type, default)   type name = default;
 
#define _AddOptionArray_INTERNAL_EXPAND(...)   __VA_ARGS__
 
#define AddOptionArray(name, type, count, default, optname, optnameshort, help, ...)   type name[count] = {_AddOptionArray_INTERNAL_EXPAND default};
 
#define AddOptionVec(name, type, optname, optnameshort, help, ...)   std::vector<type> name;
 
#define AddCustomCPP(...)   __VA_ARGS__
 
#define AddOptionSet(name, type, value, optname, optnameshort, help, ...)
 
#define AddSubConfig(name, instance)   name instance;
 
#define BeginConfig(name, instance)
 
#define BeginSubConfig(name, instance, parent, preoptname, preoptnameshort, descr, ...)   BeginConfig(name, instance)
 
#define EndConfig()
 
#define AddHelp(cmd, cmdshort)
 
#define AddHelpAll(cmd, cmdshort)
 
#define AddCommand(cmd, cmdshort, command)
 
#define AddShortcut(cmd, cmdshort, forward, help, ...)
 
#define AddHelpText(text)
 
#define AddOptionRTC(...)   AddOption(__VA_ARGS__)
 
#define AddVariableRTC(...)   AddVariable(__VA_ARGS__)
 
#define AddOptionArrayRTC(...)   AddOptionArray(__VA_ARGS__)
 
#define BeginHiddenConfig(name, instance)   BeginSubConfig(name, instance, , , , )
 

Enumerations

enum  qConfig::qConfigRetVal {
  qConfig::qcrOK = 0 , qConfig::qcrError = 1 , qConfig::qcrMinFailure = 2 , qConfig::qcrMaxFailure = 3 ,
  qConfig::qcrHelp = 4 , qConfig::qcrCmd = 5 , qConfig::qcrArgMissing = 6 , qConfig::qcrArgIncomplete = 7 ,
  qConfig::qcrArrayOverflow = 8
}
 

Functions

int32_t qConfigParse (int argc, const char **argv, const char *filename=nullptr)
 
void qConfigPrint ()
 

Detailed Description

Author
David Rohr

Definition in file qconfig.h.

Macro Definition Documentation

◆ _AddOptionArray_INTERNAL_EXPAND

#define _AddOptionArray_INTERNAL_EXPAND (   ...)    __VA_ARGS__

Definition at line 301 of file qconfig.h.

◆ AddArrayDefaults

#define AddArrayDefaults (   ...)
Value:
{ \
__VA_ARGS__ \
}

Definition at line 39 of file qconfig.h.

◆ AddCommand

#define AddCommand (   cmd,
  cmdshort,
  command 
)

Definition at line 347 of file qconfig.h.

◆ AddCustomCPP

#define AddCustomCPP (   ...)    __VA_ARGS__

Definition at line 320 of file qconfig.h.

◆ AddHelp

#define AddHelp (   cmd,
  cmdshort 
)

Definition at line 341 of file qconfig.h.

◆ AddHelpAll

#define AddHelpAll (   cmd,
  cmdshort 
)

Definition at line 344 of file qconfig.h.

◆ AddHelpText

#define AddHelpText (   text)

Definition at line 356 of file qconfig.h.

◆ AddOption

#define AddOption (   name,
  type,
  default,
  optname,
  optnameshort,
  help,
  ... 
)    type name = default;

Definition at line 299 of file qconfig.h.

◆ AddOptionArray

#define AddOptionArray (   name,
  type,
  count,
  default,
  optname,
  optnameshort,
  help,
  ... 
)    type name[count] = {_AddOptionArray_INTERNAL_EXPAND default};

Definition at line 302 of file qconfig.h.

◆ AddOptionArrayRTC

#define AddOptionArrayRTC (   ...)    AddOptionArray(__VA_ARGS__)

Definition at line 374 of file qconfig.h.

◆ AddOptionRTC

#define AddOptionRTC (   ...)    AddOption(__VA_ARGS__)

Definition at line 368 of file qconfig.h.

◆ AddOptionSet

#define AddOptionSet (   name,
  type,
  value,
  optname,
  optnameshort,
  help,
  ... 
)

Definition at line 322 of file qconfig.h.

◆ AddOptionVec

#define AddOptionVec (   name,
  type,
  optname,
  optnameshort,
  help,
  ... 
)    std::vector<type> name;

Definition at line 303 of file qconfig.h.

◆ AddShortcut

#define AddShortcut (   cmd,
  cmdshort,
  forward,
  help,
  ... 
)

Definition at line 350 of file qconfig.h.

◆ AddSubConfig

#define AddSubConfig (   name,
  instance 
)    name instance;

Definition at line 323 of file qconfig.h.

◆ AddVariable

#define AddVariable (   name,
  type,
  default 
)    type name = default;

Definition at line 300 of file qconfig.h.

◆ AddVariableRTC

#define AddVariableRTC (   ...)    AddVariable(__VA_ARGS__)

Definition at line 371 of file qconfig.h.

◆ BeginConfig

#define BeginConfig (   name,
  instance 
)
Value:
struct name { \
bool operator==(const name&) const = default;
GLuint const GLchar * name
Definition glcorearb.h:781
bool operator==(const CoarseLocation &a, const CoarseLocation &b)

Definition at line 325 of file qconfig.h.

◆ BeginHiddenConfig

#define BeginHiddenConfig (   name,
  instance 
)    BeginSubConfig(name, instance, , , , )

Definition at line 377 of file qconfig.h.

◆ BeginNamespace

#define BeginNamespace (   name)
Value:
namespace name \
{

Definition at line 293 of file qconfig.h.

◆ BeginSubConfig

#define BeginSubConfig (   name,
  instance,
  parent,
  preoptname,
  preoptnameshort,
  descr,
  ... 
)    BeginConfig(name, instance)

Definition at line 331 of file qconfig.h.

◆ EndConfig

#define EndConfig ( )
Value:
} \
;

Definition at line 332 of file qconfig.h.

◆ EndNamespace

#define EndNamespace ( )    }

Definition at line 296 of file qconfig.h.

◆ QCONFIG_HEADER_GUARD

#define QCONFIG_HEADER_GUARD

Definition at line 290 of file qconfig.h.

Function Documentation

◆ qConfigParse()

int32_t qConfigParse ( int  argc,
const char **  argv,
const char filename = nullptr 
)
extern

Definition at line 515 of file qconfig.cxx.

◆ qConfigPrint()

void qConfigPrint ( )
extern

Definition at line 517 of file qconfig.cxx.