Mercurial > hg > orthanc-python
comparison CodeAnalysis/Class.mustache @ 131:c55b0583084b
integration fix-leak->mainline
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 30 Aug 2023 11:52:45 +0200 |
parents | 65ec5597ec70 5643e97d9367 |
children | 71d305c29cfa |
comparison
equal
deleted
inserted
replaced
130:a3f77cf16396 | 131:c55b0583084b |
---|---|
103 Py_TYPE(self)->tp_free((PyObject *)self); | 103 Py_TYPE(self)->tp_free((PyObject *)self); |
104 } | 104 } |
105 {{/destructor}} | 105 {{/destructor}} |
106 | 106 |
107 | 107 |
108 // Actual implementation of the methods | |
109 {{#methods}} | |
110 static PyObject *sdk_{{class_name}}_{{c_function}}( | |
111 sdk_{{class_name}}_Object* self, PyObject *args) | |
112 { | |
113 PythonLock::LogCall("Calling method {{c_function}}() on object of class {{class_name}}"); | |
114 | |
115 if (self->object_ == NULL) | |
116 { | |
117 PyErr_SetString(PyExc_ValueError, "Invalid object"); | |
118 return NULL; | |
119 } | |
120 | |
121 {{> function_body}} | |
122 } | |
123 | |
124 {{/methods}} | |
125 | |
126 | |
127 static void Register{{class_name}}Class(PyObject* module) | 108 static void Register{{class_name}}Class(PyObject* module) |
128 { | 109 { |
129 sdk_{{class_name}}_Type.tp_new = PyType_GenericNew; | 110 sdk_{{class_name}}_Type.tp_new = PyType_GenericNew; |
130 sdk_{{class_name}}_Type.tp_flags = Py_TPFLAGS_DEFAULT; | 111 sdk_{{class_name}}_Type.tp_flags = Py_TPFLAGS_DEFAULT; |
131 sdk_{{class_name}}_Type.tp_doc = "Generated from Orthanc C class: {{class_name}}"; | 112 sdk_{{class_name}}_Type.tp_doc = "Generated from Orthanc C class: {{class_name}}"; |