void testBinaryRepresentation_float(CuTest* testCase) {
    cactusSerialisationTestSetup();
    void *vA2 = vA;
    float i = 3.145678;
    float j = 2.714342;
    binaryRepresentation_writeFloat(i, writeFn);
    binaryRepresentation_writeFloat(j, writeFn);
    CuAssertTrue(testCase, i == binaryRepresentation_getFloat(&vA2));
    CuAssertTrue(testCase, j == binaryRepresentation_getFloat(&vA2));
    cactusSerialisationTestTeardown();
}
Exemple #2
0
Event *event_loadFromBinaryRepresentation(void **binaryString,
        EventTree *eventTree) {
    Event *event, *parentEvent;
    Name name;
    float branchLength;
    char *header;

    event = NULL;
    if (binaryRepresentation_peekNextElementType(*binaryString) == CODE_EVENT) {
        binaryRepresentation_popNextElementType(binaryString);
        parentEvent = eventTree_getEvent(eventTree,
                binaryRepresentation_getName(binaryString));
        assert(parentEvent != NULL);
        name = binaryRepresentation_getName(binaryString);
        branchLength = binaryRepresentation_getFloat(binaryString);
        header = binaryRepresentation_getString(binaryString);
        event
                = event_construct(name, header, branchLength, parentEvent,
                        eventTree);
        event_setOutgroupStatus(event, binaryRepresentation_getBool(binaryString));
        free(header);
    }
    return event;
}