mirror of
https://github.com/ioquake/jedi-academy.git
synced 2024-11-10 07:11:44 +00:00
replace _isnan with Q_isnan
This commit is contained in:
parent
3dff5cdf52
commit
a72f2af77e
9 changed files with 41 additions and 39 deletions
|
@ -762,7 +762,7 @@ void AddSoundEvent( gentity_t *owner, vec3_t position, float radius, alertEventL
|
||||||
// react to enemy alert events in some way?
|
// react to enemy alert events in some way?
|
||||||
|
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
assert( !_isnan(position[0]) && !_isnan(position[1]) && !_isnan(position[2]) );
|
assert( !Q_isnan(position[0]) && !Q_isnan(position[1]) && !Q_isnan(position[2]) );
|
||||||
#endif
|
#endif
|
||||||
VectorCopy( position, level.alertEvents[ level.numAlertEvents ].position );
|
VectorCopy( position, level.alertEvents[ level.numAlertEvents ].position );
|
||||||
|
|
||||||
|
@ -810,7 +810,7 @@ void AddSightEvent( gentity_t *owner, vec3_t position, float radius, alertEventL
|
||||||
// react to enemy alert events in some way?
|
// react to enemy alert events in some way?
|
||||||
|
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
assert( !_isnan(position[0]) && !_isnan(position[1]) && !_isnan(position[2]) );
|
assert( !Q_isnan(position[0]) && !Q_isnan(position[1]) && !Q_isnan(position[2]) );
|
||||||
#endif
|
#endif
|
||||||
VectorCopy( position, level.alertEvents[ level.numAlertEvents ].position );
|
VectorCopy( position, level.alertEvents[ level.numAlertEvents ].position );
|
||||||
|
|
||||||
|
|
|
@ -7321,8 +7321,8 @@ void PM_FootSlopeTrace( float *pDiff, float *pInterval )
|
||||||
#if 1
|
#if 1
|
||||||
for ( int i = 0; i < 3; i++ )
|
for ( int i = 0; i < 3; i++ )
|
||||||
{
|
{
|
||||||
if ( _isnan( pm->gent->client->renderInfo.footLPoint[i] )
|
if ( Q_isnan( pm->gent->client->renderInfo.footLPoint[i] )
|
||||||
|| _isnan( pm->gent->client->renderInfo.footRPoint[i] ) )
|
|| Q_isnan( pm->gent->client->renderInfo.footRPoint[i] ) )
|
||||||
{
|
{
|
||||||
if ( pDiff != NULL )
|
if ( pDiff != NULL )
|
||||||
{
|
{
|
||||||
|
@ -15342,4 +15342,4 @@ void Pmove( pmove_t *pmove )
|
||||||
{//half grav
|
{//half grav
|
||||||
pm->ps->gravity *= 2;
|
pm->ps->gravity *= 2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1381,8 +1381,8 @@ void G_TouchTriggersLerped( gentity_t *ent ) {
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
for ( int j = 0; j < 3; j++ )
|
for ( int j = 0; j < 3; j++ )
|
||||||
{
|
{
|
||||||
assert( !_isnan(ent->currentOrigin[j]));
|
assert( !Q_isnan(ent->currentOrigin[j]));
|
||||||
assert( !_isnan(ent->lastOrigin[j]));
|
assert( !Q_isnan(ent->lastOrigin[j]));
|
||||||
}
|
}
|
||||||
#endif// _DEBUG
|
#endif// _DEBUG
|
||||||
VectorSubtract( ent->currentOrigin, ent->lastOrigin, diff );
|
VectorSubtract( ent->currentOrigin, ent->lastOrigin, diff );
|
||||||
|
|
|
@ -295,7 +295,7 @@ void G_ReflectMissile( gentity_t *ent, gentity_t *missile, vec3_t forward )
|
||||||
VectorNormalize( bounce_dir );
|
VectorNormalize( bounce_dir );
|
||||||
VectorScale( bounce_dir, speed, missile->s.pos.trDelta );
|
VectorScale( bounce_dir, speed, missile->s.pos.trDelta );
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
assert( !_isnan(missile->s.pos.trDelta[0])&&!_isnan(missile->s.pos.trDelta[1])&&!_isnan(missile->s.pos.trDelta[2]));
|
assert( !Q_isnan(missile->s.pos.trDelta[0])&&!Q_isnan(missile->s.pos.trDelta[1])&&!Q_isnan(missile->s.pos.trDelta[2]));
|
||||||
#endif// _DEBUG
|
#endif// _DEBUG
|
||||||
missile->s.pos.trTime = level.time - 10; // move a bit on the very first frame
|
missile->s.pos.trTime = level.time - 10; // move a bit on the very first frame
|
||||||
VectorCopy( missile->currentOrigin, missile->s.pos.trBase );
|
VectorCopy( missile->currentOrigin, missile->s.pos.trBase );
|
||||||
|
@ -1531,4 +1531,4 @@ void G_RunMissile( gentity_t *ent )
|
||||||
}
|
}
|
||||||
|
|
||||||
G_MissileImpact( ent, &tr, trHitLoc );
|
G_MissileImpact( ent, &tr, trHitLoc );
|
||||||
}
|
}
|
||||||
|
|
|
@ -509,6 +509,8 @@ extern const vec3_t axisDefault[3];
|
||||||
|
|
||||||
#define IS_NAN(x) (((*(int *)&x)&nanmask)==nanmask)
|
#define IS_NAN(x) (((*(int *)&x)&nanmask)==nanmask)
|
||||||
|
|
||||||
|
#define Q_isnan(x) (isnan(x))
|
||||||
|
|
||||||
#ifdef _XBOX
|
#ifdef _XBOX
|
||||||
inline void Q_CastShort2Float(float *f, const short *s)
|
inline void Q_CastShort2Float(float *f, const short *s)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1580,7 +1580,7 @@ qboolean G2API_GetBoltMatrix(CGhoul2Info_v &ghoul2, const int modelIndex, const
|
||||||
{
|
{
|
||||||
for ( int j = 0; j < 4; j++ )
|
for ( int j = 0; j < 4; j++ )
|
||||||
{
|
{
|
||||||
assert( !_isnan(matrix->matrix[i][j]));
|
assert( !Q_isnan(matrix->matrix[i][j]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif// _DEBUG
|
#endif// _DEBUG
|
||||||
|
|
|
@ -1134,7 +1134,7 @@ static void G2_Generate_MatrixRag(
|
||||||
{
|
{
|
||||||
for (j = 0; j < 4; j++ )
|
for (j = 0; j < 4; j++ )
|
||||||
{
|
{
|
||||||
assert( !_isnan(bone.matrix.matrix[i][j]));
|
assert( !Q_isnan(bone.matrix.matrix[i][j]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif// _DEBUG
|
#endif// _DEBUG
|
||||||
|
@ -1214,8 +1214,8 @@ static int G2_Set_Bone_Rag(const mdxaHeader_t *mod_a,
|
||||||
|
|
||||||
G2_GetBoneMatrixLow(ghoul2,bone.boneNumber,scale,bone.originalTrueBoneMatrix,bone.basepose,bone.baseposeInv);
|
G2_GetBoneMatrixLow(ghoul2,bone.boneNumber,scale,bone.originalTrueBoneMatrix,bone.basepose,bone.baseposeInv);
|
||||||
// bone.parentRawBoneIndex=G2_GetParentBoneMatrixLow(ghoul2,bone.boneNumber,scale,bone.parentTrueBoneMatrix,bone.baseposeParent,bone.baseposeInvParent);
|
// bone.parentRawBoneIndex=G2_GetParentBoneMatrixLow(ghoul2,bone.boneNumber,scale,bone.parentTrueBoneMatrix,bone.baseposeParent,bone.baseposeInvParent);
|
||||||
assert( !_isnan(bone.originalTrueBoneMatrix.matrix[1][1]));
|
assert( !Q_isnan(bone.originalTrueBoneMatrix.matrix[1][1]));
|
||||||
assert( !_isnan(bone.originalTrueBoneMatrix.matrix[1][3]));
|
assert( !Q_isnan(bone.originalTrueBoneMatrix.matrix[1][3]));
|
||||||
bone.originalOrigin[0]=bone.originalTrueBoneMatrix.matrix[0][3];
|
bone.originalOrigin[0]=bone.originalTrueBoneMatrix.matrix[0][3];
|
||||||
bone.originalOrigin[1]=bone.originalTrueBoneMatrix.matrix[1][3];
|
bone.originalOrigin[1]=bone.originalTrueBoneMatrix.matrix[1][3];
|
||||||
bone.originalOrigin[2]=bone.originalTrueBoneMatrix.matrix[2][3];
|
bone.originalOrigin[2]=bone.originalTrueBoneMatrix.matrix[2][3];
|
||||||
|
@ -1625,7 +1625,7 @@ void G2_SetRagDoll(CGhoul2Info_v &ghoul2V,CRagDollParams *parms)
|
||||||
//I am just leaving it whatever it is for now, because my velocity scaling
|
//I am just leaving it whatever it is for now, because my velocity scaling
|
||||||
//only works on x and y and the gravity stuff for NPCs is a bit unpleasent
|
//only works on x and y and the gravity stuff for NPCs is a bit unpleasent
|
||||||
//trying to change/work with
|
//trying to change/work with
|
||||||
assert( !_isnan(bone.lastShotDir[1]));
|
assert( !Q_isnan(bone.lastShotDir[1]));
|
||||||
*/
|
*/
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2091,7 +2091,7 @@ void G2_SetRagDollBullet(CGhoul2Info &ghoul2,const vec3_t rayStart,const vec3_t
|
||||||
// bone.velocityEffector[0]=shotDir[0]*(effect+flrand(0.0f,0.05f))*flrand(-0.1f,3.0f);
|
// bone.velocityEffector[0]=shotDir[0]*(effect+flrand(0.0f,0.05f))*flrand(-0.1f,3.0f);
|
||||||
// bone.velocityEffector[1]=shotDir[1]*(effect+flrand(0.0f,0.05f))*flrand(-0.1f,3.0f);
|
// bone.velocityEffector[1]=shotDir[1]*(effect+flrand(0.0f,0.05f))*flrand(-0.1f,3.0f);
|
||||||
// bone.velocityEffector[2]=fabs(shotDir[2])*(effect+flrand(0.0f,0.05f))*flrand(-0.1f,3.0f);
|
// bone.velocityEffector[2]=fabs(shotDir[2])*(effect+flrand(0.0f,0.05f))*flrand(-0.1f,3.0f);
|
||||||
assert( !_isnan(shotDir[2]));
|
assert( !Q_isnan(shotDir[2]));
|
||||||
// bone.currentAngles[0]+=flrand(-10.0f*lenr,10.0f*lenr);
|
// bone.currentAngles[0]+=flrand(-10.0f*lenr,10.0f*lenr);
|
||||||
// bone.currentAngles[1]+=flrand(-10.0f*lenr,10.0f*lenr);
|
// bone.currentAngles[1]+=flrand(-10.0f*lenr,10.0f*lenr);
|
||||||
// bone.currentAngles[2]+=flrand(-10.0f*lenr,10.0f*lenr);
|
// bone.currentAngles[2]+=flrand(-10.0f*lenr,10.0f*lenr);
|
||||||
|
@ -2594,7 +2594,7 @@ static void G2_RagDollCurrentPosition(CGhoul2Info_v &ghoul2V,int g2Index,int fra
|
||||||
for (k=0;k<3;k++)
|
for (k=0;k<3;k++)
|
||||||
{
|
{
|
||||||
ragEffectors[i].currentOrigin[k]=ragBones[i].matrix[k][3];
|
ragEffectors[i].currentOrigin[k]=ragBones[i].matrix[k][3];
|
||||||
assert( !_isnan(ragEffectors[i].currentOrigin[k]));
|
assert( !Q_isnan(ragEffectors[i].currentOrigin[k]));
|
||||||
if (!i)
|
if (!i)
|
||||||
{
|
{
|
||||||
// set mins, maxs and cm
|
// set mins, maxs and cm
|
||||||
|
@ -2870,10 +2870,10 @@ static bool G2_RagDollSettlePositionNumeroTrois(CGhoul2Info_v &ghoul2V, const ve
|
||||||
|
|
||||||
{
|
{
|
||||||
trace_t tr;
|
trace_t tr;
|
||||||
assert( !_isnan(testStart[1]));
|
assert( !Q_isnan(testStart[1]));
|
||||||
assert( !_isnan(testEnd[1]));
|
assert( !Q_isnan(testEnd[1]));
|
||||||
assert( !_isnan(testMins[1]));
|
assert( !Q_isnan(testMins[1]));
|
||||||
assert( !_isnan(testMaxs[1]));
|
assert( !Q_isnan(testMaxs[1]));
|
||||||
Rag_Trace(&tr,testStart,testMins,testMaxs,testEnd,ignoreNum,RAG_MASK,G2_NOCOLLIDE,0/*SV_TRACE_NO_PLAYER*/);
|
Rag_Trace(&tr,testStart,testMins,testMaxs,testEnd,ignoreNum,RAG_MASK,G2_NOCOLLIDE,0/*SV_TRACE_NO_PLAYER*/);
|
||||||
if (tr.entityNum==0)
|
if (tr.entityNum==0)
|
||||||
{
|
{
|
||||||
|
@ -2931,10 +2931,10 @@ static bool G2_RagDollSettlePositionNumeroTrois(CGhoul2Info_v &ghoul2V, const ve
|
||||||
vec3_t testEnd;
|
vec3_t testEnd;
|
||||||
VectorCopy(testStart,testEnd); //last arg is dest
|
VectorCopy(testStart,testEnd); //last arg is dest
|
||||||
testEnd[2]-=8.0f;
|
testEnd[2]-=8.0f;
|
||||||
assert( !_isnan(testStart[1]));
|
assert( !Q_isnan(testStart[1]));
|
||||||
assert( !_isnan(testEnd[1]));
|
assert( !Q_isnan(testEnd[1]));
|
||||||
assert( !_isnan(testMins[1]));
|
assert( !Q_isnan(testMins[1]));
|
||||||
assert( !_isnan(testMaxs[1]));
|
assert( !Q_isnan(testMaxs[1]));
|
||||||
float vertEffectorTraceFraction=0.0f;
|
float vertEffectorTraceFraction=0.0f;
|
||||||
{
|
{
|
||||||
trace_t tr;
|
trace_t tr;
|
||||||
|
@ -3010,10 +3010,10 @@ static bool G2_RagDollSettlePositionNumeroTrois(CGhoul2Info_v &ghoul2V, const ve
|
||||||
VectorCopy(effectorGroundSpot,testEnd); //last arg is dest
|
VectorCopy(effectorGroundSpot,testEnd); //last arg is dest
|
||||||
bone.solidCount = 0;
|
bone.solidCount = 0;
|
||||||
}
|
}
|
||||||
assert( !_isnan(testStart[1]));
|
assert( !Q_isnan(testStart[1]));
|
||||||
assert( !_isnan(testEnd[1]));
|
assert( !Q_isnan(testEnd[1]));
|
||||||
assert( !_isnan(testMins[1]));
|
assert( !Q_isnan(testMins[1]));
|
||||||
assert( !_isnan(testMaxs[1]));
|
assert( !Q_isnan(testMaxs[1]));
|
||||||
|
|
||||||
float ztest;
|
float ztest;
|
||||||
|
|
||||||
|
@ -3240,7 +3240,7 @@ static inline void G2_RagGetWorldAnimMatrix(CGhoul2Info &ghoul2, boneInfo_t &bon
|
||||||
//bone matrix and give us a useable world position
|
//bone matrix and give us a useable world position
|
||||||
Multiply_3x4Matrix(&retMatrix, &worldMatrix, &baseBoneMatrix);
|
Multiply_3x4Matrix(&retMatrix, &worldMatrix, &baseBoneMatrix);
|
||||||
|
|
||||||
assert(!_isnan(retMatrix.matrix[2][3]));
|
assert(!Q_isnan(retMatrix.matrix[2][3]));
|
||||||
}
|
}
|
||||||
|
|
||||||
//get the current pelvis Z direction and the base anim matrix Z direction
|
//get the current pelvis Z direction and the base anim matrix Z direction
|
||||||
|
@ -3924,7 +3924,7 @@ static void G2_RagDollSolve(CGhoul2Info_v &ghoul2V,int g2Index,float decay,int f
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
assert( !_isnan(bone.ragOverrideMatrix.matrix[2][3]));
|
assert( !Q_isnan(bone.ragOverrideMatrix.matrix[2][3]));
|
||||||
vec3_t deltaInEntitySpace;
|
vec3_t deltaInEntitySpace;
|
||||||
TransformPoint(desiredPelvisOffset,deltaInEntitySpace,&N); // dest middle arg
|
TransformPoint(desiredPelvisOffset,deltaInEntitySpace,&N); // dest middle arg
|
||||||
for (k=0;k<3;k++)
|
for (k=0;k<3;k++)
|
||||||
|
@ -3993,10 +3993,10 @@ static void G2_RagDollSolve(CGhoul2Info_v &ghoul2V,int g2Index,float decay,int f
|
||||||
vec3_t change;
|
vec3_t change;
|
||||||
VectorSubtract(tPosition,ragEffectors[depIndex].currentOrigin,change); // dest is last arg
|
VectorSubtract(tPosition,ragEffectors[depIndex].currentOrigin,change); // dest is last arg
|
||||||
float goodness=DotProduct(change,ragEffectors[depIndex].desiredDirection);
|
float goodness=DotProduct(change,ragEffectors[depIndex].desiredDirection);
|
||||||
assert( !_isnan(goodness));
|
assert( !Q_isnan(goodness));
|
||||||
goodness*=depBone.weight;
|
goodness*=depBone.weight;
|
||||||
delAngles[k]+=goodness; // keep bigger stuff more out of wall or something
|
delAngles[k]+=goodness; // keep bigger stuff more out of wall or something
|
||||||
assert( !_isnan(delAngles[k]));
|
assert( !Q_isnan(delAngles[k]));
|
||||||
}
|
}
|
||||||
allSolidCount += depBone.solidCount;
|
allSolidCount += depBone.solidCount;
|
||||||
}
|
}
|
||||||
|
@ -4102,7 +4102,7 @@ static void G2_RagDollSolve(CGhoul2Info_v &ghoul2V,int g2Index,float decay,int f
|
||||||
Create_Matrix(bone.currentAngles,&temp1);
|
Create_Matrix(bone.currentAngles,&temp1);
|
||||||
Multiply_3x4Matrix(&temp2,&temp1,bone.baseposeInv);
|
Multiply_3x4Matrix(&temp2,&temp1,bone.baseposeInv);
|
||||||
Multiply_3x4Matrix(&bone.ragOverrideMatrix,bone.basepose, &temp2);
|
Multiply_3x4Matrix(&bone.ragOverrideMatrix,bone.basepose, &temp2);
|
||||||
assert( !_isnan(bone.ragOverrideMatrix.matrix[2][3]));
|
assert( !Q_isnan(bone.ragOverrideMatrix.matrix[2][3]));
|
||||||
}
|
}
|
||||||
G2_Generate_MatrixRag(blist,ragBlistIndex[bone.boneNumber]);
|
G2_Generate_MatrixRag(blist,ragBlistIndex[bone.boneNumber]);
|
||||||
}
|
}
|
||||||
|
@ -4238,10 +4238,10 @@ static void G2_IKSolve(CGhoul2Info_v &ghoul2V,int g2Index,float decay,int frameN
|
||||||
vec3_t change;
|
vec3_t change;
|
||||||
VectorSubtract(tPosition,ragEffectors[depIndex].currentOrigin,change); // dest is last arg
|
VectorSubtract(tPosition,ragEffectors[depIndex].currentOrigin,change); // dest is last arg
|
||||||
float goodness=DotProduct(change,ragEffectors[depIndex].desiredDirection);
|
float goodness=DotProduct(change,ragEffectors[depIndex].desiredDirection);
|
||||||
assert( !_isnan(goodness));
|
assert( !Q_isnan(goodness));
|
||||||
goodness*=depBone.weight;
|
goodness*=depBone.weight;
|
||||||
delAngles[k]+=goodness; // keep bigger stuff more out of wall or something
|
delAngles[k]+=goodness; // keep bigger stuff more out of wall or something
|
||||||
assert( !_isnan(delAngles[k]));
|
assert( !Q_isnan(delAngles[k]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4298,7 +4298,7 @@ static void G2_IKSolve(CGhoul2Info_v &ghoul2V,int g2Index,float decay,int frameN
|
||||||
Create_Matrix(bone.currentAngles, &temp1);
|
Create_Matrix(bone.currentAngles, &temp1);
|
||||||
Multiply_3x4Matrix(&temp2, &temp1, bone.baseposeInv);
|
Multiply_3x4Matrix(&temp2, &temp1, bone.baseposeInv);
|
||||||
Multiply_3x4Matrix(&bone.ragOverrideMatrix, bone.basepose, &temp2);
|
Multiply_3x4Matrix(&bone.ragOverrideMatrix, bone.basepose, &temp2);
|
||||||
assert( !_isnan(bone.ragOverrideMatrix.matrix[2][3]));
|
assert( !Q_isnan(bone.ragOverrideMatrix.matrix[2][3]));
|
||||||
|
|
||||||
G2_Generate_MatrixRag(blist, ragBlistIndex[bone.boneNumber]);
|
G2_Generate_MatrixRag(blist, ragBlistIndex[bone.boneNumber]);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1142,7 +1142,7 @@ static bool G2_TracePolys(const mdxmSurface_t *surface, const mdxmSurfHierarchy_
|
||||||
|
|
||||||
VectorSubtract(hitPoint, TS.rayStart, distVect);
|
VectorSubtract(hitPoint, TS.rayStart, distVect);
|
||||||
newCol.mDistance = VectorLength(distVect);
|
newCol.mDistance = VectorLength(distVect);
|
||||||
assert( !_isnan(newCol.mDistance) );
|
assert( !Q_isnan(newCol.mDistance) );
|
||||||
|
|
||||||
// put the hit point back into world space
|
// put the hit point back into world space
|
||||||
TransformAndTranslatePoint(hitPoint, newCol.mCollisionPosition, &worldMatrix);
|
TransformAndTranslatePoint(hitPoint, newCol.mCollisionPosition, &worldMatrix);
|
||||||
|
@ -1424,7 +1424,7 @@ static bool G2_RadiusTracePolys(
|
||||||
|
|
||||||
VectorSubtract(hitPoint, TS.rayStart, distVect);
|
VectorSubtract(hitPoint, TS.rayStart, distVect);
|
||||||
newCol.mDistance = VectorLength(distVect);
|
newCol.mDistance = VectorLength(distVect);
|
||||||
assert( !_isnan(newCol.mDistance) );
|
assert( !Q_isnan(newCol.mDistance) );
|
||||||
|
|
||||||
// put the hit point back into world space
|
// put the hit point back into world space
|
||||||
TransformAndTranslatePoint(hitPoint, newCol.mCollisionPosition, &worldMatrix);
|
TransformAndTranslatePoint(hitPoint, newCol.mCollisionPosition, &worldMatrix);
|
||||||
|
|
|
@ -834,7 +834,7 @@ void SV_Trace( trace_t *results, const vec3_t start, const vec3_t mins, const ve
|
||||||
Ghoul2 Insert End
|
Ghoul2 Insert End
|
||||||
*/
|
*/
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
assert( !_isnan(start[0])&&!_isnan(start[1])&&!_isnan(start[2])&&!_isnan(end[0])&&!_isnan(end[1])&&!_isnan(end[2]));
|
assert( !Q_isnan(start[0])&&!Q_isnan(start[1])&&!Q_isnan(start[2])&&!Q_isnan(end[0])&&!Q_isnan(end[1])&&!Q_isnan(end[2]));
|
||||||
#endif// _DEBUG
|
#endif// _DEBUG
|
||||||
|
|
||||||
#if SV_TRACE_PROFILE
|
#if SV_TRACE_PROFILE
|
||||||
|
|
Loading…
Reference in a new issue