コード例 #1
0
ファイル: sensor.c プロジェクト: HEnquist/wview
static void AgeAccumulator (WV_ACCUM_ID id)
{
    WV_ACCUM_SAMPLE     *nodePtr, *oldPtr;
    time_t              nowTime = time(NULL);

    for (nodePtr = (WV_ACCUM_SAMPLE*)radListGetLast (&id->samples);
         nodePtr != NULL;
         nodePtr = (WV_ACCUM_SAMPLE*)radListGetLast (&id->samples))
    {
        if ((nowTime - id->secondsInAccumulator) >= nodePtr->sampleTime)
        {
            // remove and free him
            oldPtr = (WV_ACCUM_SAMPLE*)radListRemoveLast (&id->samples);
            radBufferRls (oldPtr);
        }
        else
        {
            break;
        }
    }
}
コード例 #2
0
ファイル: raddatabase.c プロジェクト: mteel/radlib
ROW_ID raddatabaseResultsGetLast (RESULT_SET_ID id)
{
    id->current = (ROW_ID)radListGetLast (&id->rows);
    return id->current;
}