private void writeObject(KSP.IO.TextWriter writer, object obj) { Type t = obj.GetType(); writer.WriteLine(t.Name); writer.WriteLine("{"); foreach (FieldInfo info in t.GetFields()) { object o = info.GetValue(obj); if (o == null) { continue; } if (info.FieldType.Equals(typeof(Enum))) { writer.WriteLine(" " + info.Name + " = " + info.GetValue(obj)); } if (info.FieldType.Equals(typeof(String))) { writer.WriteLine(" " + info.Name + " = " + info.GetValue(obj)); } if (info.FieldType.Equals(typeof(float))) { writer.WriteLine(" " + info.Name + " = " + info.GetValue(obj)); } if (info.FieldType.Equals(typeof(double))) { writer.WriteLine(" " + info.Name + " = " + info.GetValue(obj)); } if (info.FieldType.Equals(typeof(int))) { writer.WriteLine(" " + info.Name + " = " + info.GetValue(obj)); } if (info.FieldType.Equals(typeof(bool))) { writer.WriteLine(" " + info.Name + " = " + info.GetValue(obj)); } if (o.GetType().GetInterface("IList") != null) { IList ilist = (IList)o; foreach (object v in ilist) { writeObject(writer, v); } } } writer.WriteLine("}"); }
public void logSet(bool urlResult) { //} while (KSP.IO.File.Exists<IDisposable>(filename)); //System.IO.File.WriteAllBytes(filename, bytes); KSP.IO.TextWriter fileWriter = KSP.IO.TextWriter.CreateForType <IDisposable>("asdf.asdf");//thanks kethane SVN :) https://mmi-kethane-plugin.googlecode.com/svn-history/r2/trunk/Controller.cs fileWriter.WriteLine(JsonConvert.SerializeObject(dataLog)); fileWriter.Close(); //KSP.IO.File.WriteAllText<MuMechJebPod2>(KSP.IO.File.ReadAllText<MuMechJebPod2>(KSPUtil.ApplicationRootPath + "Parts/mumech_MechJebPod2/default.craft"), KSPUtil.ApplicationRootPath + "Ships/__mechjebpod_tmp.craft"); //System.IO.File.Copy(KSPUtil.ApplicationRootPath + "Parts/mumech_MechJebPod2/default.craft", KSPUtil.ApplicationRootPath + "Ships/__mechjebpod_tmp.craft", true); }
private static void SaveFile() { KSP.IO.TextWriter tw = KSP.IO.TextWriter.CreateForType <EvaSettings>(String.Format("Evas-{0}.txt", HighLogic.CurrentGame.Title)); foreach (var item in collection) { tw.Write("[" + item.Value + "]"); } tw.Close(); collection.Clear(); }
public AttitudeController(Vessel vessel) { internalVessel = vessel; ShowFacingVectors = false; ShowAngularVectors = false; ShowSteeringStats = false; WriteCSVFiles = false; if (pitchRateWriter != null) { pitchRateWriter.Dispose(); } if (yawRateWriter != null) { yawRateWriter.Dispose(); } if (rollRateWriter != null) { rollRateWriter.Dispose(); } if (pitchTorqueWriter != null) { pitchTorqueWriter.Dispose(); } if (yawTorqueWriter != null) { yawTorqueWriter.Dispose(); } if (rollTorqueWriter != null) { rollTorqueWriter.Dispose(); } if (adjustTorqueWriter != null) { adjustTorqueWriter.Dispose(); } pitchRateWriter = null; yawRateWriter = null; rollRateWriter = null; pitchTorqueWriter = null; yawTorqueWriter = null; rollTorqueWriter = null; adjustTorqueWriter = null; ResetToDefault(); }
public void SaveAlarms2() { KACWorker.DebugLogFormatted("Saving Alarms"); KSP.IO.TextWriter tw = KSP.IO.TextWriter.CreateForType <KerbalAlarmClock>(String.Format("Alarms-{0}.txt", HighLogic.CurrentGame.Title)); //Write the header tw.WriteLine("VesselID|Name|Notes|AlarmTime.UT|AlarmMarginSecs|Type|Enabled|HaltWarp|PauseGame|Options-Manuever/Xfer/Target|<ENDLINE>"); foreach (KACAlarm tmpAlarm in Alarms.BySaveName(HighLogic.CurrentGame.Title)) { //Now Write Each alarm //tw.WriteLine(tmpAlarm.SerializeString2() + "|<ENDLINE>"); tw.WriteLine(tmpAlarm.SerializeString3() + "|<ENDLINE>"); } //And close the file tw.Close(); KACWorker.DebugLogFormatted("Saved Alarms"); }
public static void SaveConfiguration() { KSP.IO.TextWriter tr = KSP.IO.TextWriter.CreateForType <EvaSettings>("Config.cfg"); tr.Write("ShowDebugLines = false"); tr.Write("# 0 = left, 1 = right, 2 = middle mouse button."); tr.Write("SelectMouseButton = 0"); tr.Write("DispatchMouseButton = 2"); tr.Write("# Lookup Unity Keybinding for different options"); tr.Write("# use lower case or eat exception sandwich. "); tr.Write("SelectKey = o"); tr.Write("DispatchKey = p"); tr.Write(""); tr.Write("ShowLoadingKerbals = false"); tr.Write("EnableHelmetToggle = true"); tr.Close(); }
public void SaveAlarms(Boolean BypassLogging = false) { if (!BypassLogging) { KACWorker.DebugLogFormatted("Saving Alarms-v3"); } KSP.IO.TextWriter tw = KSP.IO.TextWriter.CreateForType <KerbalAlarmClock>(String.Format("Alarms-{0}.txt", HighLogic.CurrentGame.Title)); //Write the header tw.WriteLine("AlarmsFileVersion|3|<ENDLINE>"); tw.WriteLine("VesselID|Name|Notes|AlarmTime.UT|AlarmMarginSecs|Type|Enabled|HaltWarp|PauseGame|ActionedAt|Manuever|Xfer|Target|Options|<ENDLINE>"); foreach (KACAlarm tmpAlarm in Alarms.BySaveName(HighLogic.CurrentGame.Title)) { //Now Write Each alarm tw.WriteLine(tmpAlarm.SerializeString3() + "|<ENDLINE>"); } //And close the file tw.Close(); }
public void Dispose() { if (pitchRateWriter != null) { pitchRateWriter.Dispose(); } if (yawRateWriter != null) { yawRateWriter.Dispose(); } if (rollRateWriter != null) { rollRateWriter.Dispose(); } if (pitchTorqueWriter != null) { pitchTorqueWriter.Dispose(); } if (yawTorqueWriter != null) { yawTorqueWriter.Dispose(); } if (rollTorqueWriter != null) { rollTorqueWriter.Dispose(); } if (adjustTorqueWriter != null) { adjustTorqueWriter.Dispose(); } pitchRateWriter = null; yawRateWriter = null; rollRateWriter = null; pitchTorqueWriter = null; yawTorqueWriter = null; rollTorqueWriter = null; adjustTorqueWriter = null; }
/// <summary> /// Writes the object into the passed file. (uses KSP.IO) /// </summary> /// <param name="obj">Object.</param> /// <param name="path">Path.</param> public void writeObject(object obj, String path) { KSP.IO.TextWriter writer = KSP.IO.TextWriter.CreateForType <MissionController> (path); writeObject(writer, obj); writer.Close(); }
/// <summary> /// Writes the object into the passed file. (uses KSP.IO) /// </summary> /// <param name="obj">Object.</param> /// <param name="path">Path.</param> public void writeObject(object obj, String path) { KSP.IO.TextWriter writer = KSP.IO.TextWriter.CreateForType <KerbalStuffVersion_BOM>(path); writeObject(writer, obj); writer.Close(); }
private void writeObject(KSP.IO.TextWriter writer, object obj) { Type t = obj.GetType(); writer.WriteLine(JsonConvert.SerializeObject(obj)); }
public void Dispose() { DisposeVectorRenderers(); if (pitchRateWriter != null) pitchRateWriter.Dispose(); if (yawRateWriter != null) yawRateWriter.Dispose(); if (rollRateWriter != null) rollRateWriter.Dispose(); if (pitchTorqueWriter != null) pitchTorqueWriter.Dispose(); if (yawTorqueWriter != null) yawTorqueWriter.Dispose(); if (rollTorqueWriter != null) rollTorqueWriter.Dispose(); if (adjustTorqueWriter != null) adjustTorqueWriter.Dispose(); pitchRateWriter = null; yawRateWriter = null; rollRateWriter = null; pitchTorqueWriter = null; yawTorqueWriter = null; rollTorqueWriter = null; adjustTorqueWriter = null; SteeringManagerProvider.RemoveInstance(shared.Vessel); }
public void WriteCSVs() { if (pitchRateWriter == null) { pitchRateWriter = KSP.IO.File.AppendText<PIDLoop>( string.Format(FILE_BASE_NAME, fileDateString, shared.Vessel.vesselName, "pitchRate")); pitchRateWriter.WriteLine("LastSampleTime,Error,ErrorSum,Output,Kp,Ki,Kd,MaxOutput"); } if (yawRateWriter == null) { yawRateWriter = KSP.IO.File.AppendText<PIDLoop>( string.Format(FILE_BASE_NAME, fileDateString, shared.Vessel.vesselName, "yawRate")); yawRateWriter.WriteLine("LastSampleTime,Error,ErrorSum,Output,Kp,Ki,Kd,MaxOutput"); } if (rollRateWriter == null) { rollRateWriter = KSP.IO.File.AppendText<PIDLoop>( string.Format(FILE_BASE_NAME, fileDateString, shared.Vessel.vesselName, "rollRate")); rollRateWriter.WriteLine("LastSampleTime,Error,ErrorSum,Output,Kp,Ki,Kd,MaxOutput"); } if (pitchTorqueWriter == null) { pitchTorqueWriter = KSP.IO.File.AppendText<PIDLoop>( string.Format(FILE_BASE_NAME, fileDateString, shared.Vessel.vesselName, "pitchTorque")); pitchTorqueWriter.WriteLine("LastSampleTime,Input,Setpoint,Error,ErrorSum,Output,Kp,Ki,Tr,Ts,I,MaxOutput"); } if (yawTorqueWriter == null) { yawTorqueWriter = KSP.IO.File.AppendText<PIDLoop>( string.Format(FILE_BASE_NAME, fileDateString, shared.Vessel.vesselName, "yawTorque")); yawTorqueWriter.WriteLine("LastSampleTime,Input,Setpoint,Error,ErrorSum,Output,Kp,Ki,Tr,Ts,I,MaxOutput"); } if (rollTorqueWriter == null) { rollTorqueWriter = KSP.IO.File.AppendText<PIDLoop>( string.Format(FILE_BASE_NAME, fileDateString, shared.Vessel.vesselName, "rollTorque")); rollTorqueWriter.WriteLine("LastSampleTime,Input,Setpoint,Error,ErrorSum,Output,Kp,Ki,Tr,Ts,I,MaxOutput"); } if (adjustTorqueWriter == null) { adjustTorqueWriter = KSP.IO.File.AppendText<SteeringManager>( string.Format(FILE_BASE_NAME, fileDateString, shared.Vessel.vesselName, "adjustTorque")); adjustTorqueWriter.WriteLine("LastSampleTime,Target Pitch,Measured Pitch,Average Adjust Pitch,Raw Pitch,Target Yaw,Measured Yaw,Average Adjust Yaw,Raw Yaw,Target Roll,Measured Roll,Average Adjust Roll,Raw Roll,Samples Roll"); } pitchRateWriter.WriteLine(pitchRatePI.ToCSVString()); yawRateWriter.WriteLine(yawRatePI.ToCSVString()); rollRateWriter.WriteLine(rollRatePI.ToCSVString()); pitchTorqueWriter.WriteLine(pitchPI.ToCSVString()); yawTorqueWriter.WriteLine(yawPI.ToCSVString()); rollTorqueWriter.WriteLine(rollPI.ToCSVString()); adjustTorqueWriter.WriteLine(string.Join(",", new[] { sessionTime.ToString(), tgtPitchTorque.ToString(), measuredTorque.x.ToString(), pitchTorqueCalc.Mean.ToString(), rawTorque.x.ToString(), tgtYawTorque.ToString(), measuredTorque.z.ToString(), yawTorqueCalc.Mean.ToString(), rawTorque.z.ToString(), tgtRollTorque.ToString(), measuredTorque.y.ToString(), rollTorqueCalc.Mean.ToString(), rawTorque.y.ToString(), rollTorqueCalc.ValueCount.ToString() })); }
public SteeringManager(SharedObjects sharedObj) { shared = sharedObj; ShowFacingVectors = false; ShowAngularVectors = false; ShowThrustVectors = false; ShowRCSVectors = false; ShowSteeringStats = false; WriteCSVFiles = false; if (pitchRateWriter != null) pitchRateWriter.Dispose(); if (yawRateWriter != null) yawRateWriter.Dispose(); if (rollRateWriter != null) rollRateWriter.Dispose(); if (pitchTorqueWriter != null) pitchTorqueWriter.Dispose(); if (yawTorqueWriter != null) yawTorqueWriter.Dispose(); if (rollTorqueWriter != null) rollTorqueWriter.Dispose(); if (adjustTorqueWriter != null) adjustTorqueWriter.Dispose(); pitchRateWriter = null; yawRateWriter = null; rollRateWriter = null; pitchTorqueWriter = null; yawTorqueWriter = null; rollTorqueWriter = null; adjustTorqueWriter = null; adjustTorque = Vector3d.zero; adjustMomentOfInertia = Vector3d.one; enableMoiAdjust = false; EnableTorqueAdjust = true; MaxStoppingTime = 2; PitchTorqueAdjust = 0; YawTorqueAdjust = 0; RollTorqueAdjust = 0; PitchTorqueFactor = 1; YawTorqueFactor = 1; RollTorqueFactor = 1; InitializeSuffixes(); }
public void Dispose() { DisposeVectorRenderers(); if (pitchRateWriter != null) pitchRateWriter.Dispose(); if (yawRateWriter != null) yawRateWriter.Dispose(); if (rollRateWriter != null) rollRateWriter.Dispose(); if (pitchTorqueWriter != null) pitchTorqueWriter.Dispose(); if (yawTorqueWriter != null) yawTorqueWriter.Dispose(); if (rollTorqueWriter != null) rollTorqueWriter.Dispose(); if (adjustTorqueWriter != null) adjustTorqueWriter.Dispose(); pitchRateWriter = null; yawRateWriter = null; rollRateWriter = null; pitchTorqueWriter = null; yawTorqueWriter = null; rollTorqueWriter = null; adjustTorqueWriter = null; }
public SteeringManager(Vessel vessel) { internalVessel = vessel; ShowFacingVectors = false; ShowAngularVectors = false; ShowSteeringStats = false; WriteCSVFiles = false; if (pitchRateWriter != null) pitchRateWriter.Dispose(); if (yawRateWriter != null) yawRateWriter.Dispose(); if (rollRateWriter != null) rollRateWriter.Dispose(); if (pitchTorqueWriter != null) pitchTorqueWriter.Dispose(); if (yawTorqueWriter != null) yawTorqueWriter.Dispose(); if (rollTorqueWriter != null) rollTorqueWriter.Dispose(); if (adjustTorqueWriter != null) adjustTorqueWriter.Dispose(); pitchRateWriter = null; yawRateWriter = null; rollRateWriter = null; pitchTorqueWriter = null; yawTorqueWriter = null; rollTorqueWriter = null; adjustTorqueWriter = null; adjustTorque = Vector3d.zero; EnableTorqueAdjust = false; MaxStoppingTime = 2; RollControlAngleRange = 5; PitchTorqueAdjust = 0; YawTorqueAdjust = 0; RollTorqueAdjust = 0; PitchTorqueFactor = 1; YawTorqueFactor = 1; RollTorqueFactor = 1; InitializeSuffixes(); }