Mercurial > hg > orthanc-python
comparison Sources/Autogenerated/sdk_OrthancPluginPixelFormat.impl.h @ 1:fef9a239df5c
adding auto-generated files
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 26 Mar 2020 18:50:10 +0100 |
parents | |
children | 23f3099bed47 |
comparison
equal
deleted
inserted
replaced
0:7ed502b17b8f | 1:fef9a239df5c |
---|---|
1 /** | |
2 * Python plugin for Orthanc | |
3 * Copyright (C) 2017-2020 Osimis S.A., Belgium | |
4 * | |
5 * This program is free software: you can redistribute it and/or | |
6 * modify it under the terms of the GNU Affero General Public License | |
7 * as published by the Free Software Foundation, either version 3 of | |
8 * the License, or (at your option) any later version. | |
9 * | |
10 * This program is distributed in the hope that it will be useful, but | |
11 * WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
13 * Affero General Public License for more details. | |
14 * | |
15 * You should have received a copy of the GNU Affero General Public License | |
16 * along with this program. If not, see <http://www.gnu.org/licenses/>. | |
17 **/ | |
18 | |
19 | |
20 typedef struct | |
21 { | |
22 PyObject_HEAD | |
23 } sdk_OrthancPluginPixelFormat_Object; | |
24 | |
25 | |
26 /** | |
27 * Static global structure => the fields that are beyond the last | |
28 * initialized field are set to zero. | |
29 * https://stackoverflow.com/a/11152199/881731 | |
30 **/ | |
31 static PyTypeObject sdk_OrthancPluginPixelFormat_Type = { | |
32 PyVarObject_HEAD_INIT(NULL, 0) | |
33 "orthanc.PixelFormat", /* tp_name */ | |
34 sizeof(sdk_OrthancPluginPixelFormat_Object), /* tp_basicsize */ | |
35 }; | |
36 | |
37 | |
38 void RegisterOrthancPluginPixelFormatEnumeration(PyObject* module) | |
39 { | |
40 sdk_OrthancPluginPixelFormat_Type.tp_new = PyType_GenericNew; | |
41 sdk_OrthancPluginPixelFormat_Type.tp_flags = Py_TPFLAGS_DEFAULT; | |
42 sdk_OrthancPluginPixelFormat_Type.tp_doc = "Generated from C enumeration OrthancPluginOrthancPluginPixelFormat"; | |
43 | |
44 sdk_OrthancPluginPixelFormat_Type.tp_dict = PyDict_New(); | |
45 | |
46 if (PyType_Ready(&sdk_OrthancPluginPixelFormat_Type) < 0) | |
47 { | |
48 OrthancPlugins::LogError("Cannot register Python enumeration: OrthancPluginPixelFormat"); | |
49 ORTHANC_PLUGINS_THROW_EXCEPTION(InternalError); | |
50 } | |
51 | |
52 /** | |
53 * Declare constants here (static members = class attributes) | |
54 * https://stackoverflow.com/a/8017906/881731 | |
55 * | |
56 * "Static and class methods can be defined in tp_methods by adding | |
57 * METH_STATIC or METH_CLASS to the ml_flags field of the | |
58 * PyMethodDef structure. This is equivalent to @staticmethod and | |
59 * @classmethod decorators." | |
60 * | |
61 * "Class attributes can be added by setting the tp_dict to a | |
62 * dictionary with these attributes before calling PyType_Ready() | |
63 * (in your module initialization function)." | |
64 **/ | |
65 | |
66 PyDict_SetItemString(sdk_OrthancPluginPixelFormat_Type.tp_dict, "GRAYSCALE8", PyLong_FromLong(1)); | |
67 PyDict_SetItemString(sdk_OrthancPluginPixelFormat_Type.tp_dict, "GRAYSCALE16", PyLong_FromLong(2)); | |
68 PyDict_SetItemString(sdk_OrthancPluginPixelFormat_Type.tp_dict, "SIGNED_GRAYSCALE16", PyLong_FromLong(3)); | |
69 PyDict_SetItemString(sdk_OrthancPluginPixelFormat_Type.tp_dict, "RGB24", PyLong_FromLong(4)); | |
70 PyDict_SetItemString(sdk_OrthancPluginPixelFormat_Type.tp_dict, "RGBA32", PyLong_FromLong(5)); | |
71 PyDict_SetItemString(sdk_OrthancPluginPixelFormat_Type.tp_dict, "UNKNOWN", PyLong_FromLong(6)); | |
72 PyDict_SetItemString(sdk_OrthancPluginPixelFormat_Type.tp_dict, "RGB48", PyLong_FromLong(7)); | |
73 PyDict_SetItemString(sdk_OrthancPluginPixelFormat_Type.tp_dict, "GRAYSCALE32", PyLong_FromLong(8)); | |
74 PyDict_SetItemString(sdk_OrthancPluginPixelFormat_Type.tp_dict, "FLOAT32", PyLong_FromLong(9)); | |
75 PyDict_SetItemString(sdk_OrthancPluginPixelFormat_Type.tp_dict, "BGRA32", PyLong_FromLong(10)); | |
76 PyDict_SetItemString(sdk_OrthancPluginPixelFormat_Type.tp_dict, "GRAYSCALE64", PyLong_FromLong(11)); | |
77 | |
78 Py_INCREF(&sdk_OrthancPluginPixelFormat_Type); | |
79 if (PyModule_AddObject(module, "PixelFormat", (PyObject *)&sdk_OrthancPluginPixelFormat_Type) < 0) | |
80 { | |
81 OrthancPlugins::LogError("Cannot register Python enumeration: OrthancPluginPixelFormat"); | |
82 Py_DECREF(&sdk_OrthancPluginPixelFormat_Type); | |
83 ORTHANC_PLUGINS_THROW_EXCEPTION(InternalError); | |
84 } | |
85 } |