WvStreams
|
00001 /* 00002 * Worldvisions Weaver Software: 00003 * Copyright (C) 1997-2002 Net Integration Technologies, Inc. 00004 * 00005 * A class that does add_callback when created and del_callback when 00006 * destroyed. See uniwatch.h 00007 */ 00008 #include "uniwatch.h" 00009 #include "uniconfroot.h" 00010 00011 00012 UniWatch::UniWatch(const UniConf &_cfg, const UniConfCallback &_cb, 00013 bool _recurse) 00014 : cfg(_cfg), cb(_cb), recurse(_recurse) 00015 { 00016 cfg.add_callback(this, cb, recurse); 00017 } 00018 00019 00020 UniWatch::UniWatch(const UniConf &_cfg, bool *b, bool _recurse) 00021 : cfg(_cfg), cb(wv::bind(&UniConfRoot::setbool_callback, b, _1, _2)), 00022 recurse(_recurse) 00023 { 00024 cfg.add_callback(this, cb, recurse); 00025 } 00026 00027 00028 UniWatch::~UniWatch() 00029 { 00030 cfg.del_callback(this, recurse); 00031 }