File TradeStudyPlugIn.odl
Last update: 30.07.2026Location: ModelCenter/src/InterfaceDLL_TradeStudyPlugIn/TradeStudyPlugIn.odl
Classes
- TradeStudyPlugIn::ITradeStudyPlugIn
- TradeStudyPlugIn::ITradeStudyPlugIn2
- TradeStudyPlugIn::ITradeStudyCallback
- TradeStudyPlugIn::ITradeStudy3JobInfo
- TradeStudyPlugIn::ITradeStudy3JobResult
- TradeStudyPlugIn::IVariableMetaDataProvider
- TradeStudyPlugIn::ITradeStudy3JobManager
- TradeStudyPlugIn::ITradeStudyPlugIn3
- TradeStudyPlugIn::IWindowed
- TradeStudyPlugIn::ICombinedPlugIn
- TradeStudyPlugIn::TradeStudyPlugIn
- TradeStudyPlugIn::TradeStudyPlugIn2
Namespaces
Source
// TradeStudyPlugIn.odl : type library source for TradeStudyPlugIn.dll
// This file will be processed by the MIDL compiler to produce the
// type library (TradeStudyPlugIn.tlb).
[ uuid(A4C1DA09-6913-465B-BC86-9A7364881DF8), version(1.0) ]
library TradeStudyPlugIn
{
importlib("stdole32.tlb");
importlib("stdole2.tlb");
// Primary dispatch interface for PHXCOMTradeStudyPlugIn
[ uuid(23C63C08-4BC7-4153-B89F-706D8BDCB3ED) ]
dispinterface ITradeStudyPlugIn
{
properties:
// NOTE - ClassWizard will maintain property information here.
// Use extreme caution when editing this section.
//{{AFX_ODL_PROP(PHXCOMTradeStudyPlugIn)
//}}AFX_ODL_PROP
methods:
// NOTE - ClassWizard will maintain method information here.
// Use extreme caution when editing this section.
//{{AFX_ODL_METHOD(PHXCOMTradeStudyPlugIn)
[id(1)] void construct(IDispatch* modelCenter, IDispatch* addToModel, [defaultvalue(NULL)]IDispatch* dataCollector);
[id(2)] boolean show();
[id(3)] BSTR toString();
[id(4)] void fromString(BSTR setupString);
//}}AFX_ODL_METHOD
};
// -------------------------------------------------------------- ITradeStudyPlugIn2
[uuid(5C569D84-899F-4403-BFAD-C851E1B874C7)]
dispinterface ITradeStudyPlugIn2
{
#ifndef DOXYGEN_SHOULD_SKIP_THIS
properties:
#else
methods:
#endif
// our properties
[id(5)] LPDISPATCH TradeStudyCallback;
[id(9)] boolean saveAllAnalyzerVariables;
methods:
// inherited from ITradeStudyPlugIn
[id(1)] void construct(IDispatch* modelCenter, IDispatch* addToModel, [defaultvalue(NULL)]IDispatch* dataCollector);
[id(2)] boolean show();
[id(3)] BSTR toString();
[id(4)] void fromString(BSTR setupString);
[id(6)] void onEnd();
[id(7)] void addAnalyzerVariable(BSTR formula, [optional]VARIANT analyzerName);
[id(8)] void clearAnalyzerVariables();
};
// Primary dispatch interface for CPHXTradeStudyCallbackCtrl
[ uuid(1834107A-299F-4D83-AECA-D2563D2E1FFB),
helpstring("Dispatch interface for PHXTradeStudyCallback control") ]
dispinterface ITradeStudyCallback
{
properties:
// NOTE - ClassWizard will maintain property information here.
// Use extreme caution when editing this section.
//{{AFX_ODL_PROP(CPHXTradeStudyCallbackCtrl)
// add property definitions here
//}}AFX_ODL_PROP
methods:
// NOTE - ClassWizard will maintain method information here.
// Use extreme caution when editing this section.
//{{AFX_ODL_METHOD(CPHXTradeStudyCallbackCtrl)
[id(1)] void dataCollectorCreated(LPDISPATCH tradeStudy, LPDISPATCH dataCollector);
[id(2)] BOOL runStarting(LPDISPATCH tradeStudy);
[id(3)] void runEnded(LPDISPATCH tradeStudy);
[id(4)] void tradeStudyClosed(LPDISPATCH tradeStudy);
//}}AFX_ODL_METHOD
};
// -------------------------------------------------------------- ITradeStudyPlugIn3
[uuid(BE014673-9D1E-457E-819E-CA9B584269FF)]
dispinterface ITradeStudy3JobInfo
{
properties:
methods:
[id(1), propget] long numRuns();
[id(2), propget] long numVariables();
[id(3)] BSTR getVariableEquation(long index);
[id(4)] BSTR getVariableDisplayName(long index);
[id(5)] boolean isDesignVariable(VARIANT which);
[id(6)] boolean isInput(VARIANT which);
};
[uuid(AAE6E030-AF5F-4237-B586-F40B367DBAFA)]
dispinterface ITradeStudy3JobResult
{
properties:
methods:
[id(1), propget] long numRuns();
[id(2), propget] long numVariables();
[id(3)] BSTR getVariableEquation(long index);
[id(4)] BSTR getVariableDisplayName(long index);
[id(5)] boolean isDesignVariable(VARIANT which);
[id(6)] boolean isInput(VARIANT which);
[id(101), propget] LPDISPATCH dataHistory();
[id(102), propget] boolean isRunning();
[id(103), propget] boolean isCanceled();
[id(106)] void cancelAsync();
[id(107)] void waitForCompletion();
};
[uuid(674CAFFE-3423-4F16-BD44-B7EC0C9C3AD2)]
dispinterface IVariableMetaDataProvider
{
#ifndef DOXYGEN_SHOULD_SKIP_THIS
properties:
#else
methods:
#endif
methods:
[id(1)] LPDISPATCH getVariableMetaData(BSTR fullName);
[id(2)] SAFEARRAY(IDispatch*) getAllVariableMetaData(BSTR path);
};
[uuid(06AEC424-37AE-4E36-BA60-37D68696A201)]
dispinterface ITradeStudy3JobManager
{
#ifndef DOXYGEN_SHOULD_SKIP_THIS
properties:
#else
methods:
#endif
[id(100)] LPDISPATCH dataHistory;
[id(101)] boolean validateAll;
[id(102)] boolean runInParallel;
[id(103)] long numThreads;
methods:
[id(1), propget] long numRuns();
[id(2), propget] long numVariables();
[id(3)] BSTR getVariableEquation(long index);
[id(4)] BSTR getVariableDisplayName(long index);
[id(5)] boolean isDesignVariable(VARIANT which);
[id(6)] boolean isInput(VARIANT which);
[id(104), propget] boolean supportsParallelExecution();
[id(105), propget] boolean canNewJob();
[id(106)] void newJob(long numRuns);
[id(107)] void clear();
[id(108)] void addVariable(BSTR equation, BSTR displayName, boolean isInput);
[id(109)] void setInput(long runIndex, VARIANT which, VARIANT value);
[id(110)] void setRunInputs(long runIndex, SAFEARRAY(VARIANT) values, [optional] SAFEARRAY(VARIANT) which);
[id(111)] void setVariableInputs(VARIANT which, SAFEARRAY(VARIANT) values, [optional] SAFEARRAY(long) runIndices);
[id(112)] ITradeStudy3JobResult* runJobAsync();
[id(113)] IVariableMetaDataProvider* getMetaDataProvider();
};
[uuid(5ED31B61-8BE7-41AC-A278-1CA8EC7B945D)]
dispinterface ITradeStudyPlugIn3
{
#ifndef DOXYGEN_SHOULD_SKIP_THIS
properties:
#else
methods:
#endif
// inherited from ITradeStudyPlugIn2
[id(5)] LPDISPATCH TradeStudyCallback;
[id(9)] boolean saveAllAnalyzerVariables;
[id(10)] ITradeStudy3JobManager* jobManager;
methods:
// inherited from ITradeStudyPlugIn2
[id(1)] void construct(IDispatch* modelCenter, IDispatch* addToModel, [defaultvalue(NULL)]IDispatch* dataCollector);
[id(2)] boolean show();
[id(3)] BSTR toString();
[id(4)] void fromString(BSTR setupString);
[id(6)] void onEnd();
[id(7)] void addAnalyzerVariable(BSTR formula, [optional]VARIANT analyzerName);
[id(8)] void clearAnalyzerVariables();
};
[uuid(4DE940EF-A810-4AEC-A8B9-EC1502F902E2)]
dispinterface IWindowed
{
properties:
methods:
[id(1)] boolean closeWindow();
}
[uuid(B58D8757-0999-442B-838C-C581C67D35B1)]
dispinterface ICombinedPlugIn
{
properties:
methods:
};
// Class information for PHXCOMTradeStudyPlugIn
[ uuid(5412C8CE-AA4D-4D0F-8B67-EFE3E36A9D81) ]
coclass TradeStudyPlugIn
{
[default] dispinterface ITradeStudyPlugIn;
};
[ uuid(DB842003-DD05-4C82-BB76-C5646A94BE4D) ]
coclass TradeStudyPlugIn2
{
[default] dispinterface ITradeStudyPlugIn2;
};
/*
[ uuid(A31E0F7A-F5E9-4EE3-BF2F-CA67CB855CC6) ]
coclass TradeStudyCallback
{
[default] dispinterface ITradeStudyCallback;
};*/
//{{AFX_APPEND_ODL}}
//}}AFX_APPEND_ODL}}
};