0024509: Suspect unused variable in TPrsStd_ConstraintTools.cxx
[occt.git] / src / Dynamic / Dynamic_DynamicDerivedClass.cxx
CommitLineData
b311480e 1// Created on: 1993-02-05
2// Created by: Gilles DEBARBOUILLE
3// Copyright (c) 1993-1999 Matra Datavision
973c2be1 4// Copyright (c) 1999-2014 OPEN CASCADE SAS
b311480e 5//
973c2be1 6// This file is part of Open CASCADE Technology software library.
b311480e 7//
d5f74e42 8// This library is free software; you can redistribute it and/or modify it under
9// the terms of the GNU Lesser General Public License version 2.1 as published
973c2be1 10// by the Free Software Foundation, with special exception defined in the file
11// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12// distribution for complete text of the license and disclaimer of any warranty.
b311480e 13//
973c2be1 14// Alternatively, this file may be used under the terms of Open CASCADE
15// commercial license or contractual agreement.
7fd59977 16
17#include <Dynamic_DynamicDerivedClass.ixx>
18
19//=======================================================================
20//function : Dynamic_DynamicDerivedClass
21//purpose :
22//=======================================================================
23
24Dynamic_DynamicDerivedClass::Dynamic_DynamicDerivedClass(const Standard_CString aname)
25 : Dynamic_DynamicClass(aname)
26{
27 thesequenceofclasses = new Dynamic_SequenceOfClasses();
28}
29
30//=======================================================================
31//function : AddClass
32//purpose :
33//=======================================================================
34
35void Dynamic_DynamicDerivedClass::AddClass(const Handle(Dynamic_DynamicClass)& aclass)
36{
37 thesequenceofclasses->Append(aclass);
38}
39
40//=======================================================================
41//function : Method
42//purpose :
43//=======================================================================
44
45Handle(Dynamic_Method) Dynamic_DynamicDerivedClass::Method
46 (const Standard_CString amethod) const
47{
48 Standard_Integer index;
49 Handle(Dynamic_Method) method = Dynamic_DynamicClass::Method(amethod);
50
51 if(method.IsNull())
52 {
53 for(index=1;index<=thesequenceofclasses->Length();index++)
54 {
55 method = (thesequenceofclasses->Value(index))->Method(amethod);
56 if(!method.IsNull()) break;
57 }
58 }
59 return method;
60}
61
62//=======================================================================
63//function : Instance
64//purpose :
65//=======================================================================
66
67Handle(Dynamic_DynamicInstance) Dynamic_DynamicDerivedClass::Instance() const
68{
69 Standard_Integer index;
70 Handle(Dynamic_DynamicInstance) instance = Dynamic_DynamicClass::Instance();
71
72 for(index=1;index<=thesequenceofclasses->Length();index++)
73 {
74 ((thesequenceofclasses->Value(index))->Instance())->Parameter(instance);
75 }
76 return instance;
77}