2
Cassowary.net: an incremental constraint solver for .NET
3
(http://lumumba.uhasselt.be/jo/projects/cassowary.net/)
5
Copyright (C) 2005 Jo Vermeulen (jo.vermeulen@uhasselt.be)
7
This program is free software; you can redistribute it and/or
8
modify it under the terms of the GNU Lesser General Public License
9
as published by the Free Software Foundation; either version 2.1
10
of the License, or (at your option) any later version.
12
This program is distributed in the hope that it will be useful,
13
but WITHOUT ANY WARRANTY; without even the implied warranty of
14
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
GNU Lesser General Public License for more details.
17
You should have received a copy of the GNU Lesser General Public License
18
along with this program; if not, write to the Free Software
19
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
26
public class ClStrength
28
public ClStrength(string name, ClSymbolicWeight symbolicWeight)
31
_symbolicWeight = symbolicWeight;
34
public ClStrength(string name, double w1, double w2, double w3)
37
_symbolicWeight = new ClSymbolicWeight(w1, w2, w3);
40
public bool IsRequired
42
get { return (this == Required); }
45
public ClSymbolicWeight SymbolicWeight
47
get { return _symbolicWeight; }
48
set { _symbolicWeight = value; }
54
set { _name = value; }
57
public override string ToString()
60
return string.Format("{0}:{1}", Name, SymbolicWeight);
65
public static ClStrength Required
67
get { return _required; }
70
public static ClStrength Strong
72
get { return _strong; }
75
public static ClStrength Medium
77
get { return _medium; }
80
public static ClStrength Weak
86
private ClSymbolicWeight _symbolicWeight;
88
private static readonly ClStrength _required = new ClStrength("<Required>", 1000, 1000, 1000);
89
private static readonly ClStrength _strong = new ClStrength("strong", 1.0, 0.0, 0.0);
90
private static readonly ClStrength _medium = new ClStrength("medium", 0.0, 1.0, 0.0);
91
private static readonly ClStrength _weak = new ClStrength("weak", 0.0, 0.0, 1.0);