protected override void Init(MyObjectBuilder_DefinitionBase def)
        {
            base.Init(def);
            var ob = (MyObjectBuilder_EquiSolarObservationComponentDefinition)def;

            _test            = BooleanMath.And(ob.Rules.Select(x => x.Compile()));
            UpdateIntervalMs = ob.UpdateInterval.HasValue ? (int)((TimeSpan)ob.UpdateInterval).TotalMilliseconds : 5000;
            UpdateVarianceMs = ob.UpdateIntervalVariance.HasValue ? (int)((TimeSpan)ob.UpdateIntervalVariance).TotalMilliseconds : 0;
            Transition       = ob.Transition ?? ScheduleTransition.Sparkle;
        }
 protected override BooleanMath.DelEvaluate <SolarObservation> CompileInternal()
 {
     return(BooleanMath.And(Rules.Select(x => x.Compile())));
 }