stec-platform
resident.h
1 #ifndef RESIDENT_H
2 #define RESIDENT_H
3 /*
4 *
5 * $LastChangedDate: 2014-08-14 12:47:21 -0400 (Thu, 14 Aug 2014) $
6 * $LastChangedBy: ed $
7 * $Revision: 61 $
8 * $Author: ed $
9 * $URL: svn+ssh://svn.vremsoft.com/var/share/svn/tags/platfom3.4.3/platformutilitylib/resident.h $
10 * $Id: resident.h 61 2014-08-14 16:47:21Z ed $
11 * edc@vremsoft.com
12 *
13 * 19
14 *
15 * *** 2014<c> ***
16 *
17 *
18 */
19 
20 #include <QObject>
21 #include <QMap>
22 #include <QList>
23 #include <QVariant>
24 #include <memoryheap.h>
25 #include "platformu_global.h"
26 
31 class PLATFORMUSHARED_EXPORT Resident : public QObject
32 {
33  Q_OBJECT
34 private :
35  QString fileName;
36  QList<QString> Headers;
37  QMap<QString,QList<QVariant> > DataBase;
38  RecursiveLock lock;
39  bool dirtyFlag;
40 
41 
42 public:
43  Resident(QString FileName, QObject *parent = 0);
44  Resident(Resident *i1, QObject *parent = 0 );
45  Resident(QObject *parent = 0);
46 
47  virtual ~Resident();
48 
49  bool WriteValues( QString key, VremList v);
50  bool WriteValues( QString key, VremVArray v);
51  bool WriteValues(QMap<QString,QList<QVariant> >v);
52  bool WriteHeaders(QList<QString>headers);
53 
54  QList<QString> ReadHeaders(void);
55 
56  VremVArray ReadValues( QString key);
57  VremList ReadValueList( QString key);
58 
59  VremVArray ReadValues( QString key, VremVArray defaults, bool forcenew = false );
60  VremVArray ReadValues( QString key, VremList defaults, bool forcenew = false);
61  VremList ReadValueList( QString key, VremList defaults, bool forcenew = false)
62  {
63  return (MemoryHeap::toVremList(ReadValues(key,defaults,forcenew)));
64  }
65 
66  VremList ReadValueList( QString key, VremVArray defaults, bool forcenew = false)
67  {
68  return (MemoryHeap::toVremList(ReadValues(key,defaults,forcenew)));
69  }
70 
71  QVariant GetValue(QString key, int index);
72 
73  virtual void SetFileName(QString FileName);
74 
75  QMap<QString,QList<QVariant> > ReadDatabase(void);
76 
77  bool WriteDataBase( QMap<QString,QList<QVariant> > database);
78 
79 signals :
80  void signal_quit();
81  void signal_databaseChanged();
82 private :
83  signals:
84  void signal_storeValue();
85 
86 
87 private slots:
88  void slot_storeValue();
89 
90 
91 };
92 
93 #endif // RESIDENT_H
static VremList toVremList(VremVArray i1)
returns it a QList
Definition: memoryheap.cpp:224
The RecursiveLock class Allows a recursive read write lock to occur.
Definition: platform_global.h:113
The Resident class.
Definition: resident.h:32