Add missing const qualifiers
This commit is contained in:
parent
cad9ed6d50
commit
b76d0cbdbb
8 changed files with 73 additions and 76 deletions
|
@ -86,7 +86,7 @@ ROBOTTOOLS_API tdble RtTrackGetWidth(tTrackSeg *seg, tdble toStart);
|
|||
* and a length in meters for straights.
|
||||
*
|
||||
*/
|
||||
ROBOTTOOLS_API void RtTrackLocal2Global(tTrkLocPos *p, tdble *X, tdble *Y, int flag);
|
||||
ROBOTTOOLS_API void RtTrackLocal2Global(const tTrkLocPos *p, tdble *X, tdble *Y, int flag);
|
||||
|
||||
/*
|
||||
* Convert a Global (segment, X, Y) position into a Local one (segment, toRight, toStart)
|
||||
|
|
|
@ -67,7 +67,7 @@ tdble RtTrackGetWidth(tTrackSeg *seg, tdble toStart)
|
|||
- TR_TORIGHT the toRight field is used
|
||||
- TR_TOLEFT the toLeft field is used
|
||||
*/
|
||||
void RtTrackLocal2Global(tTrkLocPos *p, tdble *X, tdble *Y, int flag)
|
||||
void RtTrackLocal2Global(const tTrkLocPos *p, tdble *X, tdble *Y, int flag)
|
||||
{
|
||||
tdble r, a;
|
||||
tdble tr;
|
||||
|
|
|
@ -89,7 +89,7 @@ SDRender::SDRender(void) :
|
|||
APlanetsData(NULL),
|
||||
thesky(NULL),
|
||||
scenery(NULL),
|
||||
SDTrack(NULL)
|
||||
track(NULL)
|
||||
{
|
||||
BaseSkyColor = osg::Vec3f( 0.31f, 0.43f, 0.69f );
|
||||
BaseFogColor = osg::Vec3f( 0.84f, 0.84f, 1.0f );
|
||||
|
@ -136,8 +136,6 @@ SDRender::~SDRender(void)
|
|||
}
|
||||
|
||||
delete thesky;
|
||||
|
||||
SDTrack = NULL;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -146,10 +144,8 @@ SDRender::~SDRender(void)
|
|||
*
|
||||
* @return 0 if OK, -1 if something failed
|
||||
*/
|
||||
void SDRender::Init(tTrack *track)
|
||||
void SDRender::Init(const tTrack *track)
|
||||
{
|
||||
SDTrack = track;
|
||||
|
||||
std::string datapath = GfDataDir();
|
||||
//datapath +="/";
|
||||
thesky = new SDSky;
|
||||
|
@ -279,8 +275,8 @@ void SDRender::Init(tTrack *track)
|
|||
|
||||
GfLogDebug(" Planets : %d\n", NPlanets);
|
||||
|
||||
const int timeOfDay = (int)SDTrack->local.timeofday;
|
||||
//SDRain = (unsigned int)SDTrack->local.rain;
|
||||
const int timeOfDay = track->local.timeofday;
|
||||
//SDRain = (unsigned int)track->local.rain;
|
||||
const double domeSizeRatio = SDSkyDomeDistance / 80000.0;
|
||||
|
||||
GfLogDebug(" domeSizeRation : %f\n", domeSizeRatio);
|
||||
|
@ -289,7 +285,7 @@ void SDRender::Init(tTrack *track)
|
|||
SDSkyDomeDistance, 2000 * domeSizeRatio, SDSkyDomeDistance, NPlanets,
|
||||
APlanetsData, NStars, AStarsData );
|
||||
GfLogDebug("Build SKY\n");
|
||||
GLfloat sunAscension = SDTrack->local.sunascension;
|
||||
GLfloat sunAscension = track->local.sunascension;
|
||||
SDSunDeclination = (float)(15 * (double)timeOfDay / 3600 - 90.0);
|
||||
|
||||
thesky->setSD( DEG2RAD(SDSunDeclination));
|
||||
|
@ -304,7 +300,7 @@ void SDRender::Init(tTrack *track)
|
|||
else
|
||||
SDMoonDeclination = (rand() % 270);
|
||||
|
||||
const float moonAscension = SDTrack->local.sunascension;
|
||||
const float moonAscension = track->local.sunascension;
|
||||
|
||||
thesky->setMD( DEG2RAD(SDMoonDeclination) );
|
||||
thesky->setMRA( DEG2RAD(moonAscension) );
|
||||
|
@ -319,7 +315,7 @@ void SDRender::Init(tTrack *track)
|
|||
//double r_WrldZ = SDScenery::getWorldZ();
|
||||
osg::Vec3d viewPos(r_WrldX / 2, r_WrldY/ 2, 0.0 );
|
||||
|
||||
weather();
|
||||
weather(track);
|
||||
thesky->set_visibility( SDVisibility ); // Visibility in meters
|
||||
|
||||
thesky->reposition( viewPos, 0, 0);
|
||||
|
@ -327,7 +323,7 @@ void SDRender::Init(tTrack *track)
|
|||
moon_angle = (float)thesky->getMA();
|
||||
thesky->repaint(SkyColor, FogColor, CloudsColor, sol_angle, moon_angle, NPlanets,
|
||||
APlanetsData, NStars, AStarsData);
|
||||
UpdateLight();
|
||||
UpdateLight(track);
|
||||
|
||||
osg::ref_ptr<osgShadow::ShadowMap> vdsm = new osgShadow::ShadowMap;
|
||||
m_Root = new osg::Group;
|
||||
|
@ -448,6 +444,7 @@ void SDRender::Init(tTrack *track)
|
|||
stateSet2->setMode(GL_LIGHTING, osg::StateAttribute::ON);
|
||||
stateSet2->setMode(GL_DEPTH_TEST, osg::StateAttribute::ON);
|
||||
//stateSet2->setMode(GL_FOG, osg::StateAttribute::ON);
|
||||
this->track = track;
|
||||
}//SDRender::Init
|
||||
|
||||
void SDRender::ShadowedScene()
|
||||
|
@ -536,13 +533,13 @@ void SDRender::addCars(osg::Node* cars, osg::Node* carLights)
|
|||
optimizer.optimize(m_Root.get());
|
||||
}
|
||||
|
||||
void SDRender::UpdateLight( void )
|
||||
void SDRender::UpdateLight(const tTrack *track)
|
||||
{
|
||||
sol_angle = (float)thesky->getSA();
|
||||
moon_angle = (float)thesky->getMA();
|
||||
sky_brightness = (float)(1.0 + cos(sol_angle)) / 2.0f;
|
||||
|
||||
if (SDTrack->local.rain > 0)
|
||||
if (track->local.rain > 0)
|
||||
{
|
||||
BaseFogColor = osg::Vec3f(0.42f, 0.44f, 0.50f);
|
||||
sky_brightness = (float)pow(sky_brightness, 0.5f);
|
||||
|
@ -700,11 +697,11 @@ void SDRender::UpdateSky(double currentTime, double accelTime, double X, double
|
|||
if ( SDSkyDomeDistance )
|
||||
{
|
||||
// Ensure the sun and moon positions are reset
|
||||
const int timeOfDay = (int)SDTrack->local.timeofday;
|
||||
GLfloat sunAscension = SDTrack->local.sunascension;
|
||||
const int timeOfDay = (int)track->local.timeofday;
|
||||
GLfloat sunAscension = track->local.sunascension;
|
||||
SDSunDeclination = (float)(15 * (double)timeOfDay / 3600 - 90.0);
|
||||
|
||||
const float moonAscension = SDTrack->local.sunascension;
|
||||
const float moonAscension = track->local.sunascension;
|
||||
//SDMoonDeclination = grUpdateMoonPos(timeOfDay);
|
||||
|
||||
thesky->setSD( DEG2RAD(SDSunDeclination));
|
||||
|
@ -759,7 +756,7 @@ void SDRender::UpdateSky(double currentTime, double accelTime, double X, double
|
|||
}
|
||||
|
||||
// 3) Update scene color and light
|
||||
UpdateLight();
|
||||
UpdateLight(track);
|
||||
|
||||
sunLight->getLight()->setAmbient(SceneAmbiant);
|
||||
sunLight->getLight()->setDiffuse(SceneDiffuse);
|
||||
|
@ -785,7 +782,7 @@ void SDRender::UpdateSky(double currentTime, double accelTime, double X, double
|
|||
|
||||
}//grUpdateSky
|
||||
|
||||
void SDRender::weather(void)
|
||||
void SDRender::weather(const tTrack *track)
|
||||
{
|
||||
std::string datapath = GfDataDir();
|
||||
double domeSizeRatio = SDSkyDomeDistance / 80000.0;
|
||||
|
@ -795,22 +792,22 @@ void SDRender::weather(void)
|
|||
(unsigned)(GfParmGetNum(grHandle, GR_SCT_GRAPHIC, GR_ATT_CLOUDLAYER, 0, 0) + 0.5);
|
||||
|
||||
GfLogDebug("Graphic options : Number of cloud layers : %u\n", SDNbCloudLayers);
|
||||
GfLogDebug("Graphic cloud alt 1 = %.3f\n", SDTrack->local.cloud_altitude);
|
||||
GfLogDebug("Graphic cloud alt 2 = %.3f\n", SDTrack->local.cloud_altitude2);
|
||||
GfLogDebug("Graphic cloud alt 3 = %.3f\n", SDTrack->local.cloud_altitude3);
|
||||
GfLogDebug("Graphic cloud alt 1 = %.3f\n", track->local.cloud_altitude);
|
||||
GfLogDebug("Graphic cloud alt 2 = %.3f\n", track->local.cloud_altitude2);
|
||||
GfLogDebug("Graphic cloud alt 3 = %.3f\n", track->local.cloud_altitude3);
|
||||
|
||||
cloudsTextureIndex = SDTrack->local.clouds;
|
||||
cloudsTextureIndex2 = SDTrack->local.clouds2;
|
||||
cloudsTextureIndex3 = SDTrack->local.clouds3;
|
||||
cloudsTextureIndex = track->local.clouds;
|
||||
cloudsTextureIndex2 = track->local.clouds2;
|
||||
cloudsTextureIndex3 = track->local.clouds3;
|
||||
|
||||
switch (SDTrack->local.rain)
|
||||
switch (track->local.rain)
|
||||
{
|
||||
case TR_RAIN_NONE:
|
||||
SDVisibility = SDTrack->local.visibility;
|
||||
SDVisibility = track->local.visibility;
|
||||
SDRain = 0;
|
||||
break;
|
||||
case TR_RAIN_LITTLE:
|
||||
SDVisibility = SDTrack->local.visibility;
|
||||
SDVisibility = track->local.visibility;
|
||||
SDRain = 1;
|
||||
break;
|
||||
case TR_RAIN_MEDIUM:
|
||||
|
@ -823,8 +820,8 @@ void SDRender::weather(void)
|
|||
break;
|
||||
default:
|
||||
GfLogDebug("Unsupported rain strength value %d (assuming none)",
|
||||
SDTrack->local.rain);
|
||||
SDVisibility = SDTrack->local.visibility;
|
||||
track->local.rain);
|
||||
SDVisibility = track->local.visibility;
|
||||
break;
|
||||
}//switch Rain
|
||||
|
||||
|
@ -832,9 +829,9 @@ void SDRender::weather(void)
|
|||
{
|
||||
SDCloudLayer *layer = new SDCloudLayer(datapath);
|
||||
layer->setCoverage(layer->SD_CLOUD_OVERCAST);
|
||||
layer->setSpeed(SDTrack->local.windspeed);
|
||||
layer->setDirection(SDTrack->local.winddir);
|
||||
layer->setElevation_m(SDTrack->local.cloud_altitude);
|
||||
layer->setSpeed(track->local.windspeed);
|
||||
layer->setDirection(track->local.winddir);
|
||||
layer->setElevation_m(track->local.cloud_altitude);
|
||||
layer->setThickness_m(100 / domeSizeRatio);
|
||||
layer->setTransition_m(100 / domeSizeRatio);
|
||||
layer->setSpan_m(SDSkyDomeDistance);
|
||||
|
@ -875,9 +872,9 @@ void SDRender::weather(void)
|
|||
break;
|
||||
}
|
||||
|
||||
layer->setSpeed(SDTrack->local.windspeed);
|
||||
layer->setDirection(SDTrack->local.winddir);
|
||||
layer->setElevation_m(SDTrack->local.cloud_altitude);
|
||||
layer->setSpeed(track->local.windspeed);
|
||||
layer->setDirection(track->local.winddir);
|
||||
layer->setElevation_m(track->local.cloud_altitude);
|
||||
layer->setThickness_m(100 / domeSizeRatio);
|
||||
layer->setTransition_m(100 / domeSizeRatio);
|
||||
layer->setSpan_m(SDSkyDomeDistance);
|
||||
|
@ -919,9 +916,9 @@ void SDRender::weather(void)
|
|||
break;
|
||||
}
|
||||
|
||||
layer2->setSpeed(SDTrack->local.windspeed / 2);
|
||||
layer2->setDirection(SDTrack->local.winddir);
|
||||
layer2->setElevation_m(SDTrack->local.cloud_altitude2);
|
||||
layer2->setSpeed(track->local.windspeed / 2);
|
||||
layer2->setDirection(track->local.winddir);
|
||||
layer2->setElevation_m(track->local.cloud_altitude2);
|
||||
layer2->setThickness_m(100 / domeSizeRatio);
|
||||
layer2->setTransition_m(100 / domeSizeRatio);
|
||||
layer2->setSpan_m(SDSkyDomeDistance);
|
||||
|
@ -959,9 +956,9 @@ void SDRender::weather(void)
|
|||
break;
|
||||
}
|
||||
|
||||
layer->setSpeed(SDTrack->local.windspeed);
|
||||
layer->setDirection(SDTrack->local.winddir);
|
||||
layer->setElevation_m(SDTrack->local.cloud_altitude);
|
||||
layer->setSpeed(track->local.windspeed);
|
||||
layer->setDirection(track->local.winddir);
|
||||
layer->setElevation_m(track->local.cloud_altitude);
|
||||
layer->setThickness_m(100 / domeSizeRatio);
|
||||
layer->setTransition_m(100 / domeSizeRatio);
|
||||
layer->setSpan_m(SDSkyDomeDistance);
|
||||
|
@ -1002,9 +999,9 @@ void SDRender::weather(void)
|
|||
break;
|
||||
}
|
||||
|
||||
layer->setSpeed(SDTrack->local.windspeed);
|
||||
layer->setDirection(SDTrack->local.winddir);
|
||||
layer->setElevation_m(SDTrack->local.cloud_altitude);
|
||||
layer->setSpeed(track->local.windspeed);
|
||||
layer->setDirection(track->local.winddir);
|
||||
layer->setElevation_m(track->local.cloud_altitude);
|
||||
layer->setThickness_m(100 / domeSizeRatio);
|
||||
layer->setTransition_m(100 / domeSizeRatio);
|
||||
layer->setSpan_m(SDSkyDomeDistance);
|
||||
|
@ -1051,8 +1048,8 @@ void SDRender::weather(void)
|
|||
}
|
||||
|
||||
layer3->setSpeed(0);
|
||||
layer3->setDirection(SDTrack->local.winddir);
|
||||
layer3->setElevation_m(SDTrack->local.cloud_altitude3);
|
||||
layer3->setDirection(track->local.winddir);
|
||||
layer3->setElevation_m(track->local.cloud_altitude3);
|
||||
layer3->setThickness_m(100 / domeSizeRatio);
|
||||
layer3->setTransition_m(100 / domeSizeRatio);
|
||||
layer3->setSpan_m(SDSkyDomeDistance);
|
||||
|
@ -1090,9 +1087,9 @@ void SDRender::weather(void)
|
|||
break;
|
||||
}
|
||||
|
||||
layer2->setSpeed(SDTrack->local.windspeed / 2);
|
||||
layer2->setDirection(SDTrack->local.winddir);
|
||||
layer2->setElevation_m(SDTrack->local.cloud_altitude2);
|
||||
layer2->setSpeed(track->local.windspeed / 2);
|
||||
layer2->setDirection(track->local.winddir);
|
||||
layer2->setElevation_m(track->local.cloud_altitude2);
|
||||
layer2->setThickness_m(100 / domeSizeRatio);
|
||||
layer2->setTransition_m(100 / domeSizeRatio);
|
||||
layer2->setSpan_m(SDSkyDomeDistance);
|
||||
|
@ -1130,9 +1127,9 @@ void SDRender::weather(void)
|
|||
break;
|
||||
}
|
||||
|
||||
layer->setSpeed(SDTrack->local.windspeed);
|
||||
layer->setDirection(SDTrack->local.winddir);
|
||||
layer->setElevation_m(SDTrack->local.cloud_altitude);
|
||||
layer->setSpeed(track->local.windspeed);
|
||||
layer->setDirection(track->local.winddir);
|
||||
layer->setElevation_m(track->local.cloud_altitude);
|
||||
layer->setThickness_m(100 / domeSizeRatio);
|
||||
layer->setTransition_m(100 / domeSizeRatio);
|
||||
layer->setSpan_m(SDSkyDomeDistance);
|
||||
|
@ -1173,9 +1170,9 @@ void SDRender::weather(void)
|
|||
break;
|
||||
}
|
||||
|
||||
layer2->setSpeed(SDTrack->local.windspeed /2);
|
||||
layer2->setDirection(SDTrack->local.winddir);
|
||||
layer2->setElevation_m(SDTrack->local.cloud_altitude2);
|
||||
layer2->setSpeed(track->local.windspeed /2);
|
||||
layer2->setDirection(track->local.winddir);
|
||||
layer2->setElevation_m(track->local.cloud_altitude2);
|
||||
layer2->setThickness_m(100 / domeSizeRatio);
|
||||
layer2->setTransition_m(100 / domeSizeRatio);
|
||||
layer2->setSpan_m(SDSkyDomeDistance);
|
||||
|
@ -1213,9 +1210,9 @@ void SDRender::weather(void)
|
|||
break;
|
||||
}
|
||||
|
||||
layer->setSpeed(SDTrack->local.windspeed);
|
||||
layer->setDirection(SDTrack->local.winddir);
|
||||
layer->setElevation_m(SDTrack->local.cloud_altitude);
|
||||
layer->setSpeed(track->local.windspeed);
|
||||
layer->setDirection(track->local.winddir);
|
||||
layer->setElevation_m(track->local.cloud_altitude);
|
||||
layer->setThickness_m(100 / domeSizeRatio);
|
||||
layer->setTransition_m(100 / domeSizeRatio);
|
||||
layer->setSpan_m(SDSkyDomeDistance);
|
||||
|
@ -1255,9 +1252,9 @@ void SDRender::weather(void)
|
|||
break;
|
||||
}
|
||||
|
||||
layer->setSpeed(SDTrack->local.windspeed);
|
||||
layer->setDirection(SDTrack->local.winddir);
|
||||
layer->setElevation_m(SDTrack->local.cloud_altitude);
|
||||
layer->setSpeed(track->local.windspeed);
|
||||
layer->setDirection(track->local.winddir);
|
||||
layer->setElevation_m(track->local.cloud_altitude);
|
||||
layer->setThickness_m(100 / domeSizeRatio);
|
||||
layer->setTransition_m(100 / domeSizeRatio);
|
||||
layer->setSpan_m(SDSkyDomeDistance);
|
||||
|
|
|
@ -98,22 +98,22 @@ private:
|
|||
|
||||
SDSky *thesky;
|
||||
SDScenery *scenery;
|
||||
tTrack *SDTrack;
|
||||
const tTrack *track;
|
||||
|
||||
public:
|
||||
SDRender(void);
|
||||
~SDRender(void);
|
||||
|
||||
void Init(tTrack *track);
|
||||
void Init(const tTrack *track);
|
||||
osg::ref_ptr< osg::StateSet> setFogState();
|
||||
osg::Vec4f getSceneColor(void);
|
||||
void UpdateTime(tSituation *s);
|
||||
void UpdateLight(void);
|
||||
void UpdateLight(const tTrack *track);
|
||||
void addCars(osg::Node* cars, osg::Node* carLights);
|
||||
void UpdateFogColor(double angle);
|
||||
void UpdateSky(double currentTime, double accelTime, double X, double Y);
|
||||
void ShadowedScene(void);
|
||||
void weather(void);
|
||||
void weather(const tTrack *track);
|
||||
|
||||
inline SDSky * getSky() { return thesky; }
|
||||
inline int getShader() const { return carsShader; }
|
||||
|
|
|
@ -35,11 +35,11 @@ SDPit::~SDPit(void)
|
|||
{
|
||||
}
|
||||
|
||||
void SDPit::build(tTrack *track)
|
||||
void SDPit::build(const tTrack *track)
|
||||
{
|
||||
GfLogDebug("Build pits ... \n");
|
||||
|
||||
tTrackPitInfo *pits = &track->pits;
|
||||
const tTrackPitInfo *pits = &track->pits;
|
||||
|
||||
if (pits->pitindicator > 0)
|
||||
GfLogTrace("Pit Indicator ... YES ...\n");
|
||||
|
@ -56,7 +56,7 @@ void SDPit::build(tTrack *track)
|
|||
GfLogTrace("Creating track side pit buildings (%d slots) ...\n", pits->nMaxPits);
|
||||
for (int i = 0; i < pits->nMaxPits; i++)
|
||||
{
|
||||
tTrackOwnPit *act_pit = &pits->driversPits[i];
|
||||
const tTrackOwnPit *act_pit = &pits->driversPits[i];
|
||||
|
||||
osgLoader loader;
|
||||
|
||||
|
|
|
@ -69,7 +69,7 @@ SDScenery::~SDScenery(void)
|
|||
}
|
||||
}
|
||||
|
||||
void SDScenery::LoadScene(tTrack *track)
|
||||
void SDScenery::LoadScene(const tTrack *track)
|
||||
{
|
||||
void *hndl = grTrackHandle;
|
||||
const char *acname;
|
||||
|
|
|
@ -69,7 +69,7 @@ public:
|
|||
// Destructor
|
||||
~SDPit(void);
|
||||
|
||||
void build(tTrack *track);
|
||||
void build(const tTrack *track);
|
||||
|
||||
osg::ref_ptr<osg::Group> getPit() const { return pit_root; }
|
||||
};
|
||||
|
@ -89,7 +89,7 @@ public:
|
|||
// Destructor
|
||||
~SDTrackLights(void);
|
||||
|
||||
void build(tTrack *track);
|
||||
void build(const tTrack *track);
|
||||
void update(double currentTime, double totTime, int raceType);
|
||||
|
||||
osg::ref_ptr<osg::Group> getTrackLight() { return _osgtracklight.get(); }
|
||||
|
@ -135,7 +135,7 @@ public:
|
|||
/* Destructor */
|
||||
~SDScenery(void);
|
||||
|
||||
void LoadScene(tTrack *track);
|
||||
void LoadScene(const tTrack *track);
|
||||
void ShutdownScene(void);
|
||||
void reposition(double X, double Y, double Z);
|
||||
void update_tracklights(double currentTime, double totTime, int raceType);
|
||||
|
|
|
@ -285,7 +285,7 @@ SDTrackLights::~SDTrackLights(void)
|
|||
if (internal) delete internal;
|
||||
}
|
||||
|
||||
void SDTrackLights::build(tTrack *track)
|
||||
void SDTrackLights::build(const tTrack *track)
|
||||
{
|
||||
if (internal) delete internal;
|
||||
|
||||
|
|
Loading…
Reference in a new issue