-
Notifications
You must be signed in to change notification settings - Fork 4
/
Factory.cpp
55 lines (46 loc) · 1.94 KB
/
Factory.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
/**********************************************************\
Auto-generated Factory.cpp
This file contains the auto-generated factory methods
for the IndexedDatabasePlugin project
\**********************************************************/
#include "FactoryBase.h"
#include "IndexedDatabasePlugin.h"
#include <boost/make_shared.hpp>
class PluginFactory : public FB::FactoryBase
{
public:
///////////////////////////////////////////////////////////////////////////////
/// @fn FB::PluginCorePtr createPlugin(const std::string& mimetype)
///
/// @brief Creates a plugin object matching the provided mimetype
/// If mimetype is empty, returns the default plugin
///////////////////////////////////////////////////////////////////////////////
FB::PluginCorePtr createPlugin(const std::string& mimetype)
{
return boost::make_shared<IndexedDatabasePlugin>();
}
///////////////////////////////////////////////////////////////////////////////
/// @see FB::FactoryBase::globalPluginInitialize
///////////////////////////////////////////////////////////////////////////////
void globalPluginInitialize()
{
IndexedDatabasePlugin::StaticInitialize();
}
///////////////////////////////////////////////////////////////////////////////
/// @see FB::FactoryBase::globalPluginDeinitialize
///////////////////////////////////////////////////////////////////////////////
void globalPluginDeinitialize()
{
IndexedDatabasePlugin::StaticDeinitialize();
}
};
///////////////////////////////////////////////////////////////////////////////
/// @fn getFactoryInstance()
///
/// @brief Returns the factory instance for this plugin module
///////////////////////////////////////////////////////////////////////////////
FB::FactoryBasePtr getFactoryInstance()
{
static boost::shared_ptr<PluginFactory> factory = boost::make_shared<PluginFactory>();
return factory;
}