|
Gyoto
|
Class template to implement parts of the Gyoto::Object API. More...
#include <GyotoPython.h>
Public Member Functions | |
| Object (const Object &o) | |
| virtual void | set (std::string const &key, Value val) |
| virtual void | set (Property const &p, Value val) |
| virtual void | set (Property const &p, Value val, std::string const &unit) |
| virtual Value | get (std::string const &key) const |
| Value | get (Property const &p, std::string const &unit) const |
| Value | get (Property const &p) const |
| virtual int | setParameter (std::string name, std::string content, std::string unit) |
| virtual void | fillElement (Gyoto::FactoryMessenger *fmp) const |
| void | setParameters (Gyoto::FactoryMessenger *fmp) |
| virtual std::string | module () const |
| Return module_. | |
| virtual void | module (const std::string &) |
| Set module_ and import the Python module. | |
| virtual std::string | inlineModule () const |
| Return inline_module_. | |
| virtual void | inlineModule (const std::string &) |
| Set inline_module_ and import the Python module. | |
| virtual std::string | klass () const |
| Retrieve class_. | |
| virtual void | klass (const std::string &c) |
| Set class_ and instantiate the Python class. | |
| virtual std::vector< double > | parameters () const |
| Retrieve parameters_. | |
| virtual void | parameters (const std::vector< double > &) |
| Set parameters_ and send them to pInstance_. | |
| virtual bool | hasPythonProperty (std::string const &key) const |
| virtual void | setPythonProperty (std::string const &key, Value val) |
| virtual Value | getPythonProperty (std::string const &key) const |
| virtual int | pythonPropertyType (std::string const &key) const |
Protected Attributes | |
| std::string | module_ |
| Name of the Python module that holds the class. | |
| std::string | inline_module_ |
| Python source code for module that holds the class. | |
| std::string | class_ |
| Name of the Python class that we want to expose. | |
| std::vector< double > | parameters_ |
| Parameters that this class needs. | |
| PyObject * | pModule_ |
| Reference to the python module once it has been loaded. | |
| PyObject * | pInstance_ |
| Reference to the python instance once it has been instantiated. | |
| PyObject * | pProperties_ |
| Reference to the properties member. | |
| PyObject * | pSet_ |
| Reference to the (optional) Set method. | |
| PyObject * | pGet_ |
| Reference to the (optional) Get method. | |
Class template to implement parts of the Gyoto::Object API.
|
virtualinherited |
Return inline_module_.
Reimplemented in Gyoto::Spectrum::Python, Gyoto::Metric::Python, Gyoto::Astrobj::Python::Standard, and Gyoto::Astrobj::Python::ThinDisk.
|
virtualinherited |
Set inline_module_ and import the Python module.
Side effects:
Reimplemented in Gyoto::Spectrum::Python, Gyoto::Metric::Python, Gyoto::Astrobj::Python::Standard, and Gyoto::Astrobj::Python::ThinDisk.
|
virtualinherited |
Retrieve class_.
Reimplemented in Gyoto::Spectrum::Python, Gyoto::Metric::Python, Gyoto::Astrobj::Python::Standard, and Gyoto::Astrobj::Python::ThinDisk.
|
virtualinherited |
Set class_ and instantiate the Python class.
Sets pInstance_.
This generic implementation takes care of the common ground, but does not set 'this' or call parameters(parameters_). Therefore, all the derived classes should reimplement this method and at least call Python::Base::klass(c) and parameters(parameters_). Between the two is the right moment to check that the Python class implements the required API and to cache PyObject* pointers to class methods.
Reimplemented in Gyoto::Spectrum::Python, Gyoto::Metric::Python, Gyoto::Astrobj::Python::Standard, and Gyoto::Astrobj::Python::ThinDisk.
|
virtualinherited |
Return module_.
Reimplemented in Gyoto::Spectrum::Python, Gyoto::Metric::Python, Gyoto::Astrobj::Python::Standard, and Gyoto::Astrobj::Python::ThinDisk.
|
virtualinherited |
Set module_ and import the Python module.
Side effects:
Reimplemented in Gyoto::Spectrum::Python, Gyoto::Metric::Python, Gyoto::Astrobj::Python::Standard, and Gyoto::Astrobj::Python::ThinDisk.
|
virtualinherited |
Retrieve parameters_.
Reimplemented in Gyoto::Spectrum::Python, Gyoto::Metric::Python, Gyoto::Astrobj::Python::Standard, and Gyoto::Astrobj::Python::ThinDisk.
|
virtualinherited |
Set parameters_ and send them to pInstance_.
The parameters are sent to the class instance using the setitem method with numerical keys.
Reimplemented in Gyoto::Spectrum::Python, Gyoto::Metric::Python, Gyoto::Astrobj::Python::Standard, and Gyoto::Astrobj::Python::ThinDisk.
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |