The VR-Vantage Control Toolkit lets you send DIS or HLA messages that can remotely control a VR-Vantage application.
It has messages for most VR-Vantage display settings. This example shows how to add new control messages by adding a viewLightScale view control message.
Please review the comments in the files for details.
Example Source Files
MyLightScaleCommand.cxx
using namespace makVrv;
namespace MyViewControl
{
MyLightScaleCommand::MyLightScaleCommand()
, myDiffuseLightScale(0)
, myAmbientLightScale(0)
, myDiffuseLightScaleSet(false)
, myAmbientLightScaleSet(false)
{
}
MyLightScaleCommand::~MyLightScaleCommand()
{
}
bool MyLightScaleCommand::diffuseLightScaleSet() const
{
return myDiffuseLightScaleSet;
}
int MyLightScaleCommand::diffuseLightScale() const
{
return myDiffuseLightScale;
}
void MyLightScaleCommand::setDiffuseLightScale( int scale )
{
myDiffuseLightScale =
scale;
myDiffuseLightScaleSet = true;
}
bool MyLightScaleCommand::ambientLightScaleSet() const
{
return myAmbientLightScaleSet;
}
int MyLightScaleCommand::ambientLightScale() const
{
return myAmbientLightScale;
}
void MyLightScaleCommand::setAmbientLightScale( int scale )
{
myAmbientLightScale =
scale;
myAmbientLightScaleSet = true;
}
void MyLightScaleCommand::execute(
DtDe& de)
{
if ( diffuseLightScaleSet() )
{
}
if ( ambientLightScaleSet() )
{
}
}
{
}
MyLightScaleCommandCreator::~MyLightScaleCommandCreator()
{
}
{
MyLightScaleCommand* retCmd = 0;
{
{
retCmd = new MyLightScaleCommand();
{
}
{
}
}
}
return retCmd;
}
}
MyLightScaleCommand.h
#pragma once
using namespace makVrv;
namespace MyViewControl
{
{
public:
MyLightScaleCommand();
virtual ~MyLightScaleCommand();
virtual bool diffuseLightScaleSet() const;
virtual int diffuseLightScale() const;
virtual void setDiffuseLightScale( int scale );
virtual bool ambientLightScaleSet() const;
virtual int ambientLightScale() const;
virtual void setAmbientLightScale( int scale );
virtual void execute(
DtDe& de);
protected:
int myDiffuseLightScale;
int myAmbientLightScale;
bool myDiffuseLightScaleSet;
bool myAmbientLightScaleSet;
};
{
public:
virtual ~MyLightScaleCommandCreator();
};
}
MyViewControlDataTypes.h
#pragma once
namespace MyControlToolkit
{
{
};
{
{
};
};
}
MyViewControlDataTypes.inl
#pragma once
namespace MyControlToolkit
{
: vrvControlToolkit::DtVrvControl_v1()
{
myVersion = 1;
mySize = sizeof(MyLightScale_v1);
myDiffuseLightScale = 0;
myAmbientLightScale = 0;
myValuesSetFlags = 0;
}
MyLightScale_v1::~MyLightScale_v1()
{
}
}