The idea of the Nimue API component is to allow the integration of the Nimues non GUI parts into third-party Java or non Java applications. This component is not yet implemented. Only some ideas for specification is presented.
If the third-party application is written with .NET a corresponding stub cauld be generated, e.g by tools like juggernet.
The DataBase API is used, if a third party data aquisition software wants to save measured trials data in the establised convention of session folders. This is the requirement to process the sessions by Nimue-Platform based Applications or via the Project API. The following code fragment shows how a third-party Java application could access the DataBase API:
File dataBaseFolder;In the default configuration all data is saved in the .d3d format but of course all other formats like .c3d can be made available.
// The data base configuration includes information about the structure of the metadata and the file formats to save
// the trials data
XMLDocument dataBaseConfiguration;
NimueDataBase dataBase = new NimueDataBase(dataBaseFolder, dataBaseConfiguration);
// relative folder name
String sessionFolderName;
NimueSession session = dataBase.createSession(sessionFolderName)
XMLElement metaData;
// create the trials metadata xml file (equivalent to Vicons .enf files)
iNimueTrial trial = session.createTrial(metaData);
ByteBuffer data;
String mimeType=""
trial.createDataFile(data,mimeType);
trial.save();
The Project API is used, if a third party application wants to process sessions by a fix project (biomechanical model).
File projectDefFolder;
NimueProject p = new NimueProject(projectDefFolder);
iNimueProcessListener listener;
p.addEventListener(listener);
File sessionFolder;
p.process(sessionFolder);
- The default behavoir of the normal data determination results in a .d3d file written in the projects normdata folder. This must be overwritten for the API use, because we assume that the project folder is shipped with the third-party application in the System folder ,where the user has no write access.
- The specification and the implementation of the DataBase description XML file is not complete. We need more flexiblity and it must be analysed, if an implementation based on the Java Content Repository API is possible. This could allow for version control.
- Creation and save of .c3d files is not implemented yet.