Field3D
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
PluginLoader.h
Go to the documentation of this file.
1
//----------------------------------------------------------------------------//
2
3
/*
4
* Copyright (c) 2009 Sony Pictures Imageworks Inc
5
*
6
* All rights reserved.
7
*
8
* Redistribution and use in source and binary forms, with or without
9
* modification, are permitted provided that the following conditions
10
* are met:
11
*
12
* Redistributions of source code must retain the above copyright
13
* notice, this list of conditions and the following disclaimer.
14
* Redistributions in binary form must reproduce the above copyright
15
* notice, this list of conditions and the following disclaimer in the
16
* documentation and/or other materials provided with the
17
* distribution. Neither the name of Sony Pictures Imageworks nor the
18
* names of its contributors may be used to endorse or promote
19
* products derived from this software without specific prior written
20
* permission.
21
*
22
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
23
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
24
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
25
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
26
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
27
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
28
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
29
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
31
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
32
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
33
* OF THE POSSIBILITY OF SUCH DAMAGE.
34
*/
35
36
//----------------------------------------------------------------------------//
37
42
//----------------------------------------------------------------------------//
43
44
#ifndef _INCLUDED_Field3D_PluginLoader_H_
45
#define _INCLUDED_Field3D_PluginLoader_H_
46
47
#include <string>
48
#include <vector>
49
50
//----------------------------------------------------------------------------//
51
52
#include "
ns.h
"
53
54
FIELD3D_NAMESPACE_OPEN
55
56
//----------------------------------------------------------------------------//
57
// PluginLoader
58
//----------------------------------------------------------------------------//
59
66
//----------------------------------------------------------------------------//
67
68
class
PluginLoader
69
{
70
71
public
:
72
73
// Constructors --------------------------------------------------------------
74
76
PluginLoader
();
78
~PluginLoader
();
79
80
// Main methods --------------------------------------------------------------
81
83
static
void
loadPlugins
();
84
85
#if 0
86
87
bool
resolveGlobalsForPlugins(
const
char
*dso);
88
bool
getDso(
char
*cptr,
const
char
*dso, std::string &dsoPath);
89
#endif
90
91
private
:
92
93
// Private data members ------------------------------------------------------
94
96
static
std::vector<std::string>
ms_pluginsLoaded
;
97
98
};
99
100
//----------------------------------------------------------------------------//
101
// Utility functions
102
//----------------------------------------------------------------------------//
103
104
bool
getDirSos
(std::vector<std::string> &sos, std::string &dir);
105
106
//----------------------------------------------------------------------------//
107
108
FIELD3D_NAMESPACE_HEADER_CLOSE
109
110
//----------------------------------------------------------------------------//
111
112
#endif // Include guard
export
PluginLoader.h
Generated on Wed Jul 11 2012 19:20:04 for Field3D by
1.8.1.1