Merge remote-tracking branch 'origin/splitIntoTwoModules' into splitIntoTwoModules

# Conflicts:
#	visualiser/src/main/java/seng302/VisualiserInput.java
main
Joseph Gardner 9 years ago
commit 9eae70fb82

@ -49,4 +49,7 @@ public class MarkRounding extends AC35Data{
this.markID = markID; this.markID = markID;
} }
public int getSourceID() {
return sourceID;
}
} }

@ -1,4 +1,5 @@
package seng302; package seng302;
import org.opengis.style.Mark;
import org.xml.sax.SAXException; import org.xml.sax.SAXException;
import seng302.Mock.*; import seng302.Mock.*;
import seng302.Networking.BinaryMessageDecoder; import seng302.Networking.BinaryMessageDecoder;
@ -41,6 +42,14 @@ public class VisualiserInput implements Runnable
private Map<Integer, BoatStatusMessage> boatStatus; private Map<Integer, BoatStatusMessage> boatStatus;
private AverageWind averageWind;
private CourseWinds courseWinds;
private Map<Integer, MarkRounding> markRounding;
private RaceStartStatus raceStartStatus;
public VisualiserInput(Socket socket, StreamedCourse course) throws IOException{ public VisualiserInput(Socket socket, StreamedCourse course) throws IOException{
this.connectionSocket = socket; this.connectionSocket = socket;
@ -49,6 +58,7 @@ public class VisualiserInput implements Runnable
this.course = course; this.course = course;
this.boatLocation = new HashMap<>(); this.boatLocation = new HashMap<>();
this.boatStatus = new HashMap<>(); this.boatStatus = new HashMap<>();
this.markRounding = new HashMap<>();
//start Time //start Time
@ -106,6 +116,30 @@ public class VisualiserInput implements Runnable
return boatStatus; return boatStatus;
} }
/**
* Returns the average wind of the race
* @return average wind in the race
*/
public AverageWind getAverageWind() {
return averageWind;
}
/**
* Returns winds in the course
* @return winds that are in the course
*/
public CourseWinds getCourseWinds() {
return courseWinds;
}
/**
* Returns get Mark Rounding Boat Source ID, MarkRound
* @return
*/
public Map<Integer, MarkRounding> getMarkRounding() {
return markRounding;
}
/** /**
* Takes an inputStream and reads the first 15 bytes (the header) and gets the message length * Takes an inputStream and reads the first 15 bytes (the header) and gets the message length
* for the whole message then reads that and returns the byte array * for the whole message then reads that and returns the byte array
@ -193,6 +227,8 @@ public class VisualiserInput implements Runnable
break; break;
case RACESTARTSTATUS: case RACESTARTSTATUS:
//System.out.println("Race Start Status Message"); //System.out.println("Race Start Status Message");
RaceStartStatus rSS = (RaceStartStatus) data;
raceStartStatus = rSS;
break; break;
case YACHTEVENTCODE: case YACHTEVENTCODE:
// System.out.println("Yacht Action Code!"); // System.out.println("Yacht Action Code!");
@ -220,12 +256,17 @@ public class VisualiserInput implements Runnable
break; break;
case MARKROUNDING: case MARKROUNDING:
// System.out.println("Mark Rounding Message!"); // System.out.println("Mark Rounding Message!");
MarkRounding mkrounding = (MarkRounding) data;
markRounding.put(mkrounding.getSourceID(), mkrounding);
break; break;
case COURSEWIND: case COURSEWIND:
// System.out.println("Course Wind Message!"); // System.out.println("Course Wind Message!");
courseWinds = (CourseWinds) data;
break; break;
case AVGWIND: case AVGWIND:
// System.out.println("Average Wind Message!"); // System.out.println("Average Wind Message!");
AverageWind avgWind = (AverageWind) data;
averageWind = avgWind;
break; break;
default: default:
System.out.println("Broken Message!"); System.out.println("Broken Message!");

Loading…
Cancel
Save