Back to home page

EIC code displayed by LXR

 
 

    


Warning, /include/opencascade/math_BracketMinimum.lxx is written in an unsupported language. File is not indexed.

0001 // Copyright (c) 1997-1999 Matra Datavision
0002 // Copyright (c) 1999-2014 OPEN CASCADE SAS
0003 //
0004 // This file is part of Open CASCADE Technology software library.
0005 //
0006 // This library is free software; you can redistribute it and/or modify it under
0007 // the terms of the GNU Lesser General Public License version 2.1 as published
0008 // by the Free Software Foundation, with special exception defined in the file
0009 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0010 // distribution for complete text of the license and disclaimer of any warranty.
0011 //
0012 // Alternatively, this file may be used under the terms of Open CASCADE
0013 // commercial license or contractual agreement.
0014 
0015 // math_BracketMinimum.lxx
0016 
0017 #include <Precision.hxx>
0018 
0019 inline math_BracketMinimum::math_BracketMinimum(const Standard_Real A,
0020                                                 const Standard_Real B)
0021 : Done(Standard_False),
0022   Ax(A), Bx(B), Cx(0.),
0023   FAx(0.), FBx(0.), FCx(0.),
0024   myLeft(-Precision::Infinite()),
0025   myRight(Precision::Infinite()),
0026   myIsLimited(Standard_False),
0027   myFA(Standard_False),
0028   myFB(Standard_False)
0029 {
0030 }
0031 
0032 inline Standard_Boolean math_BracketMinimum::IsDone() const { return Done; }
0033 
0034 inline Standard_OStream& operator<<(Standard_OStream& o, 
0035                                     const math_BracketMinimum& Br)
0036 {
0037   Br.Dump(o);
0038   return o;
0039 }
0040 
0041 inline void math_BracketMinimum::SetLimits(const Standard_Real theLeft,
0042                                            const Standard_Real theRight)
0043 {
0044   myLeft = theLeft;
0045   myRight = theRight;
0046   myIsLimited = Standard_True;
0047 }
0048 
0049 inline void math_BracketMinimum::SetFA(const Standard_Real theValue)
0050 {
0051   FAx = theValue;
0052   myFA = Standard_True;
0053 }
0054 
0055 inline void math_BracketMinimum::SetFB(const Standard_Real theValue)
0056 {
0057   FBx = theValue;
0058   myFB = Standard_True;
0059 }
0060 
0061 inline Standard_Real math_BracketMinimum::Limited(const Standard_Real theValue) const
0062 {
0063   return theValue < myLeft ? myLeft :
0064     theValue > myRight ? myRight : theValue;
0065 }