Ceetron Data Provider Framework
|
Copyright © 2020 by Ceetron AS
Ceetron Data Provider Framework is a framework for writing data providers that can be plugged into applications based on Ceetron 3D Components (C3DC). This includes Ceetron Analyzer Desktop and the RemoteModel server (CeeCloudServer) in Ceetron Cloud Components (C3). The same plugin can be used both in cloud and desktop.
The DataProvider enables the user to provide the following data based on a given ModelKey:
The DataProvider also supports communicating updated data to the host application. This is done via the pollForChanges() method which will be called at regular intervals by host applications that have polling support. This methods allows for notifying the host application that data has changed (using the CDPChangeNotifications interface), and the host will then ask for the updated data whenever needed.
The following modifications are supported:
To compile the framework, example plugins and example apps, we recommend using CMake. Download CMake.
To build and run the examples, please follow the steps below:
> cd Build
> cmake ../DataProvider
On Linux/mac, build the solution with:
> make
On Windows, open the project file and build with the selected compiler (e.g. Visual Studio).
The build step will build:
To run the test driver:
```bash cd ExampleApps/TestDriver/ ./TestDriver ../../ExamplePlugins/MinimalPlugin/cdp_MinimalPlugin MINIMAL ```
There are three steps to creating a DataProviderPlugin
The main file defines the plugin. You define a version and a method for creating the Factory. One file can contain many data providers. The initializeDataProviderPlugin
method is called by the host to initialize the provider(s).
Example: MinimalPlugin.cpp
The factory is responsible for instantiation and deletion of the DataProvider, providing information about the provider and checking if the provided ModelKey is supported by the provider. To create the factory, derive from CDPDataProviderFactory
and implement the 4 pure virtual methods.
Example: MinimalProviderFactory.h/cpp
The provider is where all the CAE data is communicated to the host. To create a provider, derive from CDPDataProvider and implement the 7 pure virtual methods.
Example: MinimalProvider.h/cpp
Data providers can be used with the RemoteModel server (CeeCloudServer). To load your data provider, set the C3_UG_DATA_PROVIDER_FOLDER
environment variable to point to the folder with your data provider. The CeeCloudServer will load all data providers in the specified folder. The data provider needs to comply to the following naming scheme:
cdp_{PROVIDER_NAME}.[dll|so|dylib]
Example:
cdp_MyDataProvider.dll (Windows), cdp_MyDataProvider.so (Linux)
The server will list the registered data providers when a file is opened.
To use your data provider with Ceetron Analyzer Desktop, define the environment variable CEE_DATA_PROVIDERS_FOLDER
to point to the folder where your data provider is located. Ceetron Analyzer will load all data providers in the specified folder. The data provider file needs to follow the same naming scheme as described above.
Polling of the data provider can be controlled by two settings in the Advanced pane of the Settings dialog:
Ceetron Data Provider framework supports most compilers on most platforms. It has been tested on:
First public release of Ceetron Data Provider Framework
By using this software, you agree to the Terms & Conditions for use of Ceetron Software as described in https://ceetron.com/licenses/developer-terms-and-conditions.
Ceetron AS, Innherredsveien 7, N-7014 Trondheim, NORWAY
URL: www.ceetron.com
Support: support@ceetron.com
All Rights Reserved. No part of this documentation or the accompanying source code shall be reproduced, stored in a retrieval system or transmitted by any means without written permission from the publisher.