#include <iostream>
#include <rda/DataCodec.h>
#include <rda/RDAService.h>
#ifdef CMW_WIN
#include <windows.h>
#else
#include <unistd.h>
#include <sys/stat.h>
#include <fcntl.h>
#endif
using namespace std;
int main(int argc, char** argv)
{
const char* file = 0;
if (argc > 1) file = argv[1];
else
{
cout << "File name not specified\n";
return 0;
}
rdaRDAService::init();
cout << "==> reading data from file: " << file << endl;
int fd = open(file, O_RDONLY);
if (fd == -1)
{
perror("open() failed");
return 0;
}
char buf[10000];
int size = read(fd, &buf, 10000);
if (size == -1)
{
perror("read() failed");
return 0;
}
if (size == 0)
{
printf("empty data file\n");
return 0;
}
rdaData* data = rdaDataCodec::decode(buf, (unsigned long)size);
if (data) data->print();
else cout << "conversion failed\n";
delete data;
close(fd);
return 0;
}