HISE Logo Forum
    • Categories
    • Register
    • Login

    Dates...

    Scheduled Pinned Locked Moved General Questions
    41 Posts 5 Posters 2.0k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • d.healeyD
      d.healey @Dan Korneff
      last edited by

      @Dan-Korneff Why not?

      inline function isLeapYear(year) 
      {
          return (0 == year % 4) && (0 != year % 100) || (0 == year % 400));
      }
      

      Libre Wave - Freedom respecting instruments and effects
      My Patreon - HISE tutorials
      YouTube Channel - Public HISE tutorials

      Dan KorneffD LindonL 2 Replies Last reply Reply Quote 0
      • Dan KorneffD
        Dan Korneff @d.healey
        last edited by

        @d-healey That works too, and you save 4 lines of code.

        Dan Korneff - Producer / Mixer / Audio Nerd

        LindonL 1 Reply Last reply Reply Quote 0
        • ustkU
          ustk
          last edited by

          00b53da02349bc224f3f858a07c29073.jpg

          Can't help pressing F5 in the forum...

          1 Reply Last reply Reply Quote 1
          • LindonL
            Lindon @Dan Korneff
            last edited by

            @Dan-Korneff said in Dates...:

            @d-healey That works too, and you save 4 lines of code.

            if we are interested in saving lines of code my original version is precisely 1 line.... :-)

            HISE Development for hire.
            www.channelrobot.com

            Dan KorneffD 1 Reply Last reply Reply Quote 1
            • Dan KorneffD
              Dan Korneff @Lindon
              last edited by

              @Lindon I only skimmed the last few posts 馃挬

              Dan Korneff - Producer / Mixer / Audio Nerd

              1 Reply Last reply Reply Quote 0
              • Christoph HartC
                Christoph Hart
                last edited by

                if we are interested in saving lines of code my original version is precisely 1 line....

                But you need to ship an update in 2036 and we're all in here for the long run...

                LindonL 1 Reply Last reply Reply Quote 2
                • LindonL
                  Lindon @Christoph Hart
                  last edited by

                  @Christoph-Hart said in Dates...:

                  if we are interested in saving lines of code my original version is precisely 1 line....

                  But you need to ship an update in 2036 and we're all in here for the long run...

                  well you have me there...

                  HISE Development for hire.
                  www.channelrobot.com

                  1 Reply Last reply Reply Quote 0
                  • LindonL
                    Lindon @d.healey
                    last edited by Lindon

                    @d-healey said in Dates...:

                    @Dan-Korneff Why not?

                    inline function isLeapYear(year) 
                    {
                        return (0 == year % 4) && (0 != year % 100) || (0 == year % 400));
                    }
                    

                    except when you try this it always returns true....so it doenst work.

                    -- oh hang on I spot a typeo in my implementation....

                    HISE Development for hire.
                    www.channelrobot.com

                    LindonL 1 Reply Last reply Reply Quote 0
                    • LindonL
                      Lindon @Lindon
                      last edited by Lindon

                      Okay so whilst we await @ustk 's push here's a fix using just HISE:

                      function isLeapYear(aYear)
                      {
                      	return ((0 == aYear % 4) && (0 != aYear % 100) || (0 == aYear % 400));
                      }
                      
                      function daysFrom2000(aYear,aMonth,aDay)
                      {
                      	reg calcYear = 2000;
                      	reg totalDays = 0;
                      	reg leap = 0;
                      	reg monthAmounts = [31,28,31,30,31,30,31,31,30,31,30,31];
                      	if(aYear < calcYear)
                      		return -1;
                      		
                      	if(aMonth > 2 && isLeapYear(aYear))
                      		leap = 1;
                      	totalDays = aDay + leap;
                      	for(i = 0; i< aMonth-1; i++)
                      	{
                      		totalDays = totalDays + monthAmounts[i];
                      	};
                      		
                      		
                      	while(calcYear < aYear)
                      	{
                      		totalDays = totalDays + 365 + isLeapYear(calcYear);
                      		calcYear++;
                      	};
                      	
                      	return totalDays;
                      }
                      
                      Console.print(daysFrom2000(2023,01,01));
                      

                      Obviously just doing days not microseconds

                      HISE Development for hire.
                      www.channelrobot.com

                      ustkU 1 Reply Last reply Reply Quote 0
                      • ustkU
                        ustk @Lindon
                        last edited by

                        @Lindon the push鈥檚 been made, Christoph should merge soon

                        Can't help pressing F5 in the forum...

                        d.healeyD 1 Reply Last reply Reply Quote 1
                        • d.healeyD
                          d.healey @ustk
                          last edited by

                          @ustk Already has, no?

                          Link Preview Image
                          Commits 路 christophhart/HISE

                          The open source framework for sample based instruments - Commits 路 christophhart/HISE

                          favicon

                          GitHub (github.com)

                          Libre Wave - Freedom respecting instruments and effects
                          My Patreon - HISE tutorials
                          YouTube Channel - Public HISE tutorials

                          ustkU 1 Reply Last reply Reply Quote 0
                          • ustkU
                            ustk @d.healey
                            last edited by

                            @d-healey Oh yes my mistake, was waiting for the others...

                            Can't help pressing F5 in the forum...

                            1 Reply Last reply Reply Quote 0
                            • First post
                              Last post

                            22

                            Online

                            1.7k

                            Users

                            11.9k

                            Topics

                            103.5k

                            Posts