/// <summary> /// Constructor /// </summary> public ObjectDetector() { try { // load setting from json file _save_settings = ExportDetectionSettings.DeserializeFromJsonOrDefault("scripts/vision_data_extractor_settings.json"); _script_started_time = DateTime.Now; // set event handlers this.Tick += OnTick; } catch (Exception e) { System.Windows.Forms.MessageBox.Show(e.ToString()); } }
/// <summary> /// Load Settings from serialized json file /// </summary> /// <param name="json_path"></param> /// <returns></returns> public static ExportDetectionSettings DeserializeFromJsonOrDefault(string json_path) { if (System.IO.File.Exists(json_path)) { var serializer = new DataContractJsonSerializer(typeof(ExportDetectionSettings)); using (var fs = new FileStream(json_path, FileMode.Open)) { var ret = serializer.ReadObject(fs) as ExportDetectionSettings; return(ret); } } else { // if file not exist, return default instance var def_set = new ExportDetectionSettings(); def_set.SerializeToJson(json_path); return(def_set); } }