]> SALOME platform Git repositories - modules/paravis.git/blob - src/Plugins/MEDReader/ParaViewPlugin/CMakeLists.txt
Salome HOME
9e5335a36e2a1d30e4e50df5698f891a3fe7f75f
[modules/paravis.git] / src / Plugins / MEDReader / ParaViewPlugin / CMakeLists.txt
1 # Copyright (C) 2010-2019  CEA/DEN, EDF R&D
2 #
3 # This library is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU Lesser General Public
5 # License as published by the Free Software Foundation; either
6 # version 2.1 of the License, or (at your option) any later version.
7 #
8 # This library is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 # Lesser General Public License for more details.
12 #
13 # You should have received a copy of the GNU Lesser General Public
14 # License along with this library; if not, write to the Free Software
15 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 #
17 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 #
19
20 INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_SOURCE_DIR}/../IO )
21
22 IF(PARAVIEW_BUILD_QT_GUI)
23
24   QT_WRAP_UIC(CLIENT_UI_SRCS
25     Resources/UI/MEDReaderVectorsWidget.ui
26     Resources/UI/MEDReaderTimeModeWidget.ui)
27
28   # create a plugin that implements an object panel for the reader
29   SET(SM_SRCS
30     vtkPVMetaDataInformation.cxx
31     ${PROJECT_SOURCE_DIR}/IO/vtkMEDReader.cxx
32     ${PROJECT_SOURCE_DIR}/IO/vtkExtractGroup.cxx
33     ${PROJECT_SOURCE_DIR}/IO/vtkELNOMeshFilter.cxx
34     ${PROJECT_SOURCE_DIR}/IO/vtkELNOSurfaceFilter.cxx
35     ${PROJECT_SOURCE_DIR}/IO/vtkELNOFilter.cxx
36     ${PROJECT_SOURCE_DIR}/IO/vtkExtractCellType.cxx
37     ${PROJECT_SOURCE_DIR}/IO/vtkMEDQuadraturePointsGenerator.cxx
38     )
39
40   SET(CLIENT_SRCS
41     pqExtractGroupFieldsWidget.cxx
42     pqAbstractFieldsWidget.cxx
43     VectBoolSpreadSheet.cxx
44     VectBoolWidget.cxx
45     pqMEDReaderGraphUtils.cxx
46     pqMEDReaderVectorsWidget.cxx
47     pqMEDReaderTimeModeWidget.cxx
48     pqMEDReaderReloadWidget.cxx
49     pqMEDReaderTimesFlagsWidget.cxx
50     pqMEDReaderFieldsWidget.cxx)
51
52   QT_WRAP_MOC(MOC_SRCS
53     pqExtractGroupFieldsWidget.h
54     pqAbstractFieldsWidget.h
55     VectBoolSpreadSheet.h
56     VectBoolWidget.h
57     pqMEDReaderVectorsWidget.h
58     pqMEDReaderTimeModeWidget.h
59     pqMEDReaderReloadWidget.h
60     pqMEDReaderTimesFlagsWidget.h
61     pqMEDReaderFieldsWidget.h)
62
63   ADD_PARAVIEW_PROPERTY_WIDGET(MEDREADER_TIMEMODE_IFACES MEDREADER_TIMEMODE_IFACE_SRCS
64     TYPE "MEDReaderTimeModeWidgetType"
65     CLASS_NAME pqMEDReaderTimeModeWidget)
66
67   ADD_PARAVIEW_PROPERTY_WIDGET(MEDREADER_RELOAD_IFACES MEDREADER_RELOAD_IFACE_SRCS
68     TYPE "MEDReaderReloadWidgetType"
69     CLASS_NAME pqMEDReaderReloadWidget)
70
71   ADD_PARAVIEW_PROPERTY_WIDGET(MEDREADER_VECTORS_IFACES MEDREADER_VECTORS_IFACE_SRCS
72     TYPE "MEDReaderVectorsWidgetType"
73     CLASS_NAME pqMEDReaderVectorsWidget)
74
75   ADD_PARAVIEW_PROPERTY_WIDGET(MEDREADER_TIMESFLAGS_IFACES MEDREADER_TIMESFLAGS_IFACE_SRCS
76     TYPE "MEDReaderTimesFlagsWidgetType"
77     CLASS_NAME pqMEDReaderTimesFlagsWidget)
78
79   ADD_PARAVIEW_PROPERTY_WIDGET(MEDREADER_FIELDS_IFACES MEDREADER_FIELDS_IFACE_SRCS
80     TYPE "MEDReaderFieldsWidgetType"
81     CLASS_NAME pqMEDReaderFieldsWidget)
82
83   ADD_PARAVIEW_PROPERTY_WIDGET(EXTRACTGROUP_FIELDS_IFACES EXTRACTGROUP_FIELDS_IFACES_SRCS
84     TYPE "ExtractGroupFieldsWidgetType"
85     CLASS_NAME pqExtractGroupFieldsWidget)
86
87   # create the med reader plugin itself
88   ADD_PARAVIEW_PLUGIN(MEDReaderPlugin "4.0"
89     SERVER_MANAGER_SOURCES ${SM_SRCS}
90     SERVER_MANAGER_XML Resources/MEDReaderServer.xml
91     GUI_INTERFACES
92       ${MEDREADER_TIMEMODE_IFACES}
93       ${MEDREADER_RELOAD_IFACES}
94       ${MEDREADER_TIMESFLAGS_IFACES}
95       ${MEDREADER_FIELDS_IFACES}
96       ${MEDREADER_VECTORS_IFACES}
97       ${EXTRACTGROUP_FIELDS_IFACES}
98     GUI_RESOURCES Resources/pqMEDReader.qrc
99     SOURCES
100       ${CLIENT_SRCS}
101       ${CLIENT_UI_SRCS}
102       ${MOC_SRCS}
103       ${MEDREADER_TIMEMODE_IFACE_SRCS}
104       ${MEDREADER_RELOAD_IFACE_SRCS}
105       ${MEDREADER_TIMESFLAGS_IFACE_SRCS}
106       ${MEDREADER_FIELDS_IFACE_SRCS}
107       ${MEDREADER_VECTORS_IFACE_SRCS}
108       ${EXTRACTGROUP_FIELDS_IFACES_SRCS}
109     )
110
111 ELSE(PARAVIEW_BUILD_QT_GUI)
112
113   # create the med reader plugin itself
114   ADD_PARAVIEW_PLUGIN(MEDReaderPlugin "4.0"
115     SERVER_MANAGER_SOURCES ${SM_SRCS}
116     SERVER_MANAGER_XML Resources/MEDReaderServer.xml
117     CS_KITS
118     # this is the same name as the name in module.cmake file IO
119     # directory.
120     vtkMEDReader
121     )
122
123 ENDIF(PARAVIEW_BUILD_QT_GUI)
124
125 TARGET_LINK_LIBRARIES(MEDReaderPlugin MEDLoaderForPV)
126
127 # Install
128 INSTALL(
129   TARGETS MEDReaderPlugin
130   RUNTIME DESTINATION lib/paraview
131   LIBRARY DESTINATION lib/paraview
132   ARCHIVE DESTINATION lib/paraview
133   )
134
135