aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside2/PySide2/Qt3DRender
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2017-11-15 14:15:16 +0100
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2018-01-31 07:39:55 +0000
commit5d458c258fbaf3b24ffa0132093be4d6af2f8dfd (patch)
treedd2ba904413810b704af5b122ee6c83f6e77d1ff /sources/pyside2/PySide2/Qt3DRender
parentc3f7967ff3699be8d68e00f875d01f526061166d (diff)
Add Qt3D
Task-number: PYSIDE-487 Change-Id: I17100eda57fbe5015b6c8ff531a3c62b22e8de95 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'sources/pyside2/PySide2/Qt3DRender')
-rw-r--r--sources/pyside2/PySide2/Qt3DRender/CMakeLists.txt147
-rw-r--r--sources/pyside2/PySide2/Qt3DRender/typesystem_3drender.xml243
2 files changed, 390 insertions, 0 deletions
diff --git a/sources/pyside2/PySide2/Qt3DRender/CMakeLists.txt b/sources/pyside2/PySide2/Qt3DRender/CMakeLists.txt
new file mode 100644
index 000000000..07bd3d89f
--- /dev/null
+++ b/sources/pyside2/PySide2/Qt3DRender/CMakeLists.txt
@@ -0,0 +1,147 @@
+project(Qt3DRender)
+
+set(Qt3DRender_SRC
+${Qt3DRender_GEN_DIR}/qt3drender_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_propertyreaderinterface_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qabstractfunctor_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qabstractlight_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qabstracttexture_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qabstracttextureimage_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qalphacoverage_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qalphatest_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qattribute_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qblendequation_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qblendequationarguments_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qbuffer_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qbuffercapture_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qbufferdatagenerator_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qcamera_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qcameralens_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qcameraselector_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qclearbuffers_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qclipplane_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qcolormask_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qcomputecommand_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qcullface_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qdepthtest_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qdirectionallight_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qdispatchcompute_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qdithering_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qeffect_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qenvironmentlight_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qfilterkey_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qframegraphnode_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qframegraphnodecreatedchangebase_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qfrontface_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qfrustumculling_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qgeometry_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qgeometryfactory_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qgeometryrenderer_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qgraphicsapifilter_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qlayer_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qlayerfilter_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qlevelofdetail_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qlevelofdetailboundingsphere_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qlevelofdetailswitch_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qmaterial_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qmemorybarrier_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qmesh_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qmultisampleantialiasing_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qnodepthmask_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qnodraw_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qobjectpicker_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qpaintedtextureimage_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qparameter_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qpickevent_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qpicktriangleevent_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qpickingsettings_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qpointlight_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qpointsize_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qpolygonoffset_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qrenderaspect_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qrendercapture_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qrendercapturereply_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qrenderpass_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qrenderpassfilter_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qrendersettings_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qrenderstate_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qrenderstateset_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qrendersurfaceselector_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qrendertarget_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qrendertargetoutput_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qrendertargetselector_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qsceneloader_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qscissortest_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qseamlesscubemap_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qshaderdata_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qshaderprogram_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qsortpolicy_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qspotlight_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qstencilmask_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qstenciloperation_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qstenciloperationarguments_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qstenciltest_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qstenciltestarguments_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtechnique_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtechniquefilter_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtexture1d_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtexture1darray_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtexture2d_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtexture2darray_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtexture2dmultisample_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtexture2dmultisamplearray_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtexture3d_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtexturebuffer_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtexturecubemap_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtexturecubemaparray_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtexturedata_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtexturegenerator_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtextureimage_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtextureimagedata_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtextureimagedatagenerator_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtextureloader_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtexturerectangle_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qtexturewrapmode_wrapper.cpp
+${Qt3DRender_GEN_DIR}/qt3drender_qviewport_wrapper.cpp
+# module is always needed
+${Qt3DRender_GEN_DIR}/qt3drender_module_wrapper.cpp)
+
+if (Qt53DRender_VERSION VERSION_EQUAL 5.10.0 OR Qt53DRender_VERSION VERSION_GREATER 5.10.0)
+ list(APPEND Qt3DRender_SRC
+ ${Qt3DRender_GEN_DIR}/qt3drender_qblitframebuffer_wrapper.cpp
+ ${Qt3DRender_GEN_DIR}/qt3drender_qlinewidth_wrapper.cpp
+ ${Qt3DRender_GEN_DIR}/qt3drender_qpicklineevent_wrapper.cpp
+ ${Qt3DRender_GEN_DIR}/qt3drender_qpickpointevent_wrapper.cpp
+ ${Qt3DRender_GEN_DIR}/qt3drender_qproximityfilter_wrapper.cpp
+ ${Qt3DRender_GEN_DIR}/qt3drender_qshaderprogrambuilder_wrapper.cpp
+)
+endif()
+
+set(Qt3DRender_include_dirs
+ ${Qt3DRender_SOURCE_DIR}
+ ${Qt3DRender_BINARY_DIR}
+ ${pyside2_SOURCE_DIR}
+ ${Qt5Core_INCLUDE_DIRS}
+ ${Qt5Gui_INCLUDE_DIRS}
+ ${SHIBOKEN_INCLUDE_DIR}
+ ${libpyside_SOURCE_DIR}
+ ${SHIBOKEN_PYTHON_INCLUDE_DIR}
+ ${QtCore_GEN_DIR}
+ ${QtGui_GEN_DIR}
+ ${Qt3DCore_GEN_DIR})
+
+set(Qt3DRender_libraries pyside2
+ ${SHIBOKEN_PYTHON_LIBRARIES}
+ ${SHIBOKEN_LIBRARY}
+ ${Qt53DRender_LIBRARIES})
+
+set(Qt3DRender_deps Qt3DCore)
+
+create_pyside_module(Qt3DRender
+ Qt3DRender_include_dirs
+ Qt3DRender_libraries
+ Qt3DRender_deps
+ Qt3DRender_SOURCE_DIR
+ Qt3DRender_SRC
+ ""
+ ${Qt3DRender_BINARY_DIR}/typesystem_3drender.xml)
diff --git a/sources/pyside2/PySide2/Qt3DRender/typesystem_3drender.xml b/sources/pyside2/PySide2/Qt3DRender/typesystem_3drender.xml
new file mode 100644
index 000000000..cfa332742
--- /dev/null
+++ b/sources/pyside2/PySide2/Qt3DRender/typesystem_3drender.xml
@@ -0,0 +1,243 @@
+<?xml version="1.0"?>
+<!--
+/****************************************************************************
+**
+** Copyright (C) 2017 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of PySide2.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 3 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL3 included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 3 requirements
+** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 2.0 or (at your option) the GNU General
+** Public license version 3 or any later version approved by the KDE Free
+** Qt Foundation. The licenses are as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-2.0.html and
+** https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+-->
+
+<typesystem package="PySide2.Qt3DRender">
+ <load-typesystem name="Qt3DCore/typesystem_3dcore.xml" generate="no"/>
+ <namespace-type name="Qt3DRender">
+ <object-type name="PropertyReaderInterface"/>
+ <object-type name="QAbstractFunctor"/>
+ <object-type name="QAbstractLight">
+ <enum-type name="Type"/>
+ </object-type>
+ <object-type name="QAbstractTexture">
+ <enum-type name="CubeMapFace"/>
+ <enum-type name="ComparisonFunction"/>
+ <enum-type name="ComparisonMode"/>
+ <enum-type name="Filter"/>
+ <enum-type name="Status"/>
+ <enum-type name="Target"/>
+ <enum-type name="TextureFormat"/>
+ </object-type>
+ <object-type name="QAbstractTextureImage">
+ <modify-function signature="QAbstractTextureImage(Qt3DCore::QNode*)" remove="all"/>
+ </object-type>
+ <object-type name="QAlphaCoverage"/>
+ <object-type name="QAlphaTest">
+ <enum-type name="AlphaFunction"/>
+ </object-type>
+ <object-type name="QAttribute">
+ <enum-type name="AttributeType"/>
+ <enum-type name="VertexBaseType"/>
+ </object-type>
+ <object-type name="QBlendEquation">
+ <enum-type name="BlendFunction"/>
+ </object-type>
+ <object-type name="QBlendEquationArguments">
+ <enum-type name="Blending"/>
+ </object-type>
+ <object-type name="QBlitFramebuffer" since="5.10"/>
+ <object-type name="QBuffer">
+ <enum-type name="AccessType"/>
+ <enum-type name="BufferType"/>
+ <enum-type name="UsageType"/>
+ </object-type>
+ <object-type name="QBufferCapture"/>
+ <object-type name="QBufferDataGenerator">
+ <modify-function signature="operator()()" remove="all"/>
+ </object-type>
+ <object-type name="QCamera">
+ <enum-type name="CameraTranslationOption"/>
+ </object-type>
+ <object-type name="QCameraLens">
+ <enum-type name="ProjectionType"/>
+ </object-type>
+ <object-type name="QCameraSelector"/>
+ <object-type name="QClearBuffers">
+ <enum-type name="BufferType"/>
+ </object-type>
+ <object-type name="QClipPlane"/>
+ <object-type name="QColorMask"/>
+ <object-type name="QComputeCommand"/>
+ <object-type name="QCullFace">
+ <enum-type name="CullingMode"/>
+ </object-type>
+ <object-type name="QDepthTest">
+ <enum-type name="DepthFunction"/>
+ </object-type>
+ <object-type name="QDirectionalLight"/>
+ <object-type name="QDispatchCompute"/>
+ <object-type name="QDithering"/>
+ <object-type name="QEffect"/>
+ <object-type name="QEnvironmentLight"/>
+ <object-type name="QFilterKey"/>
+ <object-type name="QFrameGraphNode"/>
+ <object-type name="QFrameGraphNodeCreatedChangeBase"/>
+ <object-type name="QFrontFace">
+ <enum-type name="WindingDirection"/>
+ </object-type>
+ <object-type name="QFrustumCulling"/>
+ <object-type name="QGeometry"/>
+ <object-type name="QGeometryFactory">
+ <modify-function signature="operator()()" remove="all"/>
+ </object-type>
+ <object-type name="QGeometryRenderer">
+ <enum-type name="PrimitiveType"/>
+ </object-type>
+ <object-type name="QGraphicsApiFilter">
+ <enum-type name="Api"/>
+ <enum-type name="OpenGLProfile"/>
+ </object-type>
+ <object-type name="QLayer"/>
+ <object-type name="QLayerFilter"/>
+ <object-type name="QLevelOfDetail">
+ <enum-type name="ThresholdType"/>
+ </object-type>
+ <object-type name="QLevelOfDetailBoundingSphere"/>
+ <object-type name="QLevelOfDetailSwitch"/>
+ <object-type name="QLineWidth" since="5.10"/>
+ <object-type name="QMaterial"/>
+ <object-type name="QMemoryBarrier">
+ <enum-type name="Operation"/>
+ </object-type>
+ <object-type name="QMesh"/>
+ <object-type name="QMultiSampleAntiAliasing"/>
+ <object-type name="QNoDepthMask"/>
+ <object-type name="QNoDraw"/>
+ <object-type name="QObjectPicker"/>
+ <object-type name="QPaintedTextureImage"/>
+ <object-type name="QParameter"/>
+ <object-type name="QPickEvent">
+ <enum-type name="Buttons"/>
+ <enum-type name="Modifiers"/>
+ </object-type>
+ <object-type name="QPickLineEvent" since="5.10"/>
+ <object-type name="QPickPointEvent" since="5.10"/>
+ <object-type name="QPickTriangleEvent"/>
+ <object-type name="QPickingSettings">
+ <enum-type name="FaceOrientationPickingMode"/>
+ <enum-type name="PickMethod"/>
+ <enum-type name="PickResultMode"/>
+ </object-type>
+ <object-type name="QPointLight"/>
+ <object-type name="QPointSize">
+ <enum-type name="SizeMode"/>
+ </object-type>
+ <object-type name="QPolygonOffset"/>
+ <object-type name="QProximityFilter" since="5.10"/>
+ <object-type name="QRenderAspect">
+ <enum-type name="RenderType"/>
+ </object-type>
+ <object-type name="QRenderCapture"/>
+ <object-type name="QRenderCaptureReply"/>
+ <object-type name="QRenderPass"/>
+ <object-type name="QRenderPassFilter"/>
+ <object-type name="QRenderSettings">
+ <enum-type name="RenderPolicy"/>
+ </object-type>
+ <object-type name="QRenderState"/>
+ <object-type name="QRenderStateSet"/>
+ <object-type name="QRenderSurfaceSelector"/>
+ <object-type name="QRenderTarget"/>
+ <object-type name="QRenderTargetOutput">
+ <enum-type name="AttachmentPoint"/>
+ </object-type>
+ <object-type name="QRenderTargetSelector"/>
+ <object-type name="QSceneLoader">
+ <enum-type name="Status"/>
+ <enum-type name="ComponentType"/>
+ </object-type>
+ <object-type name="QScissorTest"/>
+ <object-type name="QSeamlessCubemap"/>
+ <object-type name="QShaderData"/>
+ <object-type name="QShaderProgram">
+ <enum-type name="ShaderType"/>
+ <enum-type name="Status"/>
+ </object-type>
+ <object-type name="QShaderProgramBuilder" since="5.10"/>
+ <object-type name="QSortPolicy">
+ <enum-type name="SortType"/>
+ </object-type>
+ <object-type name="QSpotLight">
+ <modify-function signature="attenuation() const" remove="all"/>
+ </object-type>
+ <object-type name="QStencilMask"/>
+ <object-type name="QStencilOperation"/>
+ <object-type name="QStencilOperationArguments">
+ <enum-type name="FaceMode"/>
+ <enum-type name="Operation"/>
+ </object-type>
+ <object-type name="QStencilTest"/>
+ <object-type name="QStencilTestArguments">
+ <enum-type name="StencilFaceMode"/>
+ <enum-type name="StencilFunction"/>
+ </object-type>
+ <object-type name="QTechnique"/>
+ <object-type name="QTechniqueFilter"/>
+ <object-type name="QTexture1D"/>
+ <object-type name="QTexture1DArray"/>
+ <object-type name="QTexture2D"/>
+ <object-type name="QTexture2DArray"/>
+ <object-type name="QTexture2DMultisample"/>
+ <object-type name="QTexture2DMultisampleArray"/>
+ <object-type name="QTexture3D"/>
+ <object-type name="QTextureBuffer"/>
+ <object-type name="QTextureCubeMap"/>
+ <object-type name="QTextureCubeMapArray"/>
+ <object-type name="QTextureData"/>
+ <object-type name="QTextureGenerator">
+ <modify-function signature="QTextureGenerator()" remove="all"/>
+ </object-type>
+ <object-type name="QTextureImage">
+ <enum-type name="Status"/>
+ </object-type>
+ <object-type name="QTextureImageData"/>
+ <object-type name="QTextureImageDataGenerator">
+ <modify-function signature="QTextureImageDataGenerator()" remove="all"/>
+ </object-type>
+ <object-type name="QTextureLoader"/>
+ <object-type name="QTextureRectangle"/>
+ <object-type name="QTextureWrapMode">
+ <enum-type name="WrapMode"/>
+ </object-type>
+ <object-type name="QViewport"/>
+ </namespace-type>
+</typesystem>