WvStreams
uniwvconfgen.h
00001 /* -*- Mode: C++ -*-
00002  * Worldvisions Weaver Software:
00003  *   Copyright (C) 2002 Net Integration Technologies, Inc.
00004  * 
00005  * A generator to make a UniConf object out of a WvConf.
00006  */ 
00007 
00008 #ifndef __UNICONFWVGEN_H
00009 #define __UNICONFWVGEN_H
00010 
00011 #include "uniconfgen.h"
00012 
00013 class WvConf;
00017 class UniWvConfGen : public UniConfGen
00018 {
00019 private:
00020     UniConfKey *tempkey;
00021     WvString tempvalue;
00022 
00023     void notify(void *userdata, WvStringParm section, WvStringParm entry,
00024                 WvStringParm oldval, WvStringParm newval);
00025 
00026 protected:
00027     WvConf *cfg;
00028 
00029     class WvConfIter;
00030 
00031 public:
00032     UniWvConfGen(WvConf *_cfg);
00033     ~UniWvConfGen();
00034 
00035     /***** Overridden members *****/
00036 
00037     virtual void flush_buffers() { }
00038     virtual WvString get(const UniConfKey &key);
00039     virtual void set(const UniConfKey &key, WvStringParm value);
00040     virtual void setv(const UniConfPairList &pairs);
00041     virtual bool haschildren(const UniConfKey &key);
00042     virtual Iter *iterator(const UniConfKey &key);
00043 };
00044 
00045 #endif //__UNICONFWVGEN_H