![]() |
VR-Link API Documentation for HLA 1516
|
00001 /****************************************************************************** 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00006 00008 00009 #ifndef varGroup_H_ 00010 #define varGroup_H_ 00011 00012 #include "baseConfigVar.h" 00013 00014 #ifdef DtUSE_UTILITIES_NAMESPACE 00015 namespace DtUSE_UTILITIES_NAMESPACE 00016 { 00017 #endif 00018 00019 00021 class DT_DLL_MTL DtVariableGroup : public DtBaseConfigVariable 00022 { 00023 public: 00024 DtVariableGroup(DtVariableGroup* parent, const DtString& groupName, 00025 const DtString& groupType = "", const DtString& aDescription = ""); 00026 00027 virtual ~DtVariableGroup(); 00028 00029 virtual void addBaseVariable(DtBaseConfigVariable* var); 00030 00032 virtual bool changeOnce() const; 00033 00035 virtual bool isRequired() const; 00036 00038 virtual const DtString& name() const; 00039 00040 virtual DtString type() const; 00041 00043 virtual void getCommandLineArg(DtCmdLine::CmdLine& cmdLine); 00044 00045 virtual void updateFromCommandLineArg(); 00046 00048 virtual void getEnvironmentSchemaType(DtEnvironment env,TypeSet& usedTypes) const; 00049 00053 // MJI - This implies getting an "environment value", not getting a value from 00054 // the environment passed in. 00055 virtual DtEnvValueSP getEnvironmentValue(DtEnvironment env); 00056 00059 virtual void updateFromEnvironment(DtEnvironment env); 00060 00062 DtEnvValueSP getGroupValue(DtEnvironment env); 00063 00064 00065 protected: 00066 DtString myName; 00067 DtString myType; 00068 00069 DtVariableGroup* myParent; 00070 typedef std::list<DtBaseConfigVariable*> VariableList; 00071 VariableList myVars; 00072 }; 00073 00074 #ifdef DtUSE_UTILITIES_NAMESPACE 00075 } 00076 #endif 00077 00078 #endif