/usr/include/wvstreams/uniregistrygen.h is in libwvstreams-dev 4.6.1-11.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 | /* -*- Mode: C++ -*-
* Worldvisions Weaver Software:
* Copyright (C) 1997-2003 Net Integration Technologies, Inc.
*
* A generator that exposes the windows registry.
*
* When linking statically, use the following #pragma to ensure this
* generator gets registered:
* #pragma comment(linker, "/include:?UniRegistryGenMoniker@@3V?$WvMoniker@VUniConfGen@@@@A")
*/
#ifndef __UNICONFREGISTRY_H
#define __UNICONFREGISTRY_H
#include "uniconfgen.h"
#include "wvlog.h"
#include "windows.h"
/**
* A generator that exposes the windows registry.
*
* To mount, use the moniker "registry:".
*
*/
class UniRegistryGen : public UniConfGen
{
WvLog m_log;
HKEY m_hRoot;
protected:
virtual void flush_buffers() { }
public:
UniRegistryGen(WvString _base);
virtual ~UniRegistryGen();
/***** Overridden methods *****/
virtual bool isok();
virtual WvString get(const UniConfKey &key);
virtual void set(const UniConfKey &key, WvStringParm value);
virtual void setv(const UniConfPairList &pairs);
virtual bool exists(const UniConfKey &key);
virtual bool haschildren(const UniConfKey &key);
virtual Iter *iterator(const UniConfKey &key);
};
class UniRegistryGenIter : public UniConfGen::Iter
{
public:
UniRegistryGenIter(UniRegistryGen &gen, const UniConfKey &key, HKEY base);
/** Destroys the iterator. */
virtual ~UniRegistryGenIter();
/**
* Rewinds the iterator.
* Must be called prior to the first invocation of next().
*/
virtual void rewind();
/**
* Seeks to the next element in the sequence.
* Returns true if that element exists.
* Must be called prior to the first invocation of key().
*/
virtual bool next();
/** Returns the current key. */
virtual UniConfKey key() const;
/** Returns the value of the current key. */
virtual WvString value() const;
private:
LONG next_key();
LONG next_value();
HKEY m_hKey;
enum Enumerating { KEYS, VALUES } m_enumerating;
unsigned m_index;
UniRegistryGen &gen;
const UniConfKey parent;
UniConfKey current_key;
const HKEY m_dontClose;
};
#endif // __UNICONFREGISTRY_H
|