[chuck-users] print absolute time in chuck

Chiel ten Brinke ctenbrinke at gmail.com
Tue May 3 04:33:53 EDT 2016


The problem with this approach, though, is that it apparently takes a few
seconds before the input is processed and the internal chuck timer starts
counting.
This results in that the times printed by the suggested code always is a
few seconds too early. This makes this approach not quite useful for
tracking down latency problems.

Is there a way around this caveat, or are there other approaches to print
full time?

On Tue, May 3, 2016 at 9:54 AM, Chiel ten Brinke <ctenbrinke at gmail.com>
wrote:

> Here is an improvement over the provided script:
>
> class FullTimeHack
> {
>     int minutes;
>     int seconds;
>
>     // PRECONSTRUCTOR
>
>     string datetime;
>     ConsoleInput stdin;     // gonna read from here
>     stdin.prompt("") => now; // wait until something comes in
>     while (stdin.more())  {  stdin.getLine() => datetime;  } // read input
>     //<<< datetime >>>;
>     Std.atoi(datetime.substring(10, 2)) => minutes;
>     Std.atoi(datetime.substring(13, 2)) => seconds;
>     <<< minutes + ":" + seconds >>>;
>
>
>     fun void print_full_time()
>     {
>         (seconds + now/second) % 60 => float new_seconds;
>         (minutes + now/minute) $ int % 60 => int new_minutes;
>         <<< new_minutes + ":" + new_seconds >>>;
>     }
>
> }
>
> FullTimeHack hack;
> hack.print_full_time();
>
>
>
> On Mon, May 2, 2016 at 6:11 PM, Chiel ten Brinke <ctenbrinke at gmail.com>
> wrote:
>
>> Thanks for you response. I'm gonna try that out right away,
>>
>> By the way, wouldn't it be nice if this could be done more easily?
>> Especially since ChucK is really into all the timey wimey stuff :)
>>
>>
>> On Mon, May 2, 2016 at 10:56 AM, Gonzalo <gonzalo at dense13.com> wrote:
>>
>>> I had a similar problem a while ago, Perry Cook suggested this, it might
>>> be of help:
>>>
>>> One way to do it would be to pass it in
>>> as an argument or other when you run ChucK.
>>> This example uses stdin to read the output
>>> of a <date> command in the shell:
>>>
>>> // TestDate.ck  Perry R. Cook, Dec. 2014
>>> ConsoleInput stdin;     // gonna read from here
>>> stdin.prompt("") => now; // wait until something comes in
>>> string datetime; // date and time
>>> string datetimenow; // plus time since chuck invoked tacked on
>>> while (stdin.more())  {  stdin.getLine() => datetime;  } // read input
>>> datetime.setCharAt(9,'-'); // replace time string colons
>>> datetime.setCharAt(12,'-'); // with dashes instead
>>> datetime+"-"+Std.ftoa(now/second,4) => datetimenow; // tack on time
>>> since chuck invoked
>>> <<< datetimenow >>>;
>>> // If you want to continue making updated unique
>>> // strings, just keep redoing the datetimenow line
>>> 1.5*second => now;
>>> datetime+"-"+Std.ftoa(now/second,4) => datetimenow; // tack on time
>>> since chuck invoked
>>> <<< datetimenow >>>;
>>>
>>> To use this:
>>>
>>> date +"%m%d%y-%T" | chuck TestDate.ck
>>>
>>> Outputs (date-H-M-S-now):
>>>
>>> "120614-15-00-09-0.0000" : (string)
>>> "120614-15-00-09-1.5000" : (string)
>>>
>>>
>>>
>>>
>>> On 2/05/2016 9:53 AM, Chiel ten Brinke wrote:
>>>
>>>> I would like to figure out the source of latency from chuck interacting
>>>> with another application via OSC. To do that, I want to print timestamps
>>>> of messages sent and received and compare these.
>>>> But here's the thing:
>>>>
>>>> How do I print the absolute current time in chuck? The variable `now`
>>>> only seems to hold the time from the start of the process.
>>>>
>>>>
>>>> _______________________________________________
>>>> chuck-users mailing list
>>>> chuck-users at lists.cs.princeton.edu
>>>> https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
>>>>
>>>>
>>> --
>>> http://dense13.com
>>> http://www.whole-play.com
>>> https://www.30daygroove.com
>>> _______________________________________________
>>> chuck-users mailing list
>>> chuck-users at lists.cs.princeton.edu
>>> https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
>>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cs.princeton.edu/pipermail/chuck-users/attachments/20160503/e74b2e1f/attachment-0001.html>


More information about the chuck-users mailing list