Esempio n. 1
0
	Gregorian::Gregorian() {
		time_t currenttime;
		k_time(&currenttime);

		int days_since_unix = (int) currenttime / (60 * 60 * 24);
		
		_mod_julian_day = days_since_unix + DAYS_BETWEEN_UNIX_AND_MOD_JULIAN;		
	}
Esempio n. 2
0
Date::Date(){
    time_t mytime;
    k_time(&mytime);
    struct tm *t = gmtime(&mytime);
    int year  = t->tm_year + 1900;
    unsigned int month = t->tm_mon + 1;      // månaderna och dagarna
    int day   = t->tm_mday;
    mjd_create = mjd_setup(year, month, day);
}
Esempio n. 3
0
lab2::Gregorian::Gregorian() {
    time_t time; k_time(&time); // Init time
    const struct tm *t = gmtime(&time);
    _year  = t->tm_year + 1900;
    _month = t->tm_mon + 1;
    _day   = t->tm_mday;

    _offset = gregorian_date_to_jdn(_year, _month, _day);
}
Esempio n. 4
0
void lab2::Gregorian::setDateToday() {
    time_t mytime;
    k_time(&mytime);

    // För att få ut datum lokalt
    struct tm *t = gmtime(&mytime);
    _year  = t->tm_year + 1900;
    _month = t->tm_mon + 1;      // månaderna och dagarna
    _day   = t->tm_mday;
}
Esempio n. 5
0
 Julian::Julian():Date(){
   time_t mytime;
   k_time(&mytime);
   /*funkar i gregorian;*/
   struct tm *t = gmtime(&mytime);
   int year = t->tm_year + 1900;
   int month = t->tm_mon +1;
   int day = t->tm_mday;
   offset = greg_julian_day(year,month,day);
   //Här får man inte anropa nåt virtuellt
 }
Esempio n. 6
0
lab2::Julian::Julian() {
    time_t time; k_time(&time); // Init time
    const struct tm *t = gmtime(&time);
    unsigned int year  = t->tm_year + 1900;
    unsigned int month = t->tm_mon + 1;
    unsigned int day   = t->tm_mday;
    const long jdn     = gregorian_date_to_jdn(year, month, day);

    _offset = jdn;
    jdn_to_date(); // sets _year, _month, _day
}
Esempio n. 7
0
 Gregorian::Gregorian():Date(){
   time_t mytime;
   k_time(&mytime);
   
   struct tm *t = gmtime(&mytime);
   int year = t->tm_year + 1900;
   int month = t->tm_mon +1;
   int day = t->tm_mday;
   offset = double_julian_day(year,month,day) ;    
   //std::cout << "setting offset 1 " << offset << std::endl;
 }
Esempio n. 8
0
    Middle::Middle() : Date() {
        time_t theTime; 
        k_time(&theTime);
        struct tm *aTime = gmtime(&theTime);

        _day = aTime->tm_mday;
        _month = aTime->tm_mon + 1; // Month is 0 - 11, add 1 to get a jan-dec 1-12 concept
        _year = aTime->tm_year + 1900; // Year is # years since 1900

        //Assuming Gregorian system
        int a = (14 - _month)/12; 
        int y = _year + 4800 - a;
        int m = _month + 12*a - 3;

        _numeric = _day + (153*m + 2)/5 + 365*y + y/4 - y/100 + y/400 - 32045;
        calculatedDate = 0;
    }
Esempio n. 9
0
int main(int argc, const char * argv[]) {
    // init kattis time
    time_t tp;
    time(&tp);
    set_k_time(tp);
    
    // get kattis time
    time_t mytime;
    k_time(&mytime);
    
    struct tm *t = gmtime(&mytime);
    int year  = t->tm_year + 1900;
    int month = t->tm_mon + 1;      // månaderna och dagarna
    int day   = t->tm_mday;         // indexerade från ETT
    
    std::cout << mytime << std::endl << year << std::endl << month << std::endl << day << std::endl;
    return 0;
}
Esempio n. 10
0
File: date.cpp Progetto: Jacke20/kth
    //Default contructor
    Date::Date(){

        ////////////////////////////////////////////////////////////
        // Sätt tiden. OBS skicka inte nedanstående kod till kattis
        time_t mytime;
#if 1
        time(&mytime);
        set_k_time(mytime);
#endif
        ////////////////////////////////////////////////////////////

        // För att få nuvarande tid

        k_time(&mytime);


        // För att få ut datum lokalt

        struct tm* t = gmtime(&mytime);
        y = t->tm_year + 1900;
        m = t->tm_mon + 1;      // månaderna och dagarna
        d = t->tm_mday;         // indexerade från ETT

    }
Esempio n. 11
0
	Julian::Julian() {
		// Om vi använder visual studio - använd ej kattistime
		#if VISUAL_STUDIO == 1
			time_t rawtime;
			struct tm timeinfo;
			time(&rawtime);
			localtime_s(&timeinfo, &rawtime);
			int t_year = timeinfo.tm_year + 1900;
			unsigned t_month = timeinfo.tm_mon + 1;
			unsigned t_day = timeinfo.tm_mday;	
		// Om vi inte använder visual studio - använd kattistime
		#elif VISUAL_STUDIO == 0
			#if DEBUG == 1
					time_t tp;
					time(&tp);
					set_k_time(tp);
			#endif
			// För att få nuvarande tid
			time_t mytime;
			k_time(&mytime);

			// För att få ut datum lokalt 
			struct tm *t = gmtime(&mytime);
			int t_year  = t->tm_year + 1900;
			unsigned t_month = t->tm_mon + 1;      // månaderna och dagarna
			unsigned t_day   = t->tm_mday;         // indexerade från ETT
		#endif
		// Uppdatera julian date number
		int a = (int)floor((14 - t_month) / 12);
		int y = t_year + 4800 - a;
		int m = t_month + 12 * a - 3;
		jdn = t_day + (int)floor((153.0 * m + 2.0) / 5.0) + 365 * y + (int)floor(y / 4.0) - (int)floor(y / 100.0) + (int)floor(y / 400.0) - 32045;
		
		// Eftersom de uträknade yymmdd är gregorian och inte julian - kalla på refresh för att uppdatera från jdn istället
		refresh();
	}
Esempio n. 12
0
 JulianDate::JulianDate() : WesternDate(utc_seconds_to_mjd_offset(k_time(nullptr))) {}