0031642: Visualization - crash in Graphic3d_Structure::SetVisual() on redisplaying...
[occt.git] / src / math / math_FunctionAllRoots.lxx
1 // Copyright (c) 1997-1999 Matra Datavision
2 // Copyright (c) 1999-2014 OPEN CASCADE SAS
3 //
4 // This file is part of Open CASCADE Technology software library.
5 //
6 // This library is free software; you can redistribute it and/or modify it under
7 // the terms of the GNU Lesser General Public License version 2.1 as published
8 // by the Free Software Foundation, with special exception defined in the file
9 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
10 // distribution for complete text of the license and disclaimer of any warranty.
11 //
12 // Alternatively, this file may be used under the terms of Open CASCADE
13 // commercial license or contractual agreement.
14
15 #include <StdFail_NotDone.hxx>
16 #include <TColStd_SequenceOfReal.hxx>
17 #include <TColStd_SequenceOfInteger.hxx>
18
19 inline Standard_Boolean math_FunctionAllRoots::IsDone() const { return done; }
20
21 inline Standard_OStream& operator<<(Standard_OStream& o, 
22                                     const math_FunctionAllRoots& F)
23 {
24   F.Dump(o);
25   return o;
26 }
27
28
29 inline Standard_Integer math_FunctionAllRoots::NbIntervals () const {
30   StdFail_NotDone_Raise_if(!done, " ");
31   return pdeb.Length();
32 }
33
34 inline void math_FunctionAllRoots::GetInterval (const Standard_Integer Index,
35                                          Standard_Real& A, 
36                                          Standard_Real& B) const {
37   StdFail_NotDone_Raise_if(!done, " ");
38   A=pdeb.Value(Index);
39   B=pfin.Value(Index);
40 }
41
42 inline void math_FunctionAllRoots::GetIntervalState (const Standard_Integer Index,
43                                               Standard_Integer& IFirst,
44                                               Standard_Integer& ILast) const {
45   StdFail_NotDone_Raise_if(!done, " ");
46   IFirst=ideb.Value(Index);
47   ILast=ifin.Value(Index);
48 }
49
50 inline Standard_Integer math_FunctionAllRoots::NbPoints () const {
51   StdFail_NotDone_Raise_if(!done, " ");
52   return piso.Length();
53 }
54
55 inline Standard_Real math_FunctionAllRoots::GetPoint (const Standard_Integer Index) const {
56   StdFail_NotDone_Raise_if(!done, " ");
57   return piso.Value(Index);
58 }
59
60
61 inline Standard_Integer math_FunctionAllRoots::GetPointState (const Standard_Integer Index) const {
62   StdFail_NotDone_Raise_if(!done, " ");
63   return iiso.Value(Index);
64 }
65