/******************************************************************/ public double SubUnitFactor(SiTime_SubUnits SubUnit) { double factor = 1.0; switch (SubUnit) { case SiTime_SubUnits.Second: factor = 1.0; break; case SiTime_SubUnits.Minute: factor = 1.0 / 60.0; break; case SiTime_SubUnits.Hour: factor = 1.0 / 3600.0; break; case SiTime_SubUnits.Millisecond: factor = 1000.0; break; } return(factor); }
/****************************************************************/ /******************************************************************/ public string SubUnitString(SiTime_SubUnits SubUnit) { string sub_unit_name = ""; switch (SubUnit) { case SiTime_SubUnits.Second: sub_unit_name = "s"; break; case SiTime_SubUnits.Minute: sub_unit_name = "m"; break; case SiTime_SubUnits.Hour: sub_unit_name = "h"; break; case SiTime_SubUnits.Millisecond: sub_unit_name = "ms"; break; } return(sub_unit_name); }
/****************** constructors ******************************/ /**@brief A constructor where the value unit's is specified. */ /**@param "x" The internal value is assigned to it. It is assumed x is times */ /**@param "SubUnit" The units in wich 'x' is expressed. */ public SiTime(double x, SiTime_SubUnits SubUnit) { this.the_value = 0.0; this.the_value = x / SubUnitFactor(SubUnit); }
/**@brief Returns the value converted to the selected units. */ public double ToSubUnits(SiTime_SubUnits SubUnit) { return(this.Value * SubUnitFactor(SubUnit)); }