1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-16 10:08:36 +03:00
occt/src/TFunction/TFunction_Function.hxx
kgv dde6883382 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
2016-08-26 10:16:17 +03:00

108 lines
3.6 KiB
C++

// Created on: 1999-06-10
// Created by: Vladislav ROMASHKO
// Copyright (c) 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.
#ifndef _TFunction_Function_HeaderFile
#define _TFunction_Function_HeaderFile
#include <Standard.hxx>
#include <Standard_Type.hxx>
#include <Standard_GUID.hxx>
#include <Standard_Integer.hxx>
#include <TDF_Attribute.hxx>
#include <Standard_Boolean.hxx>
#include <Standard_OStream.hxx>
class TDF_Label;
class Standard_GUID;
class TDF_Attribute;
class TDF_RelocationTable;
class TDF_DataSet;
class TFunction_Function;
DEFINE_STANDARD_HANDLE(TFunction_Function, TDF_Attribute)
//! Provides the following two services
//! - a link to an evaluation driver
//! - the means of providing a link between a
//! function and an evaluation driver.
class TFunction_Function : public TDF_Attribute
{
public:
//! Static methods:
//! ==============
//! Finds or Creates a function attribute on the label <L>.
//! Returns the function attribute.
Standard_EXPORT static Handle(TFunction_Function) Set (const TDF_Label& L);
//! Finds or Creates a function attribute on the label <L>.
//! Sets a driver ID to the function.
//! Returns the function attribute.
Standard_EXPORT static Handle(TFunction_Function) Set (const TDF_Label& L, const Standard_GUID& DriverID);
//! Returns the GUID for functions.
//! Returns a function found on the label.
//! Instance methods:
//! ================
Standard_EXPORT static const Standard_GUID& GetID();
Standard_EXPORT TFunction_Function();
//! Returns the GUID for this function's driver.
const Standard_GUID& GetDriverGUID() const { return myDriverGUID; }
//! Sets the driver for this function as that
//! indentified by the GUID guid.
Standard_EXPORT void SetDriverGUID (const Standard_GUID& guid);
//! Returns true if the execution failed
Standard_Boolean Failed() const { return myFailure != 0; }
//! Sets the failed index.
Standard_EXPORT void SetFailure (const Standard_Integer mode = 0);
//! Returns an index of failure if the execution of this function failed.
//! If this integer value is 0, no failure has occurred.
//! Implementation of Attribute methods:
//! ===================================
Standard_Integer GetFailure() const { return myFailure; }
Standard_EXPORT const Standard_GUID& ID() const Standard_OVERRIDE;
Standard_EXPORT virtual void Restore (const Handle(TDF_Attribute)& with) Standard_OVERRIDE;
Standard_EXPORT virtual void Paste (const Handle(TDF_Attribute)& into, const Handle(TDF_RelocationTable)& RT) const Standard_OVERRIDE;
Standard_EXPORT virtual Handle(TDF_Attribute) NewEmpty() const Standard_OVERRIDE;
Standard_EXPORT virtual void References (const Handle(TDF_DataSet)& aDataSet) const Standard_OVERRIDE;
Standard_EXPORT virtual Standard_OStream& Dump (Standard_OStream& anOS) const Standard_OVERRIDE;
DEFINE_STANDARD_RTTIEXT(TFunction_Function,TDF_Attribute)
private:
Standard_GUID myDriverGUID;
Standard_Integer myFailure;
};
#endif // _TFunction_Function_HeaderFile