X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESH%2FSMESH_Algo.hxx;h=8d5d4cf47eca1a566d79961a472b6a6727e622ac;hb=e0f019ccf9e53e6751aa85445acf2cf2831a8c24;hp=25224689a452baa82dcda91775cba10b50a43da5;hpb=4443257370246592db3996a2fbdd92e85c26da6f;p=modules%2Fsmesh.git diff --git a/src/SMESH/SMESH_Algo.hxx b/src/SMESH/SMESH_Algo.hxx index 25224689a..8d5d4cf47 100644 --- a/src/SMESH/SMESH_Algo.hxx +++ b/src/SMESH/SMESH_Algo.hxx @@ -169,6 +169,11 @@ class SMESH_EXPORT SMESH_Algo : public SMESH_Hypothesis */ virtual void CancelCompute(); + /*! + * \brief If possible, returns progress of computation [0.,1.] + */ + virtual double GetProgress() const; + /*! * \brief evaluates size of prospective mesh on a shape * \param aMesh - the mesh @@ -224,14 +229,23 @@ class SMESH_EXPORT SMESH_Algo : public SMESH_Hypothesis */ virtual bool SetParametersByMesh(const SMESH_Mesh* theMesh, const TopoDS_Shape& theShape); virtual bool SetParametersByDefaults(const TDefaults& dflts, const SMESH_Mesh* theMesh=0); + /*! * \brief return compute error */ SMESH_ComputeErrorPtr GetComputeError() const; /*! - * \brief initialize compute error + * \brief initialize compute error before call of Compute() */ void InitComputeError(); + /*! + * \brief Return compute progress by nb of calls of this method + */ + double GetProgressByTic() const; + /*! + * Return a storage of "compute cost" of shapes being Compute()d. + */ + int& GetComputeCost() { return _computeCost; } public: // ================================================================== @@ -407,8 +421,12 @@ protected: std::list _badInputElements; //!< to explain COMPERR_BAD_INPUT_MESH volatile bool _computeCanceled; //!< is set to True while computing to stop it + int _computeCost; //!< "compute cost" of shapes being Compute()d + int _progressTic; //!< counter of calls from SMESH_Mesh::GetComputeProgress() + double _progress; //!< progress of Compute() [0.,1.] }; + class SMESH_EXPORT SMESH_0D_Algo: public SMESH_Algo { public: