UGDK
0.4.1
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
abstractloader.h
Go to the documentation of this file.
1
2
#ifndef UGDK_UTIL_GDD_ABSTRACTLOADER_H_
3
#define UGDK_UTIL_GDD_ABSTRACTLOADER_H_
4
5
namespace
ugdk {
6
7
namespace
gdd {
8
9
template
<
class
T>
10
class
DescriptionProtocol
;
11
12
template
<
class
T>
13
class
AbstractLoader
{
14
15
public
:
16
17
virtual
~AbstractLoader
() {
delete
protocol_; }
18
19
virtual
T*
Load
(
const
std::string& gddfile_path) = 0;
20
21
virtual
void
newData
(T* new_data) = 0;
22
23
virtual
T*&
data
() = 0;
24
25
virtual
void
cleanData
() = 0;
26
27
protected
:
28
29
DescriptionProtocol<T>
*
protocol
()
const
{
return
protocol_; }
30
31
AbstractLoader
(
DescriptionProtocol<T>
*
protocol
) : protocol_(protocol) {
32
protocol_->set_loader(
this
);
33
}
34
35
private
:
36
37
DescriptionProtocol<T>
*protocol_;
38
39
};
40
41
}
/* namespace gdd */
42
43
}
/* namespace ugdk */
44
45
#endif
/* UGDK_UTIL_GDD_ABSTRACTLOADER_H_ */
src
ugdk
util
gdd
abstractloader.h
Generated on Sat Oct 13 2012 02:25:11 for UGDK by
1.8.2