1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
/*
* Worldvisions Weaver Software:
* Copyright (C) 1997-2002 Net Integration Technologies, Inc.
*
* Test program for base64 functions...
*/
#include "wvbase64.h"
#include "wvstream.h"
#include "wvistreamlist.h"
#include "wvencoderstream.h"
int main(int argc, char **argv)
{
bool encode = true;
if (argc > 1 && strcmp(argv[1], "-d") == 0)
encode = false;
WvEncoder *enc;
if (encode)
enc = new WvBase64Encoder();
else
enc = new WvBase64Decoder();
WvEncoderStream *stream = new WvEncoderStream((wvout->addRef(), wvout));
stream->auto_flush(false);
stream->writechain.append(enc, true);
WvIStreamList *slist = new WvIStreamList();
slist->append(stream, false, "stream");
slist->append(wvin, false, "wvin");
wvin->autoforward(*stream);
while (wvin->isok() && stream->isok())
{
if (slist->select(-1))
slist->callback();
}
stream->flush(0);
WVRELEASE(stream);
WVRELEASE(slist);
return 0;
}
|