00001 00002 // 00003 // pymodules 00004 // 00005 // Copyright (c) 2004 Bioware Copr. 00006 // 00007 // The source code included in this file is confidential, 00008 // secret, or propietary information of Bioware Corp. It 00009 // may not be used in whole or in part without express 00010 // written permission from Bioware Corp. 00011 // 00013 // 00017 // 00019 // 00020 // Created On: 11:12:2008 11:38 00021 // 00023 00024 #ifndef _PYMODULES_H 00025 #define _PYMODULES_H 00026 00027 #include <eclipseray/pymacros.h> 00028 00029 // ----------------------------------------------------------------------------- 00030 // Python modules 00031 // 00032 // Each one of these macros defines a set of python modules that are available 00033 // to extend our internal interpreter. The implementation of each module will 00034 // reside in a different file, most frequently the one that defines the related 00035 // object. See the documentation on each module for more information. 00036 // ----------------------------------------------------------------------------- 00037 00038 // ----------------------------------------------------------------------------- 00039 // Main application module 00040 // 00041 // Handles construction of root objects, and groups together all sub-libraries. 00042 // All libraries declared afterwards are added to this one. 00043 // Defined inside pythoninterface.cpp 00044 // ----------------------------------------------------------------------------- 00045 DECLARE_PYTHON_MODULE( aergia ) 00046 00047 // ----------------------------------------------------------------------------- 00048 // Lights 00049 // 00050 // Handles construction of lights 00051 // Defined in eclight.cpp 00052 // ----------------------------------------------------------------------------- 00053 DECLARE_PYTHON_MODULE( lights ) 00054 00055 // ----------------------------------------------------------------------------- 00056 // Materials 00057 // 00058 // Handles construction of different material types 00059 // Defined in ecmaterial.cpp 00060 // ----------------------------------------------------------------------------- 00061 DECLARE_PYTHON_MODULE( materials ) 00062 00063 // ----------------------------------------------------------------------------- 00064 // Geometry 00065 // 00066 // Handles construction of geometry types such as vectors, matrices, and 00067 // quaternions. We could use lists for all these, but any function receiving them 00068 // would have to perform type checks on all of their methods. 00069 // Defined in ecgeometry.cpp 00070 // ----------------------------------------------------------------------------- 00071 DECLARE_PYTHON_MODULE( geometry ) 00072 00073 // ----------------------------------------------------------------------------- 00074 // Surface integrators 00075 // 00076 // Construction of integrators of different kinds. 00077 // Defined in ecintegrator.cpp 00078 // ----------------------------------------------------------------------------- 00079 DECLARE_PYTHON_MODULE( integrators ) 00080 00081 // ----------------------------------------------------------------------------- 00082 // Errors 00083 // 00084 // Handles information about the current error state of the program. Allows to 00085 // query errors and get their properties. 00086 // Defined in utils.cpp 00087 // ----------------------------------------------------------------------------- 00088 DECLARE_PYTHON_MODULE( errors ) 00089 00090 00091 00092 00093 00094 #endif