Source: classlib/include/propertycontainer.h
|
|
|
|
/***************************************************************************
propertycontainer.h - hash di proprieta' per parametri
-------------------
begin : sab set 27 17:40:01 CET 2002
copyright : (C) 2001 by Nicola De Nisco
email : nicola@winada.it
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#ifndef PROPERTYCONTAINER_H
#define PROPERTYCONTAINER_H
#include "fixstring.h"
/**
class PropertyContainer
Questa classe implementa un contenitore di proprieta', ovvero delle
associazioni chiave/valore di stringhe (FixString).
Queste associazioni possono essere lette da un file su disco
come questo:
# questo e' un commento
chiave1=valore1
chiave2="valore2"
L'obbiettivo e' di fornire un agevole sistema per leggere e mantenere i dati
di configurazione di una applicazione.
*/
class PropertyContainer
{
public:
PropertyContainer();
virtual ~PropertyContainer();
/** Carica un file di setup da disco.
Ritorna 0 per se l'operazione va a buon fine.
*/
virtual int loadFile(LPCSTR file);
/** Aggiunge una proprieta' all'elenco.
*/
virtual void addProperty(LPCSTR key, LPCSTR val);
/** Cerca la proprieta' specificata dalla chiave. Ritorna il valore
se esiste, altrimenti NULL.
*/
virtual LPCSTR getProperty(LPCSTR key);
/** Cerca la proprieta' specificata dalla chiave. Se la prorieta' non esiste
ritorna il valore di default specificato.
*/
virtual FixString getProperty(LPCSTR key, LPCSTR defVal);
/** Cerca la proprieta' specificata dalla chiave. Se la prorieta' non esiste
ritorna il valore di default specificato.
*/
virtual int getPropertyInt(LPCSTR key, int defVal=0);
/** Cerca la proprieta' specificata dalla chiave. Se la prorieta' non esiste
ritorna il valore di default specificato.
*/
virtual float getPropertyFloat(LPCSTR key, float defVal=0.0f);
/** Cerca la proprieta' specificata dalla chiave. Se la prorieta' non esiste
ritorna il valore di default specificato.
*/
virtual double getPropertyDouble(LPCSTR key, double defVal=0.0);
private:
LPVOID ptHash;
};
#endif
Generated by: nicola on gulliver.wadahome.it on Sun May 25 13:54:34 2003, using kdoc 2.0a53. |