Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
FWCore
PluginManager
src
SharedLibrary.cc
Go to the documentation of this file.
1
// -*- C++ -*-
2
//
3
// Package: PluginManager
4
// Class : SharedLibrary
5
//
6
// Implementation:
7
// <Notes on implementation>
8
//
9
// Original Author: Chris Jones
10
// Created: Thu Apr 5 15:30:15 EDT 2007
11
// $Id: SharedLibrary.cc,v 1.4 2011/08/24 12:28:53 eulisse Exp $
12
//
13
14
// system include files
15
#include <string>
/*needed by the following include*/
16
#include "Reflex/SharedLibrary.h"
17
18
// user include files
19
#include "
FWCore/PluginManager/interface/SharedLibrary.h
"
20
#include "
FWCore/Utilities/interface/Exception.h
"
21
22
namespace
edmplugin {
23
//
24
// constants, enums and typedefs
25
//
26
27
//
28
// static data member definitions
29
//
30
31
//
32
// constructors and destructor
33
//
34
SharedLibrary::SharedLibrary
(
const
boost::filesystem::path
& iName) :
35
library_(0),
36
path_
(iName)
37
{
38
std::auto_ptr<Reflex::SharedLibrary> lib(
new
Reflex::SharedLibrary(iName.string()));
39
if
( !lib->Load() ) {
40
throw
cms::Exception
(
"PluginLibraryLoadError"
)<<
"unable to load "
<<iName.string()<<
" because "
<<lib->Error();
41
}
42
library_
= lib.release();
43
}
44
45
// SharedLibrary::SharedLibrary(const SharedLibrary& rhs)
46
// {
47
// // do actual copying here;
48
// }
49
50
SharedLibrary::~SharedLibrary
()
51
{
52
delete
library_
;
53
}
54
55
//
56
// assignment operators
57
//
58
// const SharedLibrary& SharedLibrary::operator=(const SharedLibrary& rhs)
59
// {
60
// //An exception safe implementation is
61
// SharedLibrary temp(rhs);
62
// swap(rhs);
63
//
64
// return *this;
65
// }
66
67
//
68
// member functions
69
//
70
71
//
72
// const member functions
73
//
74
bool
75
SharedLibrary::symbol
(
const
std::string
& iSymbolName,
void
* & iSymbol)
const
76
{
77
return
library_
->Symbol(iSymbolName,iSymbol);
78
}
79
80
//
81
// static member functions
82
//
83
}
edmplugin::SharedLibrary::symbol
bool symbol(const std::string &iSymbolName, void *&iSymbol) const
Definition:
SharedLibrary.cc:75
SharedLibrary.h
edmplugin::SharedLibrary::~SharedLibrary
~SharedLibrary()
Definition:
SharedLibrary.cc:50
getHLTPrescaleColumns.path
list path
Definition:
getHLTPrescaleColumns.py:16
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:255
Exception.h
edm::hlt::Exception
error
Definition:
HLTenums.h:24
path_
std::string & path_
Definition:
PluginManager.cc:221
edmplugin::SharedLibrary::SharedLibrary
SharedLibrary(const boost::filesystem::path &iName)
Definition:
SharedLibrary.cc:34
edmplugin::SharedLibrary::library_
Reflex::SharedLibrary * library_
Definition:
SharedLibrary.h:54
Generated for CMSSW Reference Manual by
1.8.5