xref: /haiku/src/libs/linprog/Summand.cpp (revision 1deede7388b04dbeec5af85cae7164735ea9e70d)
1 /*
2  * Copyright 2007-2008, Christof Lutteroth, lutteroth@cs.auckland.ac.nz
3  * Copyright 2007-2008, James Kim, jkim202@ec.auckland.ac.nz
4  * Distributed under the terms of the MIT License.
5  */
6 
7 #include "LinearSpec.h"
8 #include "Summand.h"
9 #include "Variable.h"
10 
11 
12 Summand::Summand(Summand* summand)
13 	:
14 	fCoeff(summand->Coeff()),
15 	fVar(summand->Var())
16 {
17 }
18 
19 
20 Summand::Summand(double coeff, Variable* var)
21 	:
22 	fCoeff(coeff),
23 	fVar(var)
24 {
25 }
26 
27 
28 Summand::~Summand()
29 {
30 
31 }
32 
33 
34 /**
35  * Gets the summmand's coefficient.
36  *
37  * @return the summand's coefficient
38  */
39 double
40 Summand::Coeff()
41 {
42 	return fCoeff;
43 }
44 
45 
46 /**
47  * Sets the summmand's coefficient.
48  *
49  * @param coeff	coefficient
50  */
51 void
52 Summand::SetCoeff(double coeff)
53 {
54 	fCoeff = coeff;
55 }
56 
57 
58 /**
59  * Gets the summand's variable.
60  *
61  * @return the summand's variable
62  */
63 Variable*
64 Summand::Var()
65 {
66 	return fVar;
67 }
68 
69 
70 /**
71  * Sets the summand's variable.
72  *
73  * @param var	variable
74  */
75 void
76 Summand::SetVar(Variable* var)
77 {
78 	fVar = var;
79 }
80 
81 
82 int32
83 Summand::VariableIndex()
84 {
85 	return fVar->Index();
86 }
87