EGSnrc C++ class library
Report PIRS-898 (2021)
Iwan Kawrakow, Ernesto Mainegra-Hing, Frederic Tessier, Reid Townson and Blake Walters
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Coding Examples
File List
File Members
egs++
egs_library.h
Go to the documentation of this file.
1
/*
2
###############################################################################
3
#
4
# EGSnrc egs++ library headers
5
# Copyright (C) 2015 National Research Council Canada
6
#
7
# This file is part of EGSnrc.
8
#
9
# EGSnrc is free software: you can redistribute it and/or modify it under
10
# the terms of the GNU Affero General Public License as published by the
11
# Free Software Foundation, either version 3 of the License, or (at your
12
# option) any later version.
13
#
14
# EGSnrc is distributed in the hope that it will be useful, but WITHOUT ANY
15
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
16
# FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for
17
# more details.
18
#
19
# You should have received a copy of the GNU Affero General Public License
20
# along with EGSnrc. If not, see <http://www.gnu.org/licenses/>.
21
#
22
###############################################################################
23
#
24
# Author: Iwan Kawrakow, 2005
25
#
26
# Contributors:
27
#
28
###############################################################################
29
*/
30
31
37
#ifndef EGS_LIBRARY_
38
#define EGS_LIBRARY_
39
40
#include "
egs_libconfig.h
"
41
42
class
EGS_PrivateLibrary;
43
52
class
EGS_EXPORT
EGS_Library
{
53
55
EGS_PrivateLibrary *pl;
56
57
public
:
58
69
EGS_Library
(
const
char
*lib_name,
const
char
*path = 0);
70
76
~
EGS_Library
();
77
84
bool
load();
85
92
void
*resolve(
const
char
*func);
93
100
bool
unload();
101
104
bool
isLoaded()
const
;
105
111
bool
autoUnload()
const
;
112
114
void
setUnload(
bool
u);
115
118
const
char
*libraryName()
const
;
119
122
const
char
*libraryFile()
const
;
123
136
static
void
*resolve(
const
char
*lname,
const
char
*func,
137
const
char
*path = 0);
138
};
139
140
#endif
EGS_EXPORT
#define EGS_EXPORT
Export symbols from the egspp library.
Definition:
egs_libconfig.h:90
EGS_Library
A class for dynamically loading shared libraries.
Definition:
egs_library.h:52
egs_libconfig.h
Defines the EGS_EXPORT and EGS_LOCAL macros.
Generated by
1.8.5