예제 #1
0
        public List <CoreEventFindRec> GetNextCoreTimes(int nTypeStart, int nTypeFind, int count)
        {
            List <CoreEventFindRec> dayList = new List <CoreEventFindRec>();
            VAISNAVADAY             cursor  = this;
            int idx = 0;

            idx = coreEvents.FindIndexOf(nTypeStart, idx);
            if (idx >= 0)
            {
                while (cursor != null && dayList.Count < count)
                {
                    idx = cursor.coreEvents.FindIndexOf(nTypeFind, idx++);
                    if (idx < 0)
                    {
                        cursor = cursor.Next;
                        idx    = -1;
                    }
                    else
                    {
                        CoreEventFindRec cer = new CoreEventFindRec();
                        cer.day             = cursor;
                        cer.coreEvent       = cursor.coreEvents[idx];
                        cer.dateTimeOfEvent = cursor.GetGregorianDateTime(cursor.coreEvents[idx]);
                        dayList.Add(cer);
                    }
                }
            }

            return(dayList);
        }
예제 #2
0
        public List <CoreEventFindRec> GetRecentCoreTimes(int nTypeStart, int nTypeFind, int count)
        {
            List <CoreEventFindRec> dayList = new List <CoreEventFindRec>();
            VAISNAVADAY             cursor  = this;
            int idx = 0;

            idx = coreEvents.FindIndexOf(nTypeStart, idx);
            if (idx >= 0)
            {
                while (cursor != null && dayList.Count < count)
                {
                    idx = cursor.coreEvents.FindBackIndexOf(nTypeFind, idx - 1);
                    if (idx < 0)
                    {
                        cursor = cursor.Previous;
                        idx    = 1000;
                    }
                    else
                    {
                        CoreEventFindRec cer = new CoreEventFindRec();
                        cer.day             = cursor;
                        cer.coreEvent       = cursor.coreEvents[idx];
                        cer.dateTimeOfEvent = cursor.GetGregorianDateTime(cursor.coreEvents[idx]);
                        dayList.Insert(0, cer);
                    }
                }
            }

            return(dayList);
        }