00001
00002
00003 package SctData;
00004
00011 public class ResultHeader implements Sct.Serializable {
00012 public ResultHeader(int runNumber, int scanNumber, String moduleName, ConfigurationVariable variable,
00013 String startTime, String endTime) {
00014 this.scanNumber = scanNumber;
00015 this.runNumber = runNumber;
00016 this.moduleName = moduleName;
00017 this.variable = variable;
00018 this.startTime = startTime;
00019 this.endTime = endTime;
00020 }
00021
00022 public String getClassName() {
00023 return "SctData.ResultHeader";
00024 }
00025
00026 public String getUniqueID() {
00027 return getUniqueID(runNumber, scanNumber, moduleName);
00028 }
00029
00030 public static String getUniqueID(int runNumber, int scanNumber, String moduleName) {
00031 return runNumber + "." + scanNumber + "." + moduleName;
00032 }
00033
00034 public long getScanNumber() {
00035 return scanNumber;
00036 }
00037
00038 public long getRunNumber() {
00039 return runNumber;
00040 }
00041
00042 public String getModuleName() {
00043 return moduleName;
00044 }
00045
00046 public ConfigurationVariable getVariable() {
00047 return variable;
00048 }
00049
00050 public String getStartTimeString() {
00051 return startTime;
00052 }
00053
00054 public String getEndTimeString() {
00055 return endTime;
00056 }
00057
00058 public boolean equals(Object s) {
00059 if (!(s instanceof ResultHeader)) return false;
00060 ResultHeader sh2 = (ResultHeader)s;
00061 if (this.scanNumber == sh2.scanNumber && this.runNumber == sh2.runNumber
00062 && this.moduleName.equals(sh2.moduleName)) return true;
00063 return false;
00064 }
00065
00066 public static ResultHeader read(Sct.IStream s, Sct.ObjectManager o) throws java.io.IOException {
00067 int runNumber = s.readInt("RunNumber");
00068 int scanNumber = s.readInt("ScanNumber");
00069 String moduleName = s.readString("ModuleName");
00070 String startTime = s.readString("StartTime");
00071 String endTime = s.readString("EndTime");
00072 ConfigurationVariable variable = (ConfigurationVariable)o.readObject(s, "ScanVariable", "SctData.ConfigurationVariable");
00073 return new ResultHeader(runNumber, scanNumber, moduleName, variable, startTime, endTime);
00074 }
00075
00076 public void write(Sct.OStream s, Sct.ObjectManager o) throws java.io.IOException {
00077 s.writeInt("RunNumber", runNumber, false);
00078 s.writeInt("ScanNumber", scanNumber, false);
00079 s.writeString("ModuleName", moduleName);
00080 s.writeString("StartTime", startTime);
00081 s.writeString("EndTime", endTime);
00082 o.writeObject(s, "ScanVariable", variable, false);
00083 }
00084
00085 private int scanNumber;
00086 private int runNumber;
00087 private String moduleName;
00088 private ConfigurationVariable variable;
00089 private String startTime;
00090 private String endTime;
00091 }