LSSTApplications
10.0+286,10.0+36,10.0+46,10.0-2-g4f67435,10.1+152,10.1+37,11.0,11.0+1,11.0-1-g47edd16,11.0-1-g60db491,11.0-1-g7418c06,11.0-2-g04d2804,11.0-2-g68503cd,11.0-2-g818369d,11.0-2-gb8b8ce7
LSSTDataManagementBasePackage
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
home
lsstsw
stack
Linux64
base
11.0
include
lsst
base
ModuleImporter.h
Go to the documentation of this file.
1
// -*- lsst-c++ -*-
2
/*
3
* LSST Data Management System
4
* Copyright 2008-2013 LSST Corporation.
5
*
6
* This product includes software developed by the
7
* LSST Project (http://www.lsst.org/).
8
*
9
* This program is free software: you can redistribute it and/or modify
10
* it under the terms of the GNU General Public License as published by
11
* the Free Software Foundation, either version 3 of the License, or
12
* (at your option) any later version.
13
*
14
* This program is distributed in the hope that it will be useful,
15
* but WITHOUT ANY WARRANTY; without even the implied warranty of
16
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
* GNU General Public License for more details.
18
*
19
* You should have received a copy of the LSST License Statement and
20
* the GNU General Public License along with this program. If not,
21
* see <http://www.lsstcorp.org/LegalNotices/>.
22
*/
23
#ifndef LSST_BASE_ModuleImporter_h_INCLUDED
24
#define LSST_BASE_ModuleImporter_h_INCLUDED
25
33
#include <string>
34
35
#include "boost/noncopyable.hpp"
36
37
namespace
lsst {
namespace
base {
38
48
class
ModuleImporter
:
private
boost::noncopyable {
49
public
:
50
52
static
bool
import
(std::string
const
&
name
);
53
54
protected
:
55
56
ModuleImporter
() {}
57
58
virtual
bool
_import
(std::string
const
&
name
)
const
= 0;
59
60
virtual
~ModuleImporter
() {}
61
62
private
:
63
64
friend
void
installPythonModuleImporter
();
65
66
static
void
install
(
ModuleImporter
const
* importer);
67
68
};
69
70
}}
// namespace lsst::base
71
72
#endif // !LSST_BASE_ModuleImporter_h_INCLUDED
lsst.base::ModuleImporter
Base class that defines an interface for importing Python modules.
Definition:
ModuleImporter.h:48
name
table::Key< std::string > name
Definition:
ApCorrMap.cc:71
lsst.base::ModuleImporter::_import
virtual bool _import(std::string const &name) const =0
lsst.base::ModuleImporter::ModuleImporter
ModuleImporter()
Definition:
ModuleImporter.h:56
lsst.base::ModuleImporter::~ModuleImporter
virtual ~ModuleImporter()
Definition:
ModuleImporter.h:60
lsst.base::ModuleImporter::installPythonModuleImporter
friend void installPythonModuleImporter()
lsst.base::ModuleImporter::install
static void install(ModuleImporter const *importer)
Definition:
ModuleImporter.cc:53
Generated on Thu Sep 24 2015 02:29:18 for LSSTApplications by
1.8.5