Skip to main content

Post-processing tools 2024 R1

Available APIs

Last update: 16.07.2025

Available APIs

Using the C Writer API

The main header for the C Client Writer API is in dynamic_visualization_store_api.h. At the top of the API header is a brief overview of the order to make the calls in. The methods are all documented here as well.

A full example of using the API can be found in test_dvs_client.c. See the "Simple Demo" section for running this application. A pre-built binary for the test_dvs_client can be found in the linux_2.6_64 or win64 sub folders of the dvs directory.

A pre-built library (libdvsapi.*) to link against for windows and linux can be found under: [InstallDir]/vXXX/CEI/ensightXXX/src/readers/dvs/[ARCH] where arch will be win64 or linux_2.6_64 based on your current os (XXX refers to the version number, i.e. 211, 212 etc.). Just include the dynamic_visualization_store_api.h header and link to the library and away you go.

Using the C++ Writer API

The main header for the C++ Client Writer API is in the dvs_client_interface.h. To create an instance of the DVS::IClient class use the factory method DVS::CREATE_CLIENT_INSTANCE(). This instance should be destroyed via DVS::DESTROY_CLIENT_INSTANCE(). An example using this API is in test_dvs_client_cxx.cpp.

The C++ server API is in dvs_server_interface.h. To create an instance of the DVS::IServer class use the factory method DVS::CREATE_SERVER_INSTANCE(). This instance should be destroyed using DVS::DESTROY_SERVER_INSTANCE().An example using this API is in test_dvs_client_cxx.cpp.

A pre-built library (libdvsapi.*) to link against for windows and linux can be found under: [InstallDir]/vXXX/CEI/ensightXXX/src/readers/dvs/[ARCH] where arch will be win64 or linux_2.6_64 based on your current os (XXX refers to the version number, i.e. 211, 212 etc.). Just include the appropriate headers and link to the library and away you go.

Using the Python Writer API

A prebuilt library for Python3 exists for Windows ([InstallDir]/vXXX/CEI/apexXXX/machines/win64/Python-3.7.4/DLLs/dynamic_visualization_store.pyd) and Linux ([InstallDir]/vXXX/CEI/apexXXX/machines/linux_2.6_64/Python-3.7.4/lib/python3.7/dynamic_visualization_store.so). You will also need the libdvsapi library along side it (located [InstallDir]/vXXX/CEI/ensightXXX/src/readers/dvs/[ARCH]/libdvsapi.*). XXX refers to the version number, i.e. 211, 212 etc.

A simple example in python using this module is in the source code for test_dvs_client_simple.py.

Using the C++ Reader API

The main header for the C++ Reader API is the dvs_query_interface.h. To create an instance of the DVS::IQuery class use the factory method DVS::CREATE_QUERY_INSTANCE(). An example using this API is in test_dvs_reader.cpp.

A pre-built library (libdvsapi.*) to link against for windows and linux can be found under: [InstallDir]/vXXX/CEI/ensightXXX/src/readers/dvs/[ARCH] where arch will be win64 or linux_2.6_64 based on your current os (XXX refers to the version number, i.e. 211, 212 etc.). Just include the appropriate headers and link to the library and away you go.

Using the Python Reader API

A prebuilt library for Python3 exists for Windows ([InstallDir]/vXXX/CEI/apexXXX/machines/win64/Python-3.7.4/DLLs/dynamic_visualization_store.pyd) and Linux ([InstallDir]/vXXX/CEI/apexXXX/machines/linux_2.6_64/Python-3.7.4/lib/python3.7/dynamic_visualization_store.so). You will also need the libdvsapi library along side it (located [InstallDir]/vXXX/CEI/ensightXXX/src/readers/dvs/[ARCH]/libdvsapi.*). XXX refers to the version number, i.e. 211, 212 etc.

A simple example in python using this module is in the source code for test_dvs_python_reader_api.py.

Using the .proto file

If you have need for use of the API in a language other than C++/C/Python the dynamic_visualization_store.proto file is included so you can auto gen code to talk to the EnSight server's via GRPC. For now it isn't recommended since the it's not yet well documented and there are a lot of free benefits for using the already developed clients such as automatic logging, data-deduplication and auto-reconnect if the postprocessor is such down or restarted for any reason.

If you have need to use GRPC in another language please contact the EnSight team and we can provide more guidance on the .proto GRPC calls.


Connect with Ansys