LSSTApplications  17.0+11,17.0+34,17.0+56,17.0+57,17.0+59,17.0+7,17.0-1-g377950a+33,17.0.1-1-g114240f+2,17.0.1-1-g4d4fbc4+28,17.0.1-1-g55520dc+49,17.0.1-1-g5f4ed7e+52,17.0.1-1-g6dd7d69+17,17.0.1-1-g8de6c91+11,17.0.1-1-gb9095d2+7,17.0.1-1-ge9fec5e+5,17.0.1-1-gf4e0155+55,17.0.1-1-gfc65f5f+50,17.0.1-1-gfc6fb1f+20,17.0.1-10-g87f9f3f+1,17.0.1-11-ge9de802+16,17.0.1-16-ga14f7d5c+4,17.0.1-17-gc79d625+1,17.0.1-17-gdae4c4a+8,17.0.1-2-g26618f5+29,17.0.1-2-g54f2ebc+9,17.0.1-2-gf403422+1,17.0.1-20-g2ca2f74+6,17.0.1-23-gf3eadeb7+1,17.0.1-3-g7e86b59+39,17.0.1-3-gb5ca14a,17.0.1-3-gd08d533+40,17.0.1-30-g596af8797,17.0.1-4-g59d126d+4,17.0.1-4-gc69c472+5,17.0.1-6-g5afd9b9+4,17.0.1-7-g35889ee+1,17.0.1-7-gc7c8782+18,17.0.1-9-gc4bbfb2+3,w.2019.22
LSSTDataManagementBasePackage
Static Public Member Functions | Protected Member Functions | List of all members
lsst::base::PythonModuleImporter Class Reference
Inheritance diagram for lsst::base::PythonModuleImporter:
lsst::base::ModuleImporter

Static Public Member Functions

static ModuleImporter const * get ()
 
static bool import (std::string const &name)
 Import the given Python module, and return true if successful. More...
 

Protected Member Functions

virtual bool _import (std::string const &name) const
 

Detailed Description

Definition at line 30 of file lsstcppimport.cc.

Member Function Documentation

◆ _import()

bool lsst::base::PythonModuleImporter::_import ( std::string const &  name) const
protectedvirtual

Implements lsst::base::ModuleImporter.

Definition at line 44 of file lsstcppimport.cc.

44  {
45  PyObject* mod = PyImport_ImportModule(name.c_str());
46  if (mod) {
47  Py_DECREF(mod);
48  return true;
49  } else {
50  // If the Python C API call returned a null pointer, it will
51  // also have set an exception. We don't want that, because
52  // this isn't necessarily an error (that's up to the caller).
53  PyErr_Clear();
54  }
55  return false;
56 }

◆ get()

static ModuleImporter const* lsst::base::PythonModuleImporter::get ( )
inlinestatic

Definition at line 32 of file lsstcppimport.cc.

32  {
33  static PythonModuleImporter const instance;
34  return &instance;
35  }

◆ import()

bool lsst::base::ModuleImporter::import ( std::string const &  name)
staticinherited

Import the given Python module, and return true if successful.

Definition at line 49 of file ModuleImporter.cc.

49  {
50  return getImporterSingleton()->_import(name);
51 }

The documentation for this class was generated from the following file: