0026936: Drawbacks of inlining in new type system in OCCT 7.0 -- automatic
[occt.git] / src / IFSelect / IFSelect_SelectControl.cxx
1 // Copyright (c) 1999-2014 OPEN CASCADE SAS
2 //
3 // This file is part of Open CASCADE Technology software library.
4 //
5 // This library is free software; you can redistribute it and/or modify it under
6 // the terms of the GNU Lesser General Public License version 2.1 as published
7 // by the Free Software Foundation, with special exception defined in the file
8 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
9 // distribution for complete text of the license and disclaimer of any warranty.
10 //
11 // Alternatively, this file may be used under the terms of Open CASCADE
12 // commercial license or contractual agreement.
13
14
15 #include <IFSelect_SelectControl.hxx>
16 #include <IFSelect_Selection.hxx>
17 #include <IFSelect_SelectionIterator.hxx>
18 #include <Standard_Type.hxx>
19
20 IMPLEMENT_STANDARD_RTTIEXT(IFSelect_SelectControl,IFSelect_Selection)
21
22 Handle(IFSelect_Selection)  IFSelect_SelectControl::MainInput () const 
23       {  return themain;  }
24
25     Handle(IFSelect_Selection)  IFSelect_SelectControl::SecondInput () const
26       {  return thesecond;  }
27
28     Standard_Boolean  IFSelect_SelectControl::HasSecondInput () const
29       {  return (!thesecond.IsNull());  }
30
31     void  IFSelect_SelectControl::SetMainInput
32   (const Handle(IFSelect_Selection)& sel)
33       {  themain = sel;  }
34
35     void  IFSelect_SelectControl::SetSecondInput
36   (const Handle(IFSelect_Selection)& sel)
37       {  thesecond = sel;  }
38
39
40     void  IFSelect_SelectControl::FillIterator
41   (IFSelect_SelectionIterator& iter) const 
42 {
43   iter.AddItem(themain);
44   if (!thesecond.IsNull()) iter.AddItem(thesecond);
45 }