[Avida-SVN] r2538 - branches/uml/source/main

hjg at myxo.css.msu.edu hjg at myxo.css.msu.edu
Fri Apr 18 07:26:58 PDT 2008


Author: hjg
Date: 2008-04-18 10:26:58 -0400 (Fri, 18 Apr 2008)
New Revision: 2538

Modified:
   branches/uml/source/main/cMDEProperty.h
   branches/uml/source/main/cMDEPropertyGenerator.cc
   branches/uml/source/main/cUMLModel.cc
Log:
ASE code. 


Modified: branches/uml/source/main/cMDEProperty.h
===================================================================
--- branches/uml/source/main/cMDEProperty.h	2008-04-15 17:58:28 UTC (rev 2537)
+++ branches/uml/source/main/cMDEProperty.h	2008-04-18 14:26:58 UTC (rev 2538)
@@ -42,6 +42,7 @@
 	
 	// True means the property's value was determined without checking it.
 	void setSuppressed(bool s) { _suppressed = s; }
+	bool getSuppressed() { return _suppressed; }
 	
 	// These functions get and set whether the expressions used by the property
 	// involve classes that are (or are not) related to one another. 

Modified: branches/uml/source/main/cMDEPropertyGenerator.cc
===================================================================
--- branches/uml/source/main/cMDEPropertyGenerator.cc	2008-04-15 17:58:28 UTC (rev 2537)
+++ branches/uml/source/main/cMDEPropertyGenerator.cc	2008-04-18 14:26:58 UTC (rev 2538)
@@ -419,8 +419,10 @@
 	if ((m_related_class_mode == 2) && (related == 1)) { val += .5; }
 	if ((m_related_class_mode == 3) && (related == 0)) { 
 		val =0; 
-		e.setSuppressed(true); 
-		m_suppressed++;
+		if (e.getSuppressed() == false) { 
+			e.setSuppressed(true); 
+			m_suppressed++;
+		}
 	}
 
 	return val;
@@ -476,8 +478,10 @@
 	if ((m_related_class_mode == 2) && (related == 1)) { val += .5; }
 	if ((m_related_class_mode == 3) && (related == 0)) { 
 		val = 0; 
-		e.setSuppressed(true); 
-		m_suppressed++;
+		if (e.getSuppressed() == false) { 
+			e.setSuppressed(true); 
+			m_suppressed++;
+		}
 	}
 
 	return val;	

Modified: branches/uml/source/main/cUMLModel.cc
===================================================================
--- branches/uml/source/main/cUMLModel.cc	2008-04-15 17:58:28 UTC (rev 2537)
+++ branches/uml/source/main/cUMLModel.cc	2008-04-18 14:26:58 UTC (rev 2538)
@@ -180,43 +180,54 @@
 			} 
 		} else if (line == "==KNOWN=EXISTENCE==") { 
 			line.erase(); 
-			infile >> temp;
+//			infile >> temp;
+			getline (infile, temp);
 			while (temp!= "==END==") { 
-				infile >> temp2;
-				pg.addKnownExistenceProperty(temp2);
-				infile >> temp;
+//				infile >> temp2;
+				pg.addKnownExistenceProperty(temp);
+				getline (infile, temp);
 			}
 		} else if (line == "==KNOWN=ABSENCE==") { 
 			line.erase(); 
-			infile >> temp;
+//			infile >> temp;
+			getline (infile, temp);
 			while (temp!= "==END==") { 
-				infile >> temp2;
-				pg.addKnownAbsenceProperty(temp2);
-				infile >> temp;
+//				infile >> temp2;
+				pg.addKnownAbsenceProperty(temp);
+//				infile >> temp;
+				getline (infile, temp);
 			}
 		} else if (line == "==KNOWN=UNIVERSAL==") { 
 			line.erase(); 
-			infile >> temp;
+//			infile >> temp;
+			getline (infile, temp);
 			while (temp!= "==END==") { 
-				infile >> temp2;
+//				infile >> temp2;
 				pg.addKnownUniversalProperty(temp2);
-				infile >> temp;
+//				infile >> temp;
+				getline (infile, temp);
 			}
 		} else if (line == "==KNOWN=PRECEDENCE==") { 
 			line.erase(); 
-			infile >> temp;
+//			infile >> temp;
+			getline (infile, temp);
 			while (temp!= "==END==") { 
-				infile >> temp1 >> temp2;
-				pg.addKnownPrecedenceProperty(temp1, temp2);
-				infile >> temp;
+//				infile >> temp1 >> temp2;
+				getline (infile, temp2);
+				pg.addKnownPrecedenceProperty(temp, temp2);
+//				infile >> temp;
+				getline (infile, temp);
 			}
 		} else if (line == "==KNOWN=RESPONSE==") { 
 			line.erase(); 
-			infile >> temp;
+//			infile >> temp;
+			getline (infile, temp);
 			while (temp!= "==END==") { 
-				infile >> temp1 >> temp2;
-				pg.addKnownResponseProperty(temp1, temp2);
-				infile >> temp;
+//				infile >> temp1 >> temp2;
+				getline (infile, temp2);
+				pg.addKnownResponseProperty(temp, temp2);
+//				infile >> temp;
+				getline (infile, temp);
 			}
 		} else if (line == "==RELEVANT=ATTRIBUTE==") {
 			line.erase(); 




More information about the Avida-cvs mailing list