1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-14 13:30:48 +03:00

0026585: Eliminate compile warnings obtained by building occt with vc14: 'type cast' pointer truncation and 'type cast' truncation

- Class OSD_EnvironmentIterator is removed (not used, and would definitely fail under Windows if tried)
- Methods UserId() and GroupId() removed from OSD_FileNode (cannot be made portable, as there is no integer IDs of user and group on Windows)
- Draw_ProgressIndicator corrected to properly pass address via Tcl
- OSD_File.cxx: local function is refactored to avoid senseless encoding / decoding of results
- OSD_Process::UserId() method removed, as it cannot be made cross-platform (no integer IDs on Windows)
- OSD_Thread: use WinAPI conversion functions to avoid warnings
- OSD_WNT.cxx: recursion counter passed via function argument instead of TLS
- TDF_LabelMapHasher revised to use correct hasher function for an address
This commit is contained in:
abv
2015-10-09 11:29:18 +03:00
committed by bugmaster
parent 2f220b97b7
commit 682993040a
19 changed files with 77 additions and 679 deletions

View File

@@ -80,9 +80,7 @@ TDF_LabelIndexedMap.hxx
TDF_LabelIntegerMap.hxx
TDF_LabelList.hxx
TDF_LabelMap.hxx
TDF_LabelMapHasher.cxx
TDF_LabelMapHasher.hxx
TDF_LabelMapHasher.lxx
TDF_LabelNode.cxx
TDF_LabelNode.hxx
TDF_LabelNodePtr.hxx

View File

@@ -1,22 +0,0 @@
// Created by: DAUTRY Philippe
// Copyright (c) 1997-1999 Matra Datavision
// Copyright (c) 1999-2014 OPEN CASCADE SAS
//
// This file is part of Open CASCADE Technology software library.
//
// This library is free software; you can redistribute it and/or modify it under
// the terms of the GNU Lesser General Public License version 2.1 as published
// by the Free Software Foundation, with special exception defined in the file
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
// distribution for complete text of the license and disclaimer of any warranty.
//
// Alternatively, this file may be used under the terms of Open CASCADE
// commercial license or contractual agreement.
// ----------------------
// Version: 0.0
//Version Date Purpose
// 0.0 Feb 13 1997 Creation
#include <TDF_Label.hxx>
#include <TDF_LabelMapHasher.hxx>

View File

@@ -16,54 +16,26 @@
#ifndef _TDF_LabelMapHasher_HeaderFile
#define _TDF_LabelMapHasher_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Handle.hxx>
#include <Standard_Integer.hxx>
#include <Standard_Boolean.hxx>
class TDF_Label;
#include <TDF_Label.hxx>
//! A label hasher for label maps.
class TDF_LabelMapHasher
{
public:
DEFINE_STANDARD_ALLOC
//! Returns a HasCode value for the Key <K> in the range 0..Upper.
static Standard_Integer HashCode(const TDF_Label& aLab, const Standard_Integer Upper)
{
return ::HashCode((Standard_Address)aLab.myLabelNode, Upper);
}
//! Returns a HasCode value for the Key <K> in the
//! range 0..Upper.
static Standard_Integer HashCode (const TDF_Label& aLab, const Standard_Integer Upper);
//! Returns True when the two keys are the same. Two
//! same keys must have the same hashcode, the
//! contrary is not necessary.
static Standard_Boolean IsEqual (const TDF_Label& aLab1, const TDF_Label& aLab2);
protected:
private:
static Standard_Boolean IsEqual(const TDF_Label& aLab1, const TDF_Label& aLab2)
{
return aLab1.IsEqual(aLab2);
}
};
#include <TDF_LabelMapHasher.lxx>
#endif // _TDF_LabelMapHasher_HeaderFile

View File

@@ -1,40 +0,0 @@
// Created by: DAUTRY Philippe
// Copyright (c) 1997-1999 Matra Datavision
// Copyright (c) 1999-2014 OPEN CASCADE SAS
//
// This file is part of Open CASCADE Technology software library.
//
// This library is free software; you can redistribute it and/or modify it under
// the terms of the GNU Lesser General Public License version 2.1 as published
// by the Free Software Foundation, with special exception defined in the file
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
// distribution for complete text of the license and disclaimer of any warranty.
//
// Alternatively, this file may be used under the terms of Open CASCADE
// commercial license or contractual agreement.
// ----------------------
// Version: 0.0
//Version Date Purpose
// 0.0 Feb 13 1997 Creation
//=======================================================================
//function : HashCode
//purpose :
//=======================================================================
inline Standard_Integer TDF_LabelMapHasher::HashCode
(const TDF_Label& aLab, const Standard_Integer Upper)
{ return 1 + ( (int) (labs((long int) aLab.myLabelNode) % Upper) ); }
//=======================================================================
//function : IsEqual
//purpose :
//=======================================================================
inline Standard_Boolean TDF_LabelMapHasher::IsEqual
(const TDF_Label& aLab1,const TDF_Label& aLab2)
{ return aLab1.IsEqual(aLab2); }