LSSTApplications  18.0.0+106,18.0.0+50,19.0.0,19.0.0+1,19.0.0+10,19.0.0+11,19.0.0+13,19.0.0+17,19.0.0+2,19.0.0-1-g20d9b18+6,19.0.0-1-g425ff20,19.0.0-1-g5549ca4,19.0.0-1-g580fafe+6,19.0.0-1-g6fe20d0+1,19.0.0-1-g7011481+9,19.0.0-1-g8c57eb9+6,19.0.0-1-gb5175dc+11,19.0.0-1-gdc0e4a7+9,19.0.0-1-ge272bc4+6,19.0.0-1-ge3aa853,19.0.0-10-g448f008b,19.0.0-12-g6990b2c,19.0.0-2-g0d9f9cd+11,19.0.0-2-g3d9e4fb2+11,19.0.0-2-g5037de4,19.0.0-2-gb96a1c4+3,19.0.0-2-gd955cfd+15,19.0.0-3-g2d13df8,19.0.0-3-g6f3c7dc,19.0.0-4-g725f80e+11,19.0.0-4-ga671dab3b+1,19.0.0-4-gad373c5+3,19.0.0-5-ga2acb9c+2,19.0.0-5-gfe96e6c+2,w.2020.01
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 32 of file cppimport.cc.

Member Function Documentation

◆ _import()

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

Implements lsst::base::ModuleImporter.

Definition at line 46 of file cppimport.cc.

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

◆ get()

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

Definition at line 34 of file cppimport.cc.

34  {
35  static PythonModuleImporter const instance;
36  return &instance;
37  }

◆ 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: