]> git.mxchange.org Git - simgear.git/commitdiff
Go back to a function that actually does check wheter endian swapping needs to be...
authorehofman <ehofman>
Thu, 7 Aug 2003 14:11:35 +0000 (14:11 +0000)
committerehofman <ehofman>
Thu, 7 Aug 2003 14:11:35 +0000 (14:11 +0000)
simgear/scene/sky/clouds3d/SkyArchive.cpp
simgear/scene/sky/clouds3d/SkyCloud.cpp
simgear/scene/sky/clouds3d/SkySceneLoader.cpp
simgear/scene/sky/clouds3d/SkySceneManager.cpp

index f5c8c6487986df0316ecbedf7c33cf1814ab6b0d..f451dd0fc1c0179809ac80dc065141203917efe5 100644 (file)
@@ -1165,7 +1165,7 @@ SKYRESULT SkyArchive::_Load( FILE* pSrcFile)
   if (!iNumItemsRead)
     FAIL_RETURN_MSG(SKYRESULT_FAIL, "Error: SkyArchive::_Load(): failed to read Archive header.");
 
-   _ulEndianSwap(&thisItem.iDataSize);
+   thisItem.iDataSize = ulEndianLittle32(thisItem.iDataSize);
 
   _pName = new char[::strlen(thisItem.pName)+1];
   ::strcpy( _pName, thisItem.pName);
@@ -1178,7 +1178,7 @@ SKYRESULT SkyArchive::_Load( FILE* pSrcFile)
     if (1 > iNumItemsRead)
       FAIL_RETURN_MSG(SKYRESULT_FAIL, "Error: SkyArchive::_Load(): failed to read embedded archive item.");
 
-    _ulEndianSwap(&embeddedItem.iDataSize);
+    embeddedItem.iDataSize = ulEndianLittle32(embeddedItem.iDataSize);
 
    
     switch( embeddedItem.type)
index 24078499602a1a2ab1625588aa276f78fbb92e9a..889ebfb98d09355065194c803daed9ad619c3b1a 100644 (file)
@@ -735,13 +735,13 @@ SKYRESULT SkyCloud::Load(const SkyArchive &archive,
   //_boundingBox.SetMax(vecCenter + Vec3f(rRadius, rRadius, rRadius));
 
   archive.FindUInt32("CldNumParticles", &iNumParticles);
-  _ulEndianSwap(&iNumParticles);
+  iNumParticles = ulEndianLittle32(iNumParticles);
 
   //if (!bLocal)
     archive.FindVec3f("CldCenter", &vecCenter);
-    _ulEndianSwap((unsigned int*)&vecCenter.x);
-    _ulEndianSwap((unsigned int*)&vecCenter.y);
-    _ulEndianSwap((unsigned int*)&vecCenter.z);
+    vecCenter.x = ulEndianLittleFloat(vecCenter.x);
+    vecCenter.y = ulEndianLittleFloat(vecCenter.y);
+    vecCenter.z = ulEndianLittleFloat(vecCenter.z);
 
   Vec3f *pParticlePositions = new Vec3f[iNumParticles];
   float *pParticleRadii     = new float[iNumParticles];
@@ -755,17 +755,16 @@ SKYRESULT SkyCloud::Load(const SkyArchive &archive,
   for (unsigned int i = 0; i < iNumParticles; ++i)
   {
 
-     _ulEndianSwap((unsigned int*)&pParticlePositions[i].x);
-     _ulEndianSwap((unsigned int*)&pParticlePositions[i].y);
-     _ulEndianSwap((unsigned int*)&pParticlePositions[i].z);
+    pParticlePositions[i].x = ulEndianLittleFloat(pParticlePositions[i].x);
+    pParticlePositions[i].y = ulEndianLittleFloat(pParticlePositions[i].y);
+    pParticlePositions[i].z = ulEndianLittleFloat(pParticlePositions[i].z);
 
-     _ulEndianSwap((unsigned int*)&pParticleRadii[i]);
-
-     _ulEndianSwap((unsigned int*)&pParticleColors[i].x);
-     _ulEndianSwap((unsigned int*)&pParticleColors[i].y); 
-     _ulEndianSwap((unsigned int*)&pParticleColors[i].z); 
-     _ulEndianSwap((unsigned int*)&pParticleColors[i].w); 
+    pParticleRadii[i] = ulEndianLittleFloat(pParticleRadii[i]);
 
+    pParticleColors[i].x = ulEndianLittleFloat(pParticleColors[i].x);
+    pParticleColors[i].y = ulEndianLittleFloat(pParticleColors[i].y);
+    pParticleColors[i].z = ulEndianLittleFloat(pParticleColors[i].z);
+    pParticleColors[i].w = ulEndianLittleFloat(pParticleColors[i].w);
 
     SkyCloudParticle *pParticle = new SkyCloudParticle((pParticlePositions[i] + vecCenter) * rScale,
                                                        pParticleRadii[i] * rScale,
index 1f712ecb52af6a61fa9a792911c645882029484b..7ab82735574a5b9ca507b7f97c1d05b02f91a8bf 100644 (file)
@@ -174,7 +174,7 @@ bool SkySceneLoader::Load( SGPath filename, double latitude, double longitude )
   unsigned int iNumFiles;
   if (!SKYFAILED(archive.GetInfo("CloudFile", STRING_TYPE, &iNumFiles)))
   {
-    _ulEndianSwap(&iNumFiles);
+    iNumFiles = ulEndianLittle32(iNumFiles);
     for (unsigned int i = 0; i < iNumFiles; ++i)
     {
       FAIL_RETURN(archive.FindString("CloudFile", &pFilename, i));
index 83d16002174e5fc0ef3cff3ab41c1ff69269081e..0227504687795e2e29563f6720a22cf93fd7253f 100644 (file)
@@ -536,7 +536,7 @@ SKYRESULT SkySceneManager::LoadClouds(SkyArchive& cloudArchive, float rScale, do
 {
   unsigned int iNumClouds = 0;
   cloudArchive.FindUInt32("CldNumClouds", &iNumClouds);
-  _ulEndianSwap(&iNumClouds);
+  iNumClouds = ulEndianLittle32(iNumClouds);
  
   SkyArchive subArchive;
        //iNumClouds = 5;  //set this value to reduce cloud field for debugging