UsingStreams.cpp
#include "main.h"
#include "support.h"
#include "lt_ioFileStream.h"
#include "lt_ioSubStream.h"
LT_USE_NAMESPACE(LizardTech);
LT_STATUS UsingStreams()
{
LT_STATUS sts = LT_STS_Uninit;
LTIOFileStream stream;
TEST_SUCCESS(stream.initialize(INPUT_PATH("meg.hdr"), "r"));
TEST_SUCCESS(stream.open());
lt_uint8 buf[5];
TEST_BOOL(stream.read(buf, 5) == 5);
TEST_BOOL(memcmp(buf, "NROWS", 5)==0);
TEST_SUCCESS(stream.seek(2, LTIO_SEEK_DIR_CUR));
TEST_BOOL(stream.tell() == 7);
TEST_BOOL(stream.read(buf, 2) == 2);
TEST_BOOL(memcmp(buf, "80", 2) == 0);
TEST_SUCCESS(stream.close());
TEST_SUCCESS(stream.open());
LTIOSubStream substream;
TEST_SUCCESS(substream.initialize(&stream, 7, 9, false));
TEST_SUCCESS(substream.open());
TEST_BOOL(substream.read(buf, 2) == 2);
TEST_BOOL(memcmp(buf, "80", 2)==0);
TEST_BOOL(stream.tell() == 9);
TEST_BOOL(substream.tell() == 2);
substream.close();
stream.close();
return LT_STS_Success;
}