mirror of
https://github.com/Open-Cascade-SAS/OCCT.git
synced 2026-06-11 09:18:10 +08:00
0027772: Foundation Classes - define Standard_Boolean using C++ type "bool" instead of "unsigned int"
Code has been updated to remove no-op casts and implicit casts to Standard_Boolean. Places of inproper use of Standard_Boolean instead of Standard_Integer have been corrected: - Bnd_Box, Bnd_Box2d Bit flags are now defined as private enum - HLRAlgo_BiPoint, HLRAlgo_EdgesBlock, HLRBRep_EdgeData, HLRBRep_FaceData Bit flags are now defined as enum - HLRAlgo_EdgeStatus, HLRBRep_BiPnt2D, HLRBRep_BiPoint Bit flags are now defined as bool fields - HLRAlgo_PolyData Bit flags are now defined as Standard_Integer - OSD_DirectoryIterator, OSD_FileIterator Boolean flag is now defined as Standard_Boolean - ShapeAnalysis_Surface::SurfaceNewton() now returns Standard_Integer (values 0, 1 or 3) - ChFi2d_FilletAlgo now uses TColStd_SequenceOfBoolean instead of TColStd_SequenceOfInteger for storing boolean flags Method IFSelect_Dispatch::PacketsCount() has been dropped from interface. ShapeFix_Solid::Status() has been fixed to decode requested status instead of returning integer value. TopOpeBRepBuild_Builder1 now defines map storing Standard_Boolean values instead of Standard_Integer. Persistence for Standard_Boolean type has been corrected to keep backward compatibility: - BinMDataStd, BinTools, FSD_BinaryFile Broken Draw Harness commands vdisplaymode and verasemode have been removed. BRepMesh_FastDiscretFace::initDataStructure() - workaround old gcc limitations BRepMesh_IncrementalMesh::clear() - avoid ambiguity
This commit is contained in:
@@ -131,7 +131,7 @@ Standard_Boolean XmlMDataStd_IntegerArrayDriver::Paste
|
||||
return Standard_False;
|
||||
}
|
||||
else
|
||||
aDelta = (Standard_Boolean)aDeltaValue;
|
||||
aDelta = aDeltaValue != 0;
|
||||
}
|
||||
#ifdef OCCT_DEBUG
|
||||
else if(XmlMDataStd::DocumentVersion() == -1)
|
||||
@@ -160,7 +160,7 @@ void XmlMDataStd_IntegerArrayDriver::Paste
|
||||
if (aL != 1)
|
||||
theTarget.Element().setAttribute(::FirstIndexString(), aL);
|
||||
theTarget.Element().setAttribute(::LastIndexString(), anU);
|
||||
theTarget.Element().setAttribute(::IsDeltaOn(), anIntArray->GetDelta());
|
||||
theTarget.Element().setAttribute(::IsDeltaOn(), anIntArray->GetDelta() ? 1 : 0);
|
||||
|
||||
// Allocation of 12 chars for each integer including the space.
|
||||
// An example: -2 147 483 648
|
||||
|
||||
Reference in New Issue
Block a user