The Fib multimedia system
Fib is a system for storing multimedia data (like images or films).
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
cFibIndividual.h
Go to the documentation of this file.
1
/**
2
* @file cFibIndividual
3
* file name: cFibIndividual.h
4
* @author Betti Oesterholz
5
* @date 01.03.2010
6
* @mail webmaster@BioKom.info
7
*
8
* System: C++
9
*
10
* This header specifies a class for a fib -individal.
11
* Copyright (C) @c GPL3 2010 Betti Oesterholz
12
*
13
* This program is free software: you can redistribute it and/or modify
14
* it under the terms of the GNU General Public License (GPL) 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 General Public License
24
* along with this program. If not, see <http://www.gnu.org/licenses/>.
25
*
26
*
27
* This header specifies a class for a fib -individals.
28
* An individal is an central object on which the genetic algorithm
29
* (enviroment) works.
30
* It contains a fib -object with it's information.
31
*
32
*/
33
/*
34
History:
35
01.03.2010 Oesterholz created
36
*/
37
38
#ifndef ___C_FIB_INDIVIDUAL_H__
39
#define ___C_FIB_INDIVIDUAL_H__
40
41
#include "version.h"
42
43
#include "
cIndividual.h
"
44
45
#include "
cFibElement.h
"
46
47
namespace
enviroment{
48
namespace
fib{
49
50
51
class
cFibIndividual
:
public
cIndividual
{
52
53
protected
:
54
55
/**
56
* The fib -object which is represented by the individual.
57
*/
58
cFibElement
*
pFibObject
;
59
60
public
:
61
62
/**
63
* constructor
64
*
65
* @param pInFibObject the fib -object which is represented by the individual;
66
* this fib -object won't be copied but destructed when the individual is
67
* destructed if bInDeleteObjectOnDestruction is true
68
* @param inIndividalInfo the information for the individual
69
* @param bInDeleteObjectOnDestruction if true delete the object
70
* (pInObject) when the individual is deleted
71
*/
72
cFibIndividual
(
cFibElement
* pInFibObject,
const
cIndividualInfo
& inIndividalInfo,
73
bool
bInDeleteObjectOnDestruction=
true
);
74
75
/**
76
* constructor
77
* A copy of the contained fib individual is also done.
78
*
79
* @param fibIndividual the fib -individual to copy
80
*/
81
cFibIndividual
(
const
cFibIndividual
& fibIndividual );
82
83
/**
84
* destructor
85
* It deletes the objekt to the individual.
86
*/
87
virtual
~cFibIndividual
();
88
89
/**
90
* @return a pointer to the object which is represented by the individual
91
*/
92
virtual
cFibElement
*
getFibObject
();
93
94
/**
95
* @return a pointer to the object which is represented by the individual
96
*/
97
virtual
const
cFibElement
*
getFibObject
()
const
;
98
99
/**
100
* @return the name of this class
101
*/
102
virtual
string
getClassName
()
const
;
103
104
/**
105
* Comparisson on equal method for two cIndividual objects.
106
*
107
* @param individual the cIndividual to compare this
108
* idIndividualobject to
109
* @param checkIdentifiers if true (standradvalue) the identifiers will
110
* be checked allso, else not
111
* @return true if the cIndividual this object represents is
112
* equal to the cIndividual the given object individual
113
* represents
114
*/
115
virtual
bool
equal
(
const
cIndividual
&individual,
bool
checkIdentifiers=
true
)
const
;
116
117
/**
118
* This method clones this individual inclusive the containing object.
119
*
120
* @return a clone of this object
121
*/
122
virtual
cFibIndividual
*
clone
()
const
;
123
124
/**
125
* This method clones this individual inclusive the containing object.
126
*
127
* @return a clone of this object
128
* @param bCloneObject if true the object will be cloned and
129
* @see bInDeleteObjectOnDestruction will be set to true, if false
130
* the object won't be cloned and @see bInDeleteObjectOnDestruction
131
* will be set to false
132
*/
133
virtual
cFibIndividual
*
clone
(
bool
bCloneObject )
const
;
134
135
136
#ifdef TEST
137
protected
:
138
#endif
139
/**
140
* This method kills the individual, so it isn't living anymor.
141
*
142
* @see cIndividualInfo::isLiving()
143
* @see cIndividualInfo::bIsLiving
144
* @return true if the individal was killed, else false
145
*/
146
virtual
bool
kill
();
147
148
};
//end class cFibIndividual
149
150
151
};
//end namespace fib
152
};
//end namespace enviroment
153
154
#endif //___C_FIB_INDIVIDUAL_H__
155
156
157
158
159
160
161
enviroment.fib
incl
cFibIndividual.h
Generated on Thu Feb 14 2013 14:06:55 for The Fib multimedia system by
1.8.1