STK AgAsHpopPluginSend comments on this topic.
Project Overview

Description

The HPOP Force Model plugin interfaces.

Classes

ObjectsDescription
AgAsDensityModelPluginAtmFluxLagsConfigDensityModel plugin class used to get/set AtmFluxLag values
AgAsDensityModelPluginSampleSample DensityModel Plugin Class
AgAsDensityModelPythonPluginThe implementation of IAgAsDensityModelPlugin for Python.
AgAsDensityModelResultDensityModel plugin class used to get settings during numerical integration events.
AgAsDensityModelResultEvalDensityModel plugin class used to get/set density settings during Evaluation call
AgAsDensityModelResultRegisterDensityModel plugin interface used to register parameters that may be estimated.
AgAsDragModelPluginSampleSample DragModel Plugin Class
AgAsDragModelPythonPluginThe implementation of IAgAsHpopPlugin for Python.
AgAsDragModelResultDragModel plugin class used to get/set particle reflection settings
AgAsDragModelResultEvalDragModel plugin class used to get/set particle reflection settings during Evaluation call
AgAsDragModelResultRegisterDragModel plugin interface used to register parameters that may be estimated.
AgAsEOMFuncPluginRegisterHandlerPlugin class used to register plugin's inputs and outputs
AgAsEOMFuncPluginSetIndicesHandlerPlugin class used to set plugin's indices
AgAsEOMFuncPluginStateVectorPlugin class used to get and set state values during propagation in plugin's calc method
AgAsEOMFuncPythonPluginThe implementation of IAgAsEOMFuncPlugin for Python.
AgAsHpopPluginResult

The CoClass for the IAgAsHpopPluginResult interface. Certain languages (like Visual Basic) use the coclass rather than the interface. They are functionally equivalent.



Several functions defined in IAgAsHpopPlugin pass this component as the lone argument. This component contains functions that allow the plugin component to access inputs and set outputs.

AgAsHpopPluginResultEval

The CoClass for the IAgAsHpopPluginResultEval interface. Certain languages (like Visual Basic) use the coclass rather than the interface. They are functionally equivalent.



This component is passed as the lone argument for the Evaluate() function of the plugin component. This component contains functions that allow the plugin component to access inputs and set outputs. More inputs and outputs are available than for AgAsHpopPluginResult.

AgAsHpopPluginResultPostEval

The CoClass for the IAgAsHpopPluginResultPostEval interface. Certain languages (like Visual Basic) use the coclass rather than the interface. They are functionally equivalent.



This component is passed as the lone argument for the PostEvaluate() function of the plugin component. This component contains functions that allow the plugin component to access inputs and set outputs. More inputs and outputs are available than for AgAsHpopPluginResult.

AgAsHpopPythonPluginThe implementation of IAgAsHpopPlugin for Python.
AgAsLightReflectionPluginSampleSample Light Reflection Plugin Class
AgAsLightReflectionPythonPluginThe implementation of IAgAsLightReflectionPlugin for Python.
AgAsLightReflectionResultLight reflection plugin class used to get/set reflection settings
AgAsLightReflectionResultEvalLight reflection plugin class used to get/set reflection settings during Evaluation call
AgAsLightReflectionResultRegisterLightReflection plugin interface used to register parameters that may be estimated.

Interfaces

ObjectsDescription
IAgAsDensityModelPluginDensity model plugin interface. A method returning false indicates an error.
IAgAsDensityModelPluginAtmFluxLagsDensity Model plugin interface that handles the getting/setting of AtmFluxLags
IAgAsDensityModelPluginExtendedExtends the IAgAsDensityModelPlugin interface for use with numerical integration events.
IAgAsDensityModelPluginSampleDensity model sample plugin
IAgAsDensityModelResultDensityModel plugin interface used to get settings during numerical integration events. Supports the IAgEpoch interface.
IAgAsDensityModelResultEvalDensityModel plugin interface used to get/set settings during evaluation. Supports the IAgEpoch interface.
IAgAsDensityModelResultRegisterDensityModel plugin interface used to register parameters that may be estimated.
IAgAsDragModelPluginThis interface is deprecated. Use IAgAsDragModelPlugin2 instead, follow the link to see new properties and methods. Used to set reflectance vector (and optionally its partial derivs) used in computation of the drag/lift/side force. A method returning false indicates an error.
IAgAsDragModelPlugin2Drag model plugin interface. Inherits from IAgAsDragModelPlugin, follow the link to see inherited properties and methods. Used to set reflectance vector (and optionally its partial derivs) used in computation of the drag/lift/side force. A method returning false indicates an error.
IAgAsDragModelPluginSampleDrag model sample plugin
IAgAsDragModelResultDragModel plugin interface used to get/set settings. Supports the IAgEpoch interface.
IAgAsDragModelResultEvalDragModel plugin interface used to get/set settings during evaluation. Used to set reflectance vector (and optionally its partial derivs) used in computation of the drag/lift/side force. Supports the IAgEpoch interface.
IAgAsDragModelResultRegisterDragModel plugin interface used to register parameters that may be estimated.
IAgAsEOMFuncPluginHPOP plugin engine interface for user-defined equations of motion.
IAgAsEOMFuncPluginRegisterHandlerEOM func plugin interface used to register the plugin's inputs, outputs, and events.
IAgAsEOMFuncPluginSetIndicesHandlerEOM func plugin interface used to set the indices of the plugin's input and output.
IAgAsEOMFuncPluginStateVectorState vector interface for EOM func plugins.
IAgAsHpopPlugin

A user implements this interface to create a COM component that can be called during the HPOP propagation.


The COM component can be created using compiled code (C++, C#, Visual Basic, etc.) or using a Windows Script Component created using a script language (VBScript, JScript, PerlScript, etc.). Each function of the interface must be implemented, though functions are not required to do anything other than return an error status (either true or false). Once created, the user must register the component in the Windows Registry. After creation and registration, the user may choose to use this plugin component during HPOP propagation (using the standard GUI interface).


The plugin component will be called at certain event times defined by the interface (see the members of the interface). During these calls, the component may request input values and set output values that can affect the computation. Inputs and outputs are accessed through an interface component (either IAgAsHpopPluginResult or IAgAsHpopPluginResultEval as defined by the interface function calls) . The interface component is sent to the plugin component as the lone argument to the function calls.

IAgAsHpopPluginResultSeveral functions defined in IAgAsHpopPlugin pass this component as the lone argument. This component contains functions that allow the plugin component to access inputs and set outputs.
IAgAsHpopPluginResultEvalThis component is passed as the lone argument for the Evaluate() function of the plugin component. This component contains functions that allow the plugin component to access inputs and set outputs. More inputs and outputs are available than for IAgAsHpopPluginResult.
IAgAsHpopPluginResultPostEval


This component is passed as the lone argument for the PostEvaluate() function of the plugin component. This component contains functions that allow the plugin component to access inputs and set outputs. More inputs and outputs are available than for IAgAsHpopPluginResult.


IAgAsLightReflectionPluginThis interface is deprecated. Use IAgAsLightReflectionPlugin2 instead, follow the link to see new properties and methods. Used to set reflectance vector (and optionally its partial derivs) used in computation of the srp force. A method returning false indicates an error.
IAgAsLightReflectionPlugin2Light Reflection plugin interface. Inherits from IAgAsLightReflectionPlugin, follow the link to see inherited properties and methods. Used to set reflectance vector (and optionally its partial derivs) used in computation of the srp force. A method returning false indicates an error.
IAgAsLightReflectionPluginSampleLight Reflection sample plugin
IAgAsLightReflectionResultLightReflection plugin interface used to get/set settings. Supports the IAgEpoch interface.
IAgAsLightReflectionResultEvalLightReflection plugin interface used to get/set settings during evaluation. Used to set reflectance vector (and optionally its partial derivs) used in computation of the srp force. Supports the IAgEpoch interface.
IAgAsLightReflectionResultRegisterLightReflection plugin interface used to register parameters that may be estimated.

Enumerations

EnumerationDescription
AgEAccelTypeEnumeration of contributions to the total force model acceleration
AgEAsDensityModelErrorCodesEnumeration of AgAsDensityModelPlugin General Error Codes
AgEAsDragModelErrorCodesEnumeration of AgAsDragModelPlugin General Error Codes
AgEAsEOMFuncPluginErrorCodesEnumeration of AgAsEOMFuncPlugin General Error Codes
AgEAsEOMFuncPluginEventTypesEnumeration of event types
AgEAsEOMFuncPluginInputStateValuesEnumeration of state vector input values
AgEAsEOMFuncPluginOutputStateValuesEnumeration of state vector output values
AgEAsHpopPluginErrorCodesError codes associated with the use of HPOP plugin interface components.
AgEAsHpopPluginEventIndicatorsEnumeration of AgAsHpopPlugin Event Indicators
AgEAsLightReflectionErrorCodesEnumeration of AgAsLightReflectionPlugin General Error Codes
AgEForceModelTypeEnumeration of force model contributors

Remarks

The examples communicate the idea much better than the text. The simplest example is the VBScript example. See the examples.
© 2024 Analytical Graphics, Inc. All Rights Reserved.