The Fib multimedia system
Fib is a system for storing multimedia data (like images or films).
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
cVectorChecksum.h
Go to the documentation of this file.
1 /**
2  * @class cVectorChecksum
3  * file name: cVectorChecksum.h
4  * @author Betti Oesterholz
5  * @date 06.10.2009
6  * @mail webmaster@BioKom.info
7  *
8  * System: C++
9  *
10  * This class represents a checksumm -property -vector.
11  * Copyright (C) @c LGPL3 2009 Betti Oesterholz
12  *
13  * This program is free software: you can redistribute it and/or modify
14  * it under the terms of the GNU Lesser General Public License (LGPL) as
15  * published by the Free Software Foundation, either version 3 of the
16  * License, or any later version.
17  *
18  * This program is distributed in the hope that it will be useful,
19  * but WITHOUT ANY WARRANTY; without even the implied warranty of
20  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21  * GNU Lesser General Public License for more details.
22  *
23  * You should have received a copy of the GNU Lesser General Public License
24  * along with this program. If not, see <http://www.gnu.org/licenses/>.
25  *
26  *
27  * This class represents a checksum -property -vector of the
28  * Fib -multimedialanguage.
29  * It is a vector for checksum -properties.
30  *
31  */
32 /*
33 History:
34 06.10.2009 Oesterholz created
35 */
36 
37 #ifndef ___C_VECTOR_CHECKSUM_H__
38 #define ___C_VECTOR_CHECKSUM_H__
39 
40 
41 #include "cVectorProperty.h"
42 
43 namespace fib{
44 
45 
47 
48 friend class cRoot;
49 
50 public:
51 
52 
53  /**
54  * The constructor of the checksum -property -vector.
55  *
56  * @param pDefiningElement the Fib -element which
57  * defines/ uses the checksum -property -vector
58  */
59  cVectorChecksum( cFibElement * pDefiningElement = NULL );
60 
61  /**
62  * The copy constructor of the vector.
63  *
64  * @param vector the vector from which to copy the data
65  * @param definingFibElement the Fib -element which defines/ uses
66  * the new vector
67  */
68  cVectorChecksum( const cVectorChecksum & vector,
69  cFibElement *definingFibElement = NULL );
70 
71  /**
72  * The constructor for restoring a vector from an TinyXml element.
73  *
74  * @param pXmlNode a pointer to the TinyXml node the vector is stored in
75  * @param outStatus An reference to an integervalue where the errorvalue
76  * can be stored to.
77  * possible errorvalues are:
78  * - 0 loading successful
79  * - -1 loading error, invalid pXmlElement
80  * - -2 loading error, invalid data in pXmlElement
81  * - 1 loading warning, invalid data in pXmlElement, error could be corrected
82  * - 2 loading warning, invalid data in pXmlElement, maybe the loaded
83  * object is wrong
84  * @param liDefinedVariables a list with the defined variables for the
85  * to restore vector, every variable should have it's number
86  * (the number under which it is stored) as it's value
87  */
88  cVectorChecksum( const TiXmlElement * pXmlElement, intFib &outStatus,
89  list<cFibVariable*> & liDefinedVariables );
90 
91 
92  /**
93  * This method creates an instance of this vector type.
94  *
95  * @param pDefiningElement the Fib -propertyelement which
96  * defines/ uses the propertyvector
97  */
99  cFibElement * pDefiningElement = NULL ) const;
100 
101  /**
102  * Sets the variable of the iNumberElement'te vectorelement.
103  *
104  * @param iNumberElement the number of the element, where the variable is
105  * to set
106  * @param pVariable the variable to set
107  * @return true if the iNumberElement'te vectorelement is set to the
108  * given variable pVariable, else false
109  */
110  virtual bool setVariable( unsignedIntFib iNumberElement, cFibVariable *pVariable );
111 
112  /**
113  * This Method makes this vectorelements equal to the correspondending
114  * vectorelements of the given vector.
115  * The type of the vector and the number of elements won't be changed.
116  *
117  * @param vector the vector to copy
118  */
119  virtual cVectorChecksum & operator=( const cFibVector &vector );
120 
121 };//cVectorChecksum
122 }//namespace fib
123 
124 #endif //___C_VECTOR_CHECKSUM_H__
125 
126 
127 
128 
129 
130