コード例 #1
0
ファイル: eventlog.c プロジェクト: Patrick6289/navguide
int eventlog_write_event(eventlog_t *l, eventlog_event_t *le)
{
    fwrite32(l->f, MAGIC);

    le->eventnum = l->eventcount;

    fwrite64(l->f, le->eventnum);
    fwrite64(l->f, le->timestamp);
    fwrite32(l->f, le->channellen);
    fwrite32(l->f, le->datalen);

    fwrite(le->channel, 1, le->channellen, l->f);
    fwrite(le->data, 1, le->datalen, l->f);

    l->eventcount++;

    return 0;
}
コード例 #2
0
ファイル: eventlog.c プロジェクト: ghorn/conftron
int lcm_eventlog_write_event(lcm_eventlog_t *l, lcm_eventlog_event_t *le)
{
    if (0 != fwrite32(l->f, MAGIC)) return -1;

    le->eventnum = l->eventcount;

    if (0 != fwrite64(l->f, le->eventnum)) return -1;
    if (0 != fwrite64(l->f, le->timestamp)) return -1;
    if (0 != fwrite32(l->f, le->channellen)) return -1;
    if (0 != fwrite32(l->f, le->datalen)) return -1;

    if (le->channellen != fwrite(le->channel, 1, le->channellen, l->f)) 
        return -1;
    if (le->datalen != fwrite(le->data, 1, le->datalen, l->f))
        return -1;

    l->eventcount++;

    return 0;
}