private void ReadGlobalSettings() { Scope sc = parser.RootScope; Element ehead = sc["GlobalSettings"]; if (ehead == null || ehead.Compound == null) { Console.Error.WriteLine("no GlobalSettings dictionary found"); globals = new FileGlobalSettings(this, new PropertyTable()); return; } PropertyTable props = DocumentUtil.GetPropertyTable(this, "", ehead, ehead.Compound, true); if (props == null) { throw(new Exception("GlobalSettings dictionary contains no property table")); } globals = new FileGlobalSettings(this, props); var test = globals.TimeSpanStop.Value; }
/// <summary> /// get the number of fps for a FrameRate enumerated value /// </summary> private static double FrameRateToDouble(FileGlobalSettings.FrameRate fp, double customFPSVal = -1) { switch (fp) { case FileGlobalSettings.FrameRate.FrameRate_DEFAULT: return 1.0; case FileGlobalSettings.FrameRate.FrameRate_120: return 120.0; case FileGlobalSettings.FrameRate.FrameRate_100: return 100.0; case FileGlobalSettings.FrameRate.FrameRate_60: return 60.0; case FileGlobalSettings.FrameRate.FrameRate_50: return 50.0; case FileGlobalSettings.FrameRate.FrameRate_48: return 48.0; case FileGlobalSettings.FrameRate.FrameRate_30: case FileGlobalSettings.FrameRate.FrameRate_30_DROP: return 30.0; case FileGlobalSettings.FrameRate.FrameRate_NTSC_DROP_FRAME: case FileGlobalSettings.FrameRate.FrameRate_NTSC_FULL_FRAME: return 29.9700262; case FileGlobalSettings.FrameRate.FrameRate_PAL: return 25.0; case FileGlobalSettings.FrameRate.FrameRate_CINEMA: return 24.0; case FileGlobalSettings.FrameRate.FrameRate_1000: return 1000.0; case FileGlobalSettings.FrameRate.FrameRate_CINEMA_ND: return 23.976; case FileGlobalSettings.FrameRate.FrameRate_CUSTOM: return customFPSVal; } Debug.Assert(false); return -1.0f; }