Exemplo n.º 1
0
            public string getDateString2()
            {
                //1971-04-25 23:00:00 +0000
                GPTimestamp ts = new GPTimestamp(TimestampEnd);

                return(string.Format("{0:0000}-{1:00}-{2:00} {3:00}:{4:00}:{5:00} +0000", ts.year, ts.month, ts.day, ts.hour, 0, 0));
            }
Exemplo n.º 2
0
            public string getDateStringx(long tsval, int offset)
            {
                //1971-04-25 23:00:00 +0000
                GPTimestamp ts = new GPTimestamp(tsval);

                ts.subtractSeconds(-offset);
                return(string.Format("{0:0000}-{1:00}-{2:00}-{3:00}-{4:00}-{5:00}", ts.year, ts.month, ts.day, ts.hour, ts.minute, ts.second));
            }
Exemplo n.º 3
0
            public DateTime getDateTime(int off)
            {
                GPTimestamp ts = new GPTimestamp(Timestamp);

                ts.subtractSeconds(-off);
                return(new DateTime(ts.year, ts.month, ts.day, ts.hour,
                                    ts.minute, ts.second));
            }
Exemplo n.º 4
0
 public Transition GetNextTransition(GPTimestamp ts)
 {
     foreach (Transition trans in Transitions)
     {
         if (trans.Timestamp > ts.getValue())
         {
             return(trans);
         }
     }
     return(null);
 }
Exemplo n.º 5
0
        public bool hasDstInYear(int year)
        {
            foreach (Transition tr in Transitions)
            {
                if (GPTimestamp.Year(tr.Timestamp) == year)
                {
                    return(true);
                }
            }

            return(false);
        }
Exemplo n.º 6
0
        public DateTime EndDateInYear(int year)
        {
            Transition selected = null;

            foreach (Transition tr in Transitions)
            {
                if (GPTimestamp.Year(tr.Timestamp) == year && tr.Dst == false)
                {
                    selected = tr;
                    break;
                }
            }
            if (selected == null)
            {
                return(new DateTime());
            }
            return((new GPTimestamp(selected.Timestamp)).getDateTime());
        }
Exemplo n.º 7
0
        public void RefreshEnds()
        {
            GPTimestamp ts;
            int         offset = -1;

            for (int i = 1; i < Transitions.Count; i++)
            {
                ts = new GPTimestamp(Transitions[i].Timestamp);
                Transitions[i - 1].TimestampEnd = Transitions[i].Timestamp;
                if (ts.year >= 2014)
                {
                    if (Transitions[i].OffsetInSeconds < offset || offset < 0)
                    {
                        offset = Transitions[i].OffsetInSeconds;
                    }
                }
            }
            foreach (Transition tr in Transitions)
            {
                tr.Dst = (tr.OffsetInSeconds != offset);
            }

            OffsetSeconds = offset;
        }