![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 00008 00009 #ifndef EDITORPLUGINEXTENSION_H_ 00010 #define EDITORPLUGINEXTENSION_H_ 00011 00012 #include <string> 00013 #include <vrfutil/version.h> 00014 00016 #define APPLICATION_VERSION DtVrfVersionNumber 00017 00018 #include "tmqt/pluginExtension.h" 00019 #include "vrfobjparam/cmpDescFact.h" 00020 #include "vrfobjparam/paramFact.h" 00021 00022 #define DtEditorInitializePluginFunction "DtInitializePlugin" 00023 #define DtEditorPostInitializePluginFunction "DtPostInitializePlugin" 00024 00026 00027 class DtEditorExtensionInterface 00028 { 00029 public: 00030 DtEditorExtensionInterface() {}; 00031 virtual ~DtEditorExtensionInterface() {}; 00032 00037 virtual void addController(const char* controllerName, const char* descriptorName, DtComponentDescriptorCreatorFcn fcn = NULL) = 0; 00038 virtual void addSensor(const char* sensorName, const char* descriptorName, DtComponentDescriptorCreatorFcn fcn = NULL) = 0; 00039 virtual void addActuator(const char* actuatorName, const char* descriptorName, DtComponentDescriptorCreatorFcn fcn = NULL) = 0; 00040 00043 virtual void addParameterType(const char* parameter, const char* parameterLike, DtSimObjectParametersCreatorFcn fcn) = 0; 00044 00060 00061 virtual void addUiElement(const char* elementContextBlock, const char* parameter, const char* placeNear, bool after = true) = 0; 00062 00063 00065 virtual DtTMApplication* app() = 0; 00066 }; 00067 00068 typedef bool (*DtEditorInitializePluginFcn)(DtEditorExtensionInterface* ext, DtPluginInformation&); 00069 typedef bool (*DtEditorPostInitializePluginFcn)(DtEditorExtensionInterface* ext, DtPluginInformation&); 00070 typedef bool (*DtEditorUnloadPluginFcn)(); 00071 typedef const char* (*DtEditorCompiledPluginVersionFcn)(); 00072 00081 //extern "C" { 00096 //} 00100 00101 #endif