

/* this ALWAYS GENERATED file contains the definitions for the interfaces */


 /* File created by MIDL compiler version 6.00.0366 */
/* at Wed May 20 19:20:07 2009
 */
/* Compiler settings for ..\..\builds\Release_Win32\_Widgets.idl:
    Oicf, W1, Zp8, env=Win32 (32b run)
    protocol : dce , ms_ext, c_ext, robust
    error checks: allocation ref bounds_check enum stub_data 
    VC __declspec() decoration level: 
         __declspec(uuid()), __declspec(selectany), __declspec(novtable)
         DECLSPEC_UUID(), MIDL_INTERFACE()
*/
//@@MIDL_FILE_HEADING(  )

#pragma warning( disable: 4049 )  /* more than 64k source lines */


/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif

#include "rpc.h"
#include "rpcndr.h"

#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif // __RPCNDR_H_VERSION__

#ifndef COM_NO_WINDOWS_H
#include "windows.h"
#include "ole2.h"
#endif /*COM_NO_WINDOWS_H*/

#ifndef ___Widgets_h__
#define ___Widgets_h__

#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif

/* Forward Declarations */ 

#ifndef __IRf3DToolbarSet_FWD_DEFINED__
#define __IRf3DToolbarSet_FWD_DEFINED__
typedef interface IRf3DToolbarSet IRf3DToolbarSet;
#endif 	/* __IRf3DToolbarSet_FWD_DEFINED__ */


#ifndef __IRsUnknownDocking_FWD_DEFINED__
#define __IRsUnknownDocking_FWD_DEFINED__
typedef interface IRsUnknownDocking IRsUnknownDocking;
#endif 	/* __IRsUnknownDocking_FWD_DEFINED__ */


#ifndef __IRsNodeEnumerator_FWD_DEFINED__
#define __IRsNodeEnumerator_FWD_DEFINED__
typedef interface IRsNodeEnumerator IRsNodeEnumerator;
#endif 	/* __IRsNodeEnumerator_FWD_DEFINED__ */


#ifndef __IRdInputState_FWD_DEFINED__
#define __IRdInputState_FWD_DEFINED__
typedef interface IRdInputState IRdInputState;
#endif 	/* __IRdInputState_FWD_DEFINED__ */


#ifndef __IRdWidgetParameters_FWD_DEFINED__
#define __IRdWidgetParameters_FWD_DEFINED__
typedef interface IRdWidgetParameters IRdWidgetParameters;
#endif 	/* __IRdWidgetParameters_FWD_DEFINED__ */


#ifndef __IRsWidgetComponent_FWD_DEFINED__
#define __IRsWidgetComponent_FWD_DEFINED__
typedef interface IRsWidgetComponent IRsWidgetComponent;
#endif 	/* __IRsWidgetComponent_FWD_DEFINED__ */


#ifndef __IRsUnknownCoordinateSystem_FWD_DEFINED__
#define __IRsUnknownCoordinateSystem_FWD_DEFINED__
typedef interface IRsUnknownCoordinateSystem IRsUnknownCoordinateSystem;
#endif 	/* __IRsUnknownCoordinateSystem_FWD_DEFINED__ */


#ifndef __IRnWidgetAspect_FWD_DEFINED__
#define __IRnWidgetAspect_FWD_DEFINED__
typedef interface IRnWidgetAspect IRnWidgetAspect;
#endif 	/* __IRnWidgetAspect_FWD_DEFINED__ */


#ifndef __IRnWidget_FWD_DEFINED__
#define __IRnWidget_FWD_DEFINED__
typedef interface IRnWidget IRnWidget;
#endif 	/* __IRnWidget_FWD_DEFINED__ */


#ifndef __IRsSelectionChangedNotify_FWD_DEFINED__
#define __IRsSelectionChangedNotify_FWD_DEFINED__
typedef interface IRsSelectionChangedNotify IRsSelectionChangedNotify;
#endif 	/* __IRsSelectionChangedNotify_FWD_DEFINED__ */


#ifndef __IRdWidgetViewportParameters_FWD_DEFINED__
#define __IRdWidgetViewportParameters_FWD_DEFINED__
typedef interface IRdWidgetViewportParameters IRdWidgetViewportParameters;
#endif 	/* __IRdWidgetViewportParameters_FWD_DEFINED__ */


#ifndef __IRsWidgetTool_FWD_DEFINED__
#define __IRsWidgetTool_FWD_DEFINED__
typedef interface IRsWidgetTool IRsWidgetTool;
#endif 	/* __IRsWidgetTool_FWD_DEFINED__ */


#ifndef __IRnActiveWidget_FWD_DEFINED__
#define __IRnActiveWidget_FWD_DEFINED__
typedef interface IRnActiveWidget IRnActiveWidget;
#endif 	/* __IRnActiveWidget_FWD_DEFINED__ */


#ifndef __IRsWidgetCacheItem_FWD_DEFINED__
#define __IRsWidgetCacheItem_FWD_DEFINED__
typedef interface IRsWidgetCacheItem IRsWidgetCacheItem;
#endif 	/* __IRsWidgetCacheItem_FWD_DEFINED__ */


#ifndef __IRsWidgetSelectionHandler_FWD_DEFINED__
#define __IRsWidgetSelectionHandler_FWD_DEFINED__
typedef interface IRsWidgetSelectionHandler IRsWidgetSelectionHandler;
#endif 	/* __IRsWidgetSelectionHandler_FWD_DEFINED__ */


#ifndef __IRnWidgetSubsystem_FWD_DEFINED__
#define __IRnWidgetSubsystem_FWD_DEFINED__
typedef interface IRnWidgetSubsystem IRnWidgetSubsystem;
#endif 	/* __IRnWidgetSubsystem_FWD_DEFINED__ */


#ifndef __IRsUnknownBackgroundController_FWD_DEFINED__
#define __IRsUnknownBackgroundController_FWD_DEFINED__
typedef interface IRsUnknownBackgroundController IRsUnknownBackgroundController;
#endif 	/* __IRsUnknownBackgroundController_FWD_DEFINED__ */


#ifndef __IRsUnknownForegroundController_FWD_DEFINED__
#define __IRsUnknownForegroundController_FWD_DEFINED__
typedef interface IRsUnknownForegroundController IRsUnknownForegroundController;
#endif 	/* __IRsUnknownForegroundController_FWD_DEFINED__ */


#ifndef __IRsWidgetToolController_FWD_DEFINED__
#define __IRsWidgetToolController_FWD_DEFINED__
typedef interface IRsWidgetToolController IRsWidgetToolController;
#endif 	/* __IRsWidgetToolController_FWD_DEFINED__ */


#ifndef __IRfMarkerVisualization_FWD_DEFINED__
#define __IRfMarkerVisualization_FWD_DEFINED__
typedef interface IRfMarkerVisualization IRfMarkerVisualization;
#endif 	/* __IRfMarkerVisualization_FWD_DEFINED__ */


#ifndef __IRfMarkerVisualizationDisp_FWD_DEFINED__
#define __IRfMarkerVisualizationDisp_FWD_DEFINED__
typedef interface IRfMarkerVisualizationDisp IRfMarkerVisualizationDisp;
#endif 	/* __IRfMarkerVisualizationDisp_FWD_DEFINED__ */


#ifndef __IRfCursorController_FWD_DEFINED__
#define __IRfCursorController_FWD_DEFINED__
typedef interface IRfCursorController IRfCursorController;
#endif 	/* __IRfCursorController_FWD_DEFINED__ */


#ifndef __IRsUiWidgetsAgent_FWD_DEFINED__
#define __IRsUiWidgetsAgent_FWD_DEFINED__
typedef interface IRsUiWidgetsAgent IRsUiWidgetsAgent;
#endif 	/* __IRsUiWidgetsAgent_FWD_DEFINED__ */


#ifndef __IRsPickOverride_FWD_DEFINED__
#define __IRsPickOverride_FWD_DEFINED__
typedef interface IRsPickOverride IRsPickOverride;
#endif 	/* __IRsPickOverride_FWD_DEFINED__ */


#ifndef __IRsPickOverrideManager_FWD_DEFINED__
#define __IRsPickOverrideManager_FWD_DEFINED__
typedef interface IRsPickOverrideManager IRsPickOverrideManager;
#endif 	/* __IRsPickOverrideManager_FWD_DEFINED__ */


#ifndef __IRpWidgets_FWD_DEFINED__
#define __IRpWidgets_FWD_DEFINED__
typedef interface IRpWidgets IRpWidgets;
#endif 	/* __IRpWidgets_FWD_DEFINED__ */


#ifndef __IRcUpdateButtonTransform_FWD_DEFINED__
#define __IRcUpdateButtonTransform_FWD_DEFINED__
typedef interface IRcUpdateButtonTransform IRcUpdateButtonTransform;
#endif 	/* __IRcUpdateButtonTransform_FWD_DEFINED__ */


#ifndef __IRiWidgets_FWD_DEFINED__
#define __IRiWidgets_FWD_DEFINED__
typedef interface IRiWidgets IRiWidgets;
#endif 	/* __IRiWidgets_FWD_DEFINED__ */


#ifndef __IRcActivateWidget_FWD_DEFINED__
#define __IRcActivateWidget_FWD_DEFINED__
typedef interface IRcActivateWidget IRcActivateWidget;
#endif 	/* __IRcActivateWidget_FWD_DEFINED__ */


#ifndef __IRcReplaceManagedWidget_FWD_DEFINED__
#define __IRcReplaceManagedWidget_FWD_DEFINED__
typedef interface IRcReplaceManagedWidget IRcReplaceManagedWidget;
#endif 	/* __IRcReplaceManagedWidget_FWD_DEFINED__ */


#ifndef __IRcAddWidget_FWD_DEFINED__
#define __IRcAddWidget_FWD_DEFINED__
typedef interface IRcAddWidget IRcAddWidget;
#endif 	/* __IRcAddWidget_FWD_DEFINED__ */


#ifndef __IRcWidgetMoveNI_FWD_DEFINED__
#define __IRcWidgetMoveNI_FWD_DEFINED__
typedef interface IRcWidgetMoveNI IRcWidgetMoveNI;
#endif 	/* __IRcWidgetMoveNI_FWD_DEFINED__ */


#ifndef __IRcWidgetRotateNI_FWD_DEFINED__
#define __IRcWidgetRotateNI_FWD_DEFINED__
typedef interface IRcWidgetRotateNI IRcWidgetRotateNI;
#endif 	/* __IRcWidgetRotateNI_FWD_DEFINED__ */


#ifndef __IRcWidgetScaleNI_FWD_DEFINED__
#define __IRcWidgetScaleNI_FWD_DEFINED__
typedef interface IRcWidgetScaleNI IRcWidgetScaleNI;
#endif 	/* __IRcWidgetScaleNI_FWD_DEFINED__ */


#ifndef __IRcWidgetRotateWorldNI_FWD_DEFINED__
#define __IRcWidgetRotateWorldNI_FWD_DEFINED__
typedef interface IRcWidgetRotateWorldNI IRcWidgetRotateWorldNI;
#endif 	/* __IRcWidgetRotateWorldNI_FWD_DEFINED__ */


#ifndef __IRsReactivateable_FWD_DEFINED__
#define __IRsReactivateable_FWD_DEFINED__
typedef interface IRsReactivateable IRsReactivateable;
#endif 	/* __IRsReactivateable_FWD_DEFINED__ */


#ifndef __IRcChangeKeyName_FWD_DEFINED__
#define __IRcChangeKeyName_FWD_DEFINED__
typedef interface IRcChangeKeyName IRcChangeKeyName;
#endif 	/* __IRcChangeKeyName_FWD_DEFINED__ */


#ifndef __IRcGeneralUndoRedo_FWD_DEFINED__
#define __IRcGeneralUndoRedo_FWD_DEFINED__
typedef interface IRcGeneralUndoRedo IRcGeneralUndoRedo;
#endif 	/* __IRcGeneralUndoRedo_FWD_DEFINED__ */


#ifndef __IRcSetConListValue_FWD_DEFINED__
#define __IRcSetConListValue_FWD_DEFINED__
typedef interface IRcSetConListValue IRcSetConListValue;
#endif 	/* __IRcSetConListValue_FWD_DEFINED__ */


#ifndef __IRcWidgetTransformNI_FWD_DEFINED__
#define __IRcWidgetTransformNI_FWD_DEFINED__
typedef interface IRcWidgetTransformNI IRcWidgetTransformNI;
#endif 	/* __IRcWidgetTransformNI_FWD_DEFINED__ */


#ifndef __IRsConnectorEnumerator_FWD_DEFINED__
#define __IRsConnectorEnumerator_FWD_DEFINED__
typedef interface IRsConnectorEnumerator IRsConnectorEnumerator;
#endif 	/* __IRsConnectorEnumerator_FWD_DEFINED__ */


#ifndef __IRsWidgetComplexActivation_FWD_DEFINED__
#define __IRsWidgetComplexActivation_FWD_DEFINED__
typedef interface IRsWidgetComplexActivation IRsWidgetComplexActivation;
#endif 	/* __IRsWidgetComplexActivation_FWD_DEFINED__ */


#ifndef __IRcDeactivateWidget_FWD_DEFINED__
#define __IRcDeactivateWidget_FWD_DEFINED__
typedef interface IRcDeactivateWidget IRcDeactivateWidget;
#endif 	/* __IRcDeactivateWidget_FWD_DEFINED__ */


#ifndef __IRsWidgetVisualizationCtrl_FWD_DEFINED__
#define __IRsWidgetVisualizationCtrl_FWD_DEFINED__
typedef interface IRsWidgetVisualizationCtrl IRsWidgetVisualizationCtrl;
#endif 	/* __IRsWidgetVisualizationCtrl_FWD_DEFINED__ */


#ifndef __IRdWidgetVisualization_FWD_DEFINED__
#define __IRdWidgetVisualization_FWD_DEFINED__
typedef interface IRdWidgetVisualization IRdWidgetVisualization;
#endif 	/* __IRdWidgetVisualization_FWD_DEFINED__ */


#ifndef __IRdDockingPosition_FWD_DEFINED__
#define __IRdDockingPosition_FWD_DEFINED__
typedef interface IRdDockingPosition IRdDockingPosition;
#endif 	/* __IRdDockingPosition_FWD_DEFINED__ */


#ifndef __IRdCoordinateSystem_FWD_DEFINED__
#define __IRdCoordinateSystem_FWD_DEFINED__
typedef interface IRdCoordinateSystem IRdCoordinateSystem;
#endif 	/* __IRdCoordinateSystem_FWD_DEFINED__ */


#ifndef __IRdWidgetAction_FWD_DEFINED__
#define __IRdWidgetAction_FWD_DEFINED__
typedef interface IRdWidgetAction IRdWidgetAction;
#endif 	/* __IRdWidgetAction_FWD_DEFINED__ */


#ifndef __IRsUnknownGesture_FWD_DEFINED__
#define __IRsUnknownGesture_FWD_DEFINED__
typedef interface IRsUnknownGesture IRsUnknownGesture;
#endif 	/* __IRsUnknownGesture_FWD_DEFINED__ */


#ifndef __IRsEncapsulatedWidgetTool_FWD_DEFINED__
#define __IRsEncapsulatedWidgetTool_FWD_DEFINED__
typedef interface IRsEncapsulatedWidgetTool IRsEncapsulatedWidgetTool;
#endif 	/* __IRsEncapsulatedWidgetTool_FWD_DEFINED__ */


#ifndef __IRnActiveWidgetController_FWD_DEFINED__
#define __IRnActiveWidgetController_FWD_DEFINED__
typedef interface IRnActiveWidgetController IRnActiveWidgetController;
#endif 	/* __IRnActiveWidgetController_FWD_DEFINED__ */


#ifndef __IRsWidgetActivationFilter_FWD_DEFINED__
#define __IRsWidgetActivationFilter_FWD_DEFINED__
typedef interface IRsWidgetActivationFilter IRsWidgetActivationFilter;
#endif 	/* __IRsWidgetActivationFilter_FWD_DEFINED__ */


#ifndef __IRnBackgroundWidgetController_FWD_DEFINED__
#define __IRnBackgroundWidgetController_FWD_DEFINED__
typedef interface IRnBackgroundWidgetController IRnBackgroundWidgetController;
#endif 	/* __IRnBackgroundWidgetController_FWD_DEFINED__ */


#ifndef __IRnGesture_FWD_DEFINED__
#define __IRnGesture_FWD_DEFINED__
typedef interface IRnGesture IRnGesture;
#endif 	/* __IRnGesture_FWD_DEFINED__ */


#ifndef __IRnSceneWidgetController_FWD_DEFINED__
#define __IRnSceneWidgetController_FWD_DEFINED__
typedef interface IRnSceneWidgetController IRnSceneWidgetController;
#endif 	/* __IRnSceneWidgetController_FWD_DEFINED__ */


#ifndef __IRnStaticWidgetController_FWD_DEFINED__
#define __IRnStaticWidgetController_FWD_DEFINED__
typedef interface IRnStaticWidgetController IRnStaticWidgetController;
#endif 	/* __IRnStaticWidgetController_FWD_DEFINED__ */


#ifndef __IRdWidgetComponent_FWD_DEFINED__
#define __IRdWidgetComponent_FWD_DEFINED__
typedef interface IRdWidgetComponent IRdWidgetComponent;
#endif 	/* __IRdWidgetComponent_FWD_DEFINED__ */


#ifndef __IRdWidgetActivationRequest_FWD_DEFINED__
#define __IRdWidgetActivationRequest_FWD_DEFINED__
typedef interface IRdWidgetActivationRequest IRdWidgetActivationRequest;
#endif 	/* __IRdWidgetActivationRequest_FWD_DEFINED__ */


#ifndef __IRdWidgetMatchParameters_FWD_DEFINED__
#define __IRdWidgetMatchParameters_FWD_DEFINED__
typedef interface IRdWidgetMatchParameters IRdWidgetMatchParameters;
#endif 	/* __IRdWidgetMatchParameters_FWD_DEFINED__ */


#ifndef __IRcReactivateActiveWidgets_FWD_DEFINED__
#define __IRcReactivateActiveWidgets_FWD_DEFINED__
typedef interface IRcReactivateActiveWidgets IRcReactivateActiveWidgets;
#endif 	/* __IRcReactivateActiveWidgets_FWD_DEFINED__ */


#ifndef __IRcInternalSelectionSync_FWD_DEFINED__
#define __IRcInternalSelectionSync_FWD_DEFINED__
typedef interface IRcInternalSelectionSync IRcInternalSelectionSync;
#endif 	/* __IRcInternalSelectionSync_FWD_DEFINED__ */


#ifndef __IRsWidgetStateSysMsg_FWD_DEFINED__
#define __IRsWidgetStateSysMsg_FWD_DEFINED__
typedef interface IRsWidgetStateSysMsg IRsWidgetStateSysMsg;
#endif 	/* __IRsWidgetStateSysMsg_FWD_DEFINED__ */


#ifndef __IRsWidgetsCmdFactory_FWD_DEFINED__
#define __IRsWidgetsCmdFactory_FWD_DEFINED__
typedef interface IRsWidgetsCmdFactory IRsWidgetsCmdFactory;
#endif 	/* __IRsWidgetsCmdFactory_FWD_DEFINED__ */


#ifndef __IRsWidgetsNodeFactory_FWD_DEFINED__
#define __IRsWidgetsNodeFactory_FWD_DEFINED__
typedef interface IRsWidgetsNodeFactory IRsWidgetsNodeFactory;
#endif 	/* __IRsWidgetsNodeFactory_FWD_DEFINED__ */


#ifndef __IRsWidgetDetector_FWD_DEFINED__
#define __IRsWidgetDetector_FWD_DEFINED__
typedef interface IRsWidgetDetector IRsWidgetDetector;
#endif 	/* __IRsWidgetDetector_FWD_DEFINED__ */


#ifndef __IRnScreenDocking_FWD_DEFINED__
#define __IRnScreenDocking_FWD_DEFINED__
typedef interface IRnScreenDocking IRnScreenDocking;
#endif 	/* __IRnScreenDocking_FWD_DEFINED__ */


#ifndef __IRnAlt_FWD_DEFINED__
#define __IRnAlt_FWD_DEFINED__
typedef interface IRnAlt IRnAlt;
#endif 	/* __IRnAlt_FWD_DEFINED__ */


#ifndef __IRnCtrl_FWD_DEFINED__
#define __IRnCtrl_FWD_DEFINED__
typedef interface IRnCtrl IRnCtrl;
#endif 	/* __IRnCtrl_FWD_DEFINED__ */


#ifndef __IRnKey_FWD_DEFINED__
#define __IRnKey_FWD_DEFINED__
typedef interface IRnKey IRnKey;
#endif 	/* __IRnKey_FWD_DEFINED__ */


#ifndef __IRnOneFromFourSelector_FWD_DEFINED__
#define __IRnOneFromFourSelector_FWD_DEFINED__
typedef interface IRnOneFromFourSelector IRnOneFromFourSelector;
#endif 	/* __IRnOneFromFourSelector_FWD_DEFINED__ */


#ifndef __IRnOneFromThreeSelector_FWD_DEFINED__
#define __IRnOneFromThreeSelector_FWD_DEFINED__
typedef interface IRnOneFromThreeSelector IRnOneFromThreeSelector;
#endif 	/* __IRnOneFromThreeSelector_FWD_DEFINED__ */


#ifndef __IRnShift_FWD_DEFINED__
#define __IRnShift_FWD_DEFINED__
typedef interface IRnShift IRnShift;
#endif 	/* __IRnShift_FWD_DEFINED__ */


#ifndef __IRnWheel_FWD_DEFINED__
#define __IRnWheel_FWD_DEFINED__
typedef interface IRnWheel IRnWheel;
#endif 	/* __IRnWheel_FWD_DEFINED__ */


#ifndef __IRnLClick_FWD_DEFINED__
#define __IRnLClick_FWD_DEFINED__
typedef interface IRnLClick IRnLClick;
#endif 	/* __IRnLClick_FWD_DEFINED__ */


#ifndef __IRnLDblClick_FWD_DEFINED__
#define __IRnLDblClick_FWD_DEFINED__
typedef interface IRnLDblClick IRnLDblClick;
#endif 	/* __IRnLDblClick_FWD_DEFINED__ */


#ifndef __IRnLDrag_FWD_DEFINED__
#define __IRnLDrag_FWD_DEFINED__
typedef interface IRnLDrag IRnLDrag;
#endif 	/* __IRnLDrag_FWD_DEFINED__ */


#ifndef __IRnLState_FWD_DEFINED__
#define __IRnLState_FWD_DEFINED__
typedef interface IRnLState IRnLState;
#endif 	/* __IRnLState_FWD_DEFINED__ */


#ifndef __IRnRClick_FWD_DEFINED__
#define __IRnRClick_FWD_DEFINED__
typedef interface IRnRClick IRnRClick;
#endif 	/* __IRnRClick_FWD_DEFINED__ */


#ifndef __IRnRDblClick_FWD_DEFINED__
#define __IRnRDblClick_FWD_DEFINED__
typedef interface IRnRDblClick IRnRDblClick;
#endif 	/* __IRnRDblClick_FWD_DEFINED__ */


#ifndef __IRnRDrag_FWD_DEFINED__
#define __IRnRDrag_FWD_DEFINED__
typedef interface IRnRDrag IRnRDrag;
#endif 	/* __IRnRDrag_FWD_DEFINED__ */


#ifndef __IRnRState_FWD_DEFINED__
#define __IRnRState_FWD_DEFINED__
typedef interface IRnRState IRnRState;
#endif 	/* __IRnRState_FWD_DEFINED__ */


#ifndef __IRnMClick_FWD_DEFINED__
#define __IRnMClick_FWD_DEFINED__
typedef interface IRnMClick IRnMClick;
#endif 	/* __IRnMClick_FWD_DEFINED__ */


#ifndef __IRnMDblClick_FWD_DEFINED__
#define __IRnMDblClick_FWD_DEFINED__
typedef interface IRnMDblClick IRnMDblClick;
#endif 	/* __IRnMDblClick_FWD_DEFINED__ */


#ifndef __IRnMDrag_FWD_DEFINED__
#define __IRnMDrag_FWD_DEFINED__
typedef interface IRnMDrag IRnMDrag;
#endif 	/* __IRnMDrag_FWD_DEFINED__ */


#ifndef __IRnMState_FWD_DEFINED__
#define __IRnMState_FWD_DEFINED__
typedef interface IRnMState IRnMState;
#endif 	/* __IRnMState_FWD_DEFINED__ */


#ifndef __IRcActivateUserWidget_FWD_DEFINED__
#define __IRcActivateUserWidget_FWD_DEFINED__
typedef interface IRcActivateUserWidget IRcActivateUserWidget;
#endif 	/* __IRcActivateUserWidget_FWD_DEFINED__ */


#ifndef __IRcChangeAspect_FWD_DEFINED__
#define __IRcChangeAspect_FWD_DEFINED__
typedef interface IRcChangeAspect IRcChangeAspect;
#endif 	/* __IRcChangeAspect_FWD_DEFINED__ */


#ifndef __IRcChangeAspectPopup_FWD_DEFINED__
#define __IRcChangeAspectPopup_FWD_DEFINED__
typedef interface IRcChangeAspectPopup IRcChangeAspectPopup;
#endif 	/* __IRcChangeAspectPopup_FWD_DEFINED__ */


#ifndef __IRcCloseManagedWidgets_FWD_DEFINED__
#define __IRcCloseManagedWidgets_FWD_DEFINED__
typedef interface IRcCloseManagedWidgets IRcCloseManagedWidgets;
#endif 	/* __IRcCloseManagedWidgets_FWD_DEFINED__ */


#ifndef __IRcCloseWidget_FWD_DEFINED__
#define __IRcCloseWidget_FWD_DEFINED__
typedef interface IRcCloseWidget IRcCloseWidget;
#endif 	/* __IRcCloseWidget_FWD_DEFINED__ */


#ifndef __IRcOpenPanelView_FWD_DEFINED__
#define __IRcOpenPanelView_FWD_DEFINED__
typedef interface IRcOpenPanelView IRcOpenPanelView;
#endif 	/* __IRcOpenPanelView_FWD_DEFINED__ */


#ifndef __IRcSimpleScriptCommand_FWD_DEFINED__
#define __IRcSimpleScriptCommand_FWD_DEFINED__
typedef interface IRcSimpleScriptCommand IRcSimpleScriptCommand;
#endif 	/* __IRcSimpleScriptCommand_FWD_DEFINED__ */


#ifndef __IRcWidgetOpeningSelect_FWD_DEFINED__
#define __IRcWidgetOpeningSelect_FWD_DEFINED__
typedef interface IRcWidgetOpeningSelect IRcWidgetOpeningSelect;
#endif 	/* __IRcWidgetOpeningSelect_FWD_DEFINED__ */


#ifndef __IRcWidgetsBlockingSelect_FWD_DEFINED__
#define __IRcWidgetsBlockingSelect_FWD_DEFINED__
typedef interface IRcWidgetsBlockingSelect IRcWidgetsBlockingSelect;
#endif 	/* __IRcWidgetsBlockingSelect_FWD_DEFINED__ */


#ifndef __IRcDirectTransformUndoRedo_FWD_DEFINED__
#define __IRcDirectTransformUndoRedo_FWD_DEFINED__
typedef interface IRcDirectTransformUndoRedo IRcDirectTransformUndoRedo;
#endif 	/* __IRcDirectTransformUndoRedo_FWD_DEFINED__ */


#ifndef __IRcFloatUndoRedo_FWD_DEFINED__
#define __IRcFloatUndoRedo_FWD_DEFINED__
typedef interface IRcFloatUndoRedo IRcFloatUndoRedo;
#endif 	/* __IRcFloatUndoRedo_FWD_DEFINED__ */


#ifndef __IRcReactivator_FWD_DEFINED__
#define __IRcReactivator_FWD_DEFINED__
typedef interface IRcReactivator IRcReactivator;
#endif 	/* __IRcReactivator_FWD_DEFINED__ */


#ifndef __IRcWidgetTransformUndoRedo_FWD_DEFINED__
#define __IRcWidgetTransformUndoRedo_FWD_DEFINED__
typedef interface IRcWidgetTransformUndoRedo IRcWidgetTransformUndoRedo;
#endif 	/* __IRcWidgetTransformUndoRedo_FWD_DEFINED__ */


#ifndef __IRd3DToolbarParams_FWD_DEFINED__
#define __IRd3DToolbarParams_FWD_DEFINED__
typedef interface IRd3DToolbarParams IRd3DToolbarParams;
#endif 	/* __IRd3DToolbarParams_FWD_DEFINED__ */


#ifndef __IRnCoordinateSystem_FWD_DEFINED__
#define __IRnCoordinateSystem_FWD_DEFINED__
typedef interface IRnCoordinateSystem IRnCoordinateSystem;
#endif 	/* __IRnCoordinateSystem_FWD_DEFINED__ */


#ifndef __IRnPerspCompCoordinates_FWD_DEFINED__
#define __IRnPerspCompCoordinates_FWD_DEFINED__
typedef interface IRnPerspCompCoordinates IRnPerspCompCoordinates;
#endif 	/* __IRnPerspCompCoordinates_FWD_DEFINED__ */


#ifndef __IRn2DCoordinateSystem_FWD_DEFINED__
#define __IRn2DCoordinateSystem_FWD_DEFINED__
typedef interface IRn2DCoordinateSystem IRn2DCoordinateSystem;
#endif 	/* __IRn2DCoordinateSystem_FWD_DEFINED__ */


#ifndef __IRnBBoxDocking_FWD_DEFINED__
#define __IRnBBoxDocking_FWD_DEFINED__
typedef interface IRnBBoxDocking IRnBBoxDocking;
#endif 	/* __IRnBBoxDocking_FWD_DEFINED__ */


#ifndef __IRnRectDocking_FWD_DEFINED__
#define __IRnRectDocking_FWD_DEFINED__
typedef interface IRnRectDocking IRnRectDocking;
#endif 	/* __IRnRectDocking_FWD_DEFINED__ */


#ifndef __IRnOffsetDocking_FWD_DEFINED__
#define __IRnOffsetDocking_FWD_DEFINED__
typedef interface IRnOffsetDocking IRnOffsetDocking;
#endif 	/* __IRnOffsetDocking_FWD_DEFINED__ */


#ifndef __IRnWorldOrigin_FWD_DEFINED__
#define __IRnWorldOrigin_FWD_DEFINED__
typedef interface IRnWorldOrigin IRnWorldOrigin;
#endif 	/* __IRnWorldOrigin_FWD_DEFINED__ */


#ifndef __IRnAnchorOriginDocking_FWD_DEFINED__
#define __IRnAnchorOriginDocking_FWD_DEFINED__
typedef interface IRnAnchorOriginDocking IRnAnchorOriginDocking;
#endif 	/* __IRnAnchorOriginDocking_FWD_DEFINED__ */


#ifndef __IRnSelectionCenter_FWD_DEFINED__
#define __IRnSelectionCenter_FWD_DEFINED__
typedef interface IRnSelectionCenter IRnSelectionCenter;
#endif 	/* __IRnSelectionCenter_FWD_DEFINED__ */


#ifndef __IRnSelectionBBoxDocking_FWD_DEFINED__
#define __IRnSelectionBBoxDocking_FWD_DEFINED__
typedef interface IRnSelectionBBoxDocking IRnSelectionBBoxDocking;
#endif 	/* __IRnSelectionBBoxDocking_FWD_DEFINED__ */


#ifndef __IRnScreenMove_FWD_DEFINED__
#define __IRnScreenMove_FWD_DEFINED__
typedef interface IRnScreenMove IRnScreenMove;
#endif 	/* __IRnScreenMove_FWD_DEFINED__ */


#ifndef __IRnRotate_FWD_DEFINED__
#define __IRnRotate_FWD_DEFINED__
typedef interface IRnRotate IRnRotate;
#endif 	/* __IRnRotate_FWD_DEFINED__ */


#ifndef __IRnLinearRotate_FWD_DEFINED__
#define __IRnLinearRotate_FWD_DEFINED__
typedef interface IRnLinearRotate IRnLinearRotate;
#endif 	/* __IRnLinearRotate_FWD_DEFINED__ */


#ifndef __IRnLinearRotateWorld_FWD_DEFINED__
#define __IRnLinearRotateWorld_FWD_DEFINED__
typedef interface IRnLinearRotateWorld IRnLinearRotateWorld;
#endif 	/* __IRnLinearRotateWorld_FWD_DEFINED__ */


#ifndef __IRnAxisSwap_FWD_DEFINED__
#define __IRnAxisSwap_FWD_DEFINED__
typedef interface IRnAxisSwap IRnAxisSwap;
#endif 	/* __IRnAxisSwap_FWD_DEFINED__ */


#ifndef __IRnCsReplace_FWD_DEFINED__
#define __IRnCsReplace_FWD_DEFINED__
typedef interface IRnCsReplace IRnCsReplace;
#endif 	/* __IRnCsReplace_FWD_DEFINED__ */


#ifndef __IRnAxisRotate_FWD_DEFINED__
#define __IRnAxisRotate_FWD_DEFINED__
typedef interface IRnAxisRotate IRnAxisRotate;
#endif 	/* __IRnAxisRotate_FWD_DEFINED__ */


#ifndef __IRnAxesAlignZ_FWD_DEFINED__
#define __IRnAxesAlignZ_FWD_DEFINED__
typedef interface IRnAxesAlignZ IRnAxesAlignZ;
#endif 	/* __IRnAxesAlignZ_FWD_DEFINED__ */


#ifndef __IRnAutomaticActivation_FWD_DEFINED__
#define __IRnAutomaticActivation_FWD_DEFINED__
typedef interface IRnAutomaticActivation IRnAutomaticActivation;
#endif 	/* __IRnAutomaticActivation_FWD_DEFINED__ */


#ifndef __IRnInputConSensor_FWD_DEFINED__
#define __IRnInputConSensor_FWD_DEFINED__
typedef interface IRnInputConSensor IRnInputConSensor;
#endif 	/* __IRnInputConSensor_FWD_DEFINED__ */


#ifndef __IRnOutputConSensor_FWD_DEFINED__
#define __IRnOutputConSensor_FWD_DEFINED__
typedef interface IRnOutputConSensor IRnOutputConSensor;
#endif 	/* __IRnOutputConSensor_FWD_DEFINED__ */


#ifndef __IRnMultipleOr_FWD_DEFINED__
#define __IRnMultipleOr_FWD_DEFINED__
typedef interface IRnMultipleOr IRnMultipleOr;
#endif 	/* __IRnMultipleOr_FWD_DEFINED__ */


#ifndef __IRnMultipleXor_FWD_DEFINED__
#define __IRnMultipleXor_FWD_DEFINED__
typedef interface IRnMultipleXor IRnMultipleXor;
#endif 	/* __IRnMultipleXor_FWD_DEFINED__ */


#ifndef __IRnMultipleAnd_FWD_DEFINED__
#define __IRnMultipleAnd_FWD_DEFINED__
typedef interface IRnMultipleAnd IRnMultipleAnd;
#endif 	/* __IRnMultipleAnd_FWD_DEFINED__ */


#ifndef __IRnVisualizationCtrl_FWD_DEFINED__
#define __IRnVisualizationCtrl_FWD_DEFINED__
typedef interface IRnVisualizationCtrl IRnVisualizationCtrl;
#endif 	/* __IRnVisualizationCtrl_FWD_DEFINED__ */


#ifndef __IRnSimpleVisualizationCtrl_FWD_DEFINED__
#define __IRnSimpleVisualizationCtrl_FWD_DEFINED__
typedef interface IRnSimpleVisualizationCtrl IRnSimpleVisualizationCtrl;
#endif 	/* __IRnSimpleVisualizationCtrl_FWD_DEFINED__ */


#ifndef __IRnMove_FWD_DEFINED__
#define __IRnMove_FWD_DEFINED__
typedef interface IRnMove IRnMove;
#endif 	/* __IRnMove_FWD_DEFINED__ */


#ifndef __IRnLinearMove_FWD_DEFINED__
#define __IRnLinearMove_FWD_DEFINED__
typedef interface IRnLinearMove IRnLinearMove;
#endif 	/* __IRnLinearMove_FWD_DEFINED__ */


#ifndef __IRnLinearScale_FWD_DEFINED__
#define __IRnLinearScale_FWD_DEFINED__
typedef interface IRnLinearScale IRnLinearScale;
#endif 	/* __IRnLinearScale_FWD_DEFINED__ */


#ifndef __IRnMoveWidget_FWD_DEFINED__
#define __IRnMoveWidget_FWD_DEFINED__
typedef interface IRnMoveWidget IRnMoveWidget;
#endif 	/* __IRnMoveWidget_FWD_DEFINED__ */


#ifndef __IRnLinearSlider_FWD_DEFINED__
#define __IRnLinearSlider_FWD_DEFINED__
typedef interface IRnLinearSlider IRnLinearSlider;
#endif 	/* __IRnLinearSlider_FWD_DEFINED__ */


#ifndef __IRnSimpleSlider_FWD_DEFINED__
#define __IRnSimpleSlider_FWD_DEFINED__
typedef interface IRnSimpleSlider IRnSimpleSlider;
#endif 	/* __IRnSimpleSlider_FWD_DEFINED__ */


#ifndef __IRnCameraWalk_FWD_DEFINED__
#define __IRnCameraWalk_FWD_DEFINED__
typedef interface IRnCameraWalk IRnCameraWalk;
#endif 	/* __IRnCameraWalk_FWD_DEFINED__ */


#ifndef __IRnCameraLookAround_FWD_DEFINED__
#define __IRnCameraLookAround_FWD_DEFINED__
typedef interface IRnCameraLookAround IRnCameraLookAround;
#endif 	/* __IRnCameraLookAround_FWD_DEFINED__ */


#ifndef __IRnCameraNavigate_FWD_DEFINED__
#define __IRnCameraNavigate_FWD_DEFINED__
typedef interface IRnCameraNavigate IRnCameraNavigate;
#endif 	/* __IRnCameraNavigate_FWD_DEFINED__ */


#ifndef __IRnCameraChangeFov_FWD_DEFINED__
#define __IRnCameraChangeFov_FWD_DEFINED__
typedef interface IRnCameraChangeFov IRnCameraChangeFov;
#endif 	/* __IRnCameraChangeFov_FWD_DEFINED__ */


#ifndef __IRnAnchorBSphere_FWD_DEFINED__
#define __IRnAnchorBSphere_FWD_DEFINED__
typedef interface IRnAnchorBSphere IRnAnchorBSphere;
#endif 	/* __IRnAnchorBSphere_FWD_DEFINED__ */


#ifndef __IRnUpdateEyeCamera_FWD_DEFINED__
#define __IRnUpdateEyeCamera_FWD_DEFINED__
typedef interface IRnUpdateEyeCamera IRnUpdateEyeCamera;
#endif 	/* __IRnUpdateEyeCamera_FWD_DEFINED__ */


#ifndef __IRnWidgetToolbar_FWD_DEFINED__
#define __IRnWidgetToolbar_FWD_DEFINED__
typedef interface IRnWidgetToolbar IRnWidgetToolbar;
#endif 	/* __IRnWidgetToolbar_FWD_DEFINED__ */


#ifndef __IRn3DToolbar_FWD_DEFINED__
#define __IRn3DToolbar_FWD_DEFINED__
typedef interface IRn3DToolbar IRn3DToolbar;
#endif 	/* __IRn3DToolbar_FWD_DEFINED__ */


#ifndef __IRn3DButton_FWD_DEFINED__
#define __IRn3DButton_FWD_DEFINED__
typedef interface IRn3DButton IRn3DButton;
#endif 	/* __IRn3DButton_FWD_DEFINED__ */


#ifndef __IRnSynchronizeWithSelection_FWD_DEFINED__
#define __IRnSynchronizeWithSelection_FWD_DEFINED__
typedef interface IRnSynchronizeWithSelection IRnSynchronizeWithSelection;
#endif 	/* __IRnSynchronizeWithSelection_FWD_DEFINED__ */


#ifndef __IRnPrefCoordinateSystem_FWD_DEFINED__
#define __IRnPrefCoordinateSystem_FWD_DEFINED__
typedef interface IRnPrefCoordinateSystem IRnPrefCoordinateSystem;
#endif 	/* __IRnPrefCoordinateSystem_FWD_DEFINED__ */


#ifndef __IRnPrefPerspCoordinateSystem_FWD_DEFINED__
#define __IRnPrefPerspCoordinateSystem_FWD_DEFINED__
typedef interface IRnPrefPerspCoordinateSystem IRnPrefPerspCoordinateSystem;
#endif 	/* __IRnPrefPerspCoordinateSystem_FWD_DEFINED__ */


#ifndef __IRnSelectObject_FWD_DEFINED__
#define __IRnSelectObject_FWD_DEFINED__
typedef interface IRnSelectObject IRnSelectObject;
#endif 	/* __IRnSelectObject_FWD_DEFINED__ */


#ifndef __IRnToggleSelect_FWD_DEFINED__
#define __IRnToggleSelect_FWD_DEFINED__
typedef interface IRnToggleSelect IRnToggleSelect;
#endif 	/* __IRnToggleSelect_FWD_DEFINED__ */


#ifndef __IRnDragAndDropTool_FWD_DEFINED__
#define __IRnDragAndDropTool_FWD_DEFINED__
typedef interface IRnDragAndDropTool IRnDragAndDropTool;
#endif 	/* __IRnDragAndDropTool_FWD_DEFINED__ */


#ifndef __IRnCameraRoll_FWD_DEFINED__
#define __IRnCameraRoll_FWD_DEFINED__
typedef interface IRnCameraRoll IRnCameraRoll;
#endif 	/* __IRnCameraRoll_FWD_DEFINED__ */


#ifndef __IRnSelectionBBox_FWD_DEFINED__
#define __IRnSelectionBBox_FWD_DEFINED__
typedef interface IRnSelectionBBox IRnSelectionBBox;
#endif 	/* __IRnSelectionBBox_FWD_DEFINED__ */


#ifndef __IRnAnchorBBoxDocking_FWD_DEFINED__
#define __IRnAnchorBBoxDocking_FWD_DEFINED__
typedef interface IRnAnchorBBoxDocking IRnAnchorBBoxDocking;
#endif 	/* __IRnAnchorBBoxDocking_FWD_DEFINED__ */


#ifndef __IRnCenterDocking_FWD_DEFINED__
#define __IRnCenterDocking_FWD_DEFINED__
typedef interface IRnCenterDocking IRnCenterDocking;
#endif 	/* __IRnCenterDocking_FWD_DEFINED__ */


#ifndef __IRnHighliteEvaluator_FWD_DEFINED__
#define __IRnHighliteEvaluator_FWD_DEFINED__
typedef interface IRnHighliteEvaluator IRnHighliteEvaluator;
#endif 	/* __IRnHighliteEvaluator_FWD_DEFINED__ */


#ifndef __IRnWidgetLink_FWD_DEFINED__
#define __IRnWidgetLink_FWD_DEFINED__
typedef interface IRnWidgetLink IRnWidgetLink;
#endif 	/* __IRnWidgetLink_FWD_DEFINED__ */


#ifndef __IRnOpenSettingsPanel_FWD_DEFINED__
#define __IRnOpenSettingsPanel_FWD_DEFINED__
typedef interface IRnOpenSettingsPanel IRnOpenSettingsPanel;
#endif 	/* __IRnOpenSettingsPanel_FWD_DEFINED__ */


#ifndef __IRnActionSequence_FWD_DEFINED__
#define __IRnActionSequence_FWD_DEFINED__
typedef interface IRnActionSequence IRnActionSequence;
#endif 	/* __IRnActionSequence_FWD_DEFINED__ */


#ifndef __IRnContinuousSequence_FWD_DEFINED__
#define __IRnContinuousSequence_FWD_DEFINED__
typedef interface IRnContinuousSequence IRnContinuousSequence;
#endif 	/* __IRnContinuousSequence_FWD_DEFINED__ */


#ifndef __IRnCameraType_FWD_DEFINED__
#define __IRnCameraType_FWD_DEFINED__
typedef interface IRnCameraType IRnCameraType;
#endif 	/* __IRnCameraType_FWD_DEFINED__ */


#ifndef __IRnCameraActive_FWD_DEFINED__
#define __IRnCameraActive_FWD_DEFINED__
typedef interface IRnCameraActive IRnCameraActive;
#endif 	/* __IRnCameraActive_FWD_DEFINED__ */


#ifndef __IRnObjectWidgetHide_FWD_DEFINED__
#define __IRnObjectWidgetHide_FWD_DEFINED__
typedef interface IRnObjectWidgetHide IRnObjectWidgetHide;
#endif 	/* __IRnObjectWidgetHide_FWD_DEFINED__ */


#ifndef __IRnObjectHide_FWD_DEFINED__
#define __IRnObjectHide_FWD_DEFINED__
typedef interface IRnObjectHide IRnObjectHide;
#endif 	/* __IRnObjectHide_FWD_DEFINED__ */


#ifndef __IRnLinearConstrMove_FWD_DEFINED__
#define __IRnLinearConstrMove_FWD_DEFINED__
typedef interface IRnLinearConstrMove IRnLinearConstrMove;
#endif 	/* __IRnLinearConstrMove_FWD_DEFINED__ */


#ifndef __IRnCoordinateSystemDenormalized_FWD_DEFINED__
#define __IRnCoordinateSystemDenormalized_FWD_DEFINED__
typedef interface IRnCoordinateSystemDenormalized IRnCoordinateSystemDenormalized;
#endif 	/* __IRnCoordinateSystemDenormalized_FWD_DEFINED__ */


#ifndef __IRnInputValueSensor_FWD_DEFINED__
#define __IRnInputValueSensor_FWD_DEFINED__
typedef interface IRnInputValueSensor IRnInputValueSensor;
#endif 	/* __IRnInputValueSensor_FWD_DEFINED__ */


#ifndef __IRnAnchorCustomBoxDocking_FWD_DEFINED__
#define __IRnAnchorCustomBoxDocking_FWD_DEFINED__
typedef interface IRnAnchorCustomBoxDocking IRnAnchorCustomBoxDocking;
#endif 	/* __IRnAnchorCustomBoxDocking_FWD_DEFINED__ */


#ifndef __IRnScaleCompensator_FWD_DEFINED__
#define __IRnScaleCompensator_FWD_DEFINED__
typedef interface IRnScaleCompensator IRnScaleCompensator;
#endif 	/* __IRnScaleCompensator_FWD_DEFINED__ */


#ifndef __IRnWidgetShortcut_FWD_DEFINED__
#define __IRnWidgetShortcut_FWD_DEFINED__
typedef interface IRnWidgetShortcut IRnWidgetShortcut;
#endif 	/* __IRnWidgetShortcut_FWD_DEFINED__ */


#ifndef __IRnAxisAlignedCoordSys_FWD_DEFINED__
#define __IRnAxisAlignedCoordSys_FWD_DEFINED__
typedef interface IRnAxisAlignedCoordSys IRnAxisAlignedCoordSys;
#endif 	/* __IRnAxisAlignedCoordSys_FWD_DEFINED__ */


#ifndef __IRnMarkerVisualization_FWD_DEFINED__
#define __IRnMarkerVisualization_FWD_DEFINED__
typedef interface IRnMarkerVisualization IRnMarkerVisualization;
#endif 	/* __IRnMarkerVisualization_FWD_DEFINED__ */


#ifndef __IRnRectZoom_FWD_DEFINED__
#define __IRnRectZoom_FWD_DEFINED__
typedef interface IRnRectZoom IRnRectZoom;
#endif 	/* __IRnRectZoom_FWD_DEFINED__ */


#ifndef __IRnAnchorCoordinateSystem_FWD_DEFINED__
#define __IRnAnchorCoordinateSystem_FWD_DEFINED__
typedef interface IRnAnchorCoordinateSystem IRnAnchorCoordinateSystem;
#endif 	/* __IRnAnchorCoordinateSystem_FWD_DEFINED__ */


#ifndef __IRnWheelSlider_FWD_DEFINED__
#define __IRnWheelSlider_FWD_DEFINED__
typedef interface IRnWheelSlider IRnWheelSlider;
#endif 	/* __IRnWheelSlider_FWD_DEFINED__ */


#ifndef __IRnToggleListValue_FWD_DEFINED__
#define __IRnToggleListValue_FWD_DEFINED__
typedef interface IRnToggleListValue IRnToggleListValue;
#endif 	/* __IRnToggleListValue_FWD_DEFINED__ */


#ifndef __IRnAxisSlider_FWD_DEFINED__
#define __IRnAxisSlider_FWD_DEFINED__
typedef interface IRnAxisSlider IRnAxisSlider;
#endif 	/* __IRnAxisSlider_FWD_DEFINED__ */


#ifndef __IRnInvertValue_FWD_DEFINED__
#define __IRnInvertValue_FWD_DEFINED__
typedef interface IRnInvertValue IRnInvertValue;
#endif 	/* __IRnInvertValue_FWD_DEFINED__ */


#ifndef __IRnOfflineRenderArea_FWD_DEFINED__
#define __IRnOfflineRenderArea_FWD_DEFINED__
typedef interface IRnOfflineRenderArea IRnOfflineRenderArea;
#endif 	/* __IRnOfflineRenderArea_FWD_DEFINED__ */


#ifndef __IRsWidgetProceduralSurface_FWD_DEFINED__
#define __IRsWidgetProceduralSurface_FWD_DEFINED__
typedef interface IRsWidgetProceduralSurface IRsWidgetProceduralSurface;
#endif 	/* __IRsWidgetProceduralSurface_FWD_DEFINED__ */


#ifndef __IRnControlCage_FWD_DEFINED__
#define __IRnControlCage_FWD_DEFINED__
typedef interface IRnControlCage IRnControlCage;
#endif 	/* __IRnControlCage_FWD_DEFINED__ */


#ifndef __IRcTargetChangedSync_FWD_DEFINED__
#define __IRcTargetChangedSync_FWD_DEFINED__
typedef interface IRcTargetChangedSync IRcTargetChangedSync;
#endif 	/* __IRcTargetChangedSync_FWD_DEFINED__ */


#ifndef __IRcUpdateWidget_FWD_DEFINED__
#define __IRcUpdateWidget_FWD_DEFINED__
typedef interface IRcUpdateWidget IRcUpdateWidget;
#endif 	/* __IRcUpdateWidget_FWD_DEFINED__ */


#ifndef __IRnActivationScript_FWD_DEFINED__
#define __IRnActivationScript_FWD_DEFINED__
typedef interface IRnActivationScript IRnActivationScript;
#endif 	/* __IRnActivationScript_FWD_DEFINED__ */


#ifndef __CRdWidgetParameters_FWD_DEFINED__
#define __CRdWidgetParameters_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRdWidgetParameters CRdWidgetParameters;
#else
typedef struct CRdWidgetParameters CRdWidgetParameters;
#endif /* __cplusplus */

#endif 	/* __CRdWidgetParameters_FWD_DEFINED__ */


#ifndef __CRnWidgetSubsystem_FWD_DEFINED__
#define __CRnWidgetSubsystem_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRnWidgetSubsystem CRnWidgetSubsystem;
#else
typedef struct CRnWidgetSubsystem CRnWidgetSubsystem;
#endif /* __cplusplus */

#endif 	/* __CRnWidgetSubsystem_FWD_DEFINED__ */


#ifndef __CRfMarkerVisualization_FWD_DEFINED__
#define __CRfMarkerVisualization_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRfMarkerVisualization CRfMarkerVisualization;
#else
typedef struct CRfMarkerVisualization CRfMarkerVisualization;
#endif /* __cplusplus */

#endif 	/* __CRfMarkerVisualization_FWD_DEFINED__ */


#ifndef __CRpWidgets_FWD_DEFINED__
#define __CRpWidgets_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRpWidgets CRpWidgets;
#else
typedef struct CRpWidgets CRpWidgets;
#endif /* __cplusplus */

#endif 	/* __CRpWidgets_FWD_DEFINED__ */


#ifndef __CRiWidgets_FWD_DEFINED__
#define __CRiWidgets_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRiWidgets CRiWidgets;
#else
typedef struct CRiWidgets CRiWidgets;
#endif /* __cplusplus */

#endif 	/* __CRiWidgets_FWD_DEFINED__ */


#ifndef __CRdWidgetActivationRequest_FWD_DEFINED__
#define __CRdWidgetActivationRequest_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRdWidgetActivationRequest CRdWidgetActivationRequest;
#else
typedef struct CRdWidgetActivationRequest CRdWidgetActivationRequest;
#endif /* __cplusplus */

#endif 	/* __CRdWidgetActivationRequest_FWD_DEFINED__ */


#ifndef __CRdWidgetMatchParameters_FWD_DEFINED__
#define __CRdWidgetMatchParameters_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRdWidgetMatchParameters CRdWidgetMatchParameters;
#else
typedef struct CRdWidgetMatchParameters CRdWidgetMatchParameters;
#endif /* __cplusplus */

#endif 	/* __CRdWidgetMatchParameters_FWD_DEFINED__ */


/* header files for imported files */
#include "_space3d.h"
#include "_windowsmanager.h"
#include "_view3d.h"

#ifdef __cplusplus
extern "C"{
#endif 

void * __RPC_USER MIDL_user_allocate(size_t);
void __RPC_USER MIDL_user_free( void * ); 

#ifndef __IRf3DToolbarSet_INTERFACE_DEFINED__
#define __IRf3DToolbarSet_INTERFACE_DEFINED__

/* interface IRf3DToolbarSet */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRf3DToolbarSet;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C153AE68-E8CE-49B1-AC6A-D140472BADCE")
    IRf3DToolbarSet : public IUnknown
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE FindOrCreate3DToolbar( 
            /* [in] */ GUID gToolbarGuid,
            /* [in] */ IRsNode *pSpaceNode,
            /* [retval][out] */ BSTR *szToolbarNode) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Add3DToolbarButton( 
            /* [in] */ BSTR szToolbarNode,
            /* [in] */ IRsNode *pButtonNode) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Remove3DToolButton( 
            /* [in] */ BSTR szButtonNode) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GenerateToolbarsIds( 
            /* [in] */ GUID gToolbarIn) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRf3DToolbarSetVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRf3DToolbarSet * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRf3DToolbarSet * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRf3DToolbarSet * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *FindOrCreate3DToolbar )( 
            IRf3DToolbarSet * This,
            /* [in] */ GUID gToolbarGuid,
            /* [in] */ IRsNode *pSpaceNode,
            /* [retval][out] */ BSTR *szToolbarNode);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Add3DToolbarButton )( 
            IRf3DToolbarSet * This,
            /* [in] */ BSTR szToolbarNode,
            /* [in] */ IRsNode *pButtonNode);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Remove3DToolButton )( 
            IRf3DToolbarSet * This,
            /* [in] */ BSTR szButtonNode);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GenerateToolbarsIds )( 
            IRf3DToolbarSet * This,
            /* [in] */ GUID gToolbarIn);
        
        END_INTERFACE
    } IRf3DToolbarSetVtbl;

    interface IRf3DToolbarSet
    {
        CONST_VTBL struct IRf3DToolbarSetVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRf3DToolbarSet_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRf3DToolbarSet_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRf3DToolbarSet_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRf3DToolbarSet_FindOrCreate3DToolbar(This,gToolbarGuid,pSpaceNode,szToolbarNode)	\
    (This)->lpVtbl -> FindOrCreate3DToolbar(This,gToolbarGuid,pSpaceNode,szToolbarNode)

#define IRf3DToolbarSet_Add3DToolbarButton(This,szToolbarNode,pButtonNode)	\
    (This)->lpVtbl -> Add3DToolbarButton(This,szToolbarNode,pButtonNode)

#define IRf3DToolbarSet_Remove3DToolButton(This,szButtonNode)	\
    (This)->lpVtbl -> Remove3DToolButton(This,szButtonNode)

#define IRf3DToolbarSet_GenerateToolbarsIds(This,gToolbarIn)	\
    (This)->lpVtbl -> GenerateToolbarsIds(This,gToolbarIn)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRf3DToolbarSet_FindOrCreate3DToolbar_Proxy( 
    IRf3DToolbarSet * This,
    /* [in] */ GUID gToolbarGuid,
    /* [in] */ IRsNode *pSpaceNode,
    /* [retval][out] */ BSTR *szToolbarNode);


void __RPC_STUB IRf3DToolbarSet_FindOrCreate3DToolbar_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRf3DToolbarSet_Add3DToolbarButton_Proxy( 
    IRf3DToolbarSet * This,
    /* [in] */ BSTR szToolbarNode,
    /* [in] */ IRsNode *pButtonNode);


void __RPC_STUB IRf3DToolbarSet_Add3DToolbarButton_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRf3DToolbarSet_Remove3DToolButton_Proxy( 
    IRf3DToolbarSet * This,
    /* [in] */ BSTR szButtonNode);


void __RPC_STUB IRf3DToolbarSet_Remove3DToolButton_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRf3DToolbarSet_GenerateToolbarsIds_Proxy( 
    IRf3DToolbarSet * This,
    /* [in] */ GUID gToolbarIn);


void __RPC_STUB IRf3DToolbarSet_GenerateToolbarsIds_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRf3DToolbarSet_INTERFACE_DEFINED__ */


#ifndef __IRsUnknownDocking_INTERFACE_DEFINED__
#define __IRsUnknownDocking_INTERFACE_DEFINED__

/* interface IRsUnknownDocking */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsUnknownDocking;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3910B28A-4815-4114-BD16-D4BB4559764C")
    IRsUnknownDocking : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDockingPosition( 
            /* [in] */ GUID *gPort,
            /* [out] */ RtVector3f *pDockingPosition) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsUnknownDockingVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsUnknownDocking * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsUnknownDocking * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsUnknownDocking * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDockingPosition )( 
            IRsUnknownDocking * This,
            /* [in] */ GUID *gPort,
            /* [out] */ RtVector3f *pDockingPosition);
        
        END_INTERFACE
    } IRsUnknownDockingVtbl;

    interface IRsUnknownDocking
    {
        CONST_VTBL struct IRsUnknownDockingVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsUnknownDocking_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsUnknownDocking_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsUnknownDocking_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsUnknownDocking_GetDockingPosition(This,gPort,pDockingPosition)	\
    (This)->lpVtbl -> GetDockingPosition(This,gPort,pDockingPosition)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsUnknownDocking_GetDockingPosition_Proxy( 
    IRsUnknownDocking * This,
    /* [in] */ GUID *gPort,
    /* [out] */ RtVector3f *pDockingPosition);


void __RPC_STUB IRsUnknownDocking_GetDockingPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsUnknownDocking_INTERFACE_DEFINED__ */


#ifndef __IRsNodeEnumerator_INTERFACE_DEFINED__
#define __IRsNodeEnumerator_INTERFACE_DEFINED__

/* interface IRsNodeEnumerator */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsNodeEnumerator;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D1F795AC-40DE-4baf-9485-066A04C07B7C")
    IRsNodeEnumerator : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetNodesCount( 
            /* [out] */ RtUlong *pCount) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetNode( 
            /* [in] */ RtUlong uIndex,
            /* [out] */ IRsBaseNode **ppNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddOutputConnections( 
            /* [in] */ IRsConnector *pConnector) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddInputConnections( 
            /* [in] */ IRsConnector *pConnector) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddOutputConnectionsDirect( 
            /* [in] */ IRsConnector *pConnector) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddInputConnectionsDirect( 
            /* [in] */ IRsConnector *pConnector) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddSubGraph( 
            /* [in] */ IRnEncapsulator *pEncapsulator) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsNodeEnumeratorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsNodeEnumerator * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsNodeEnumerator * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsNodeEnumerator * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetNodesCount )( 
            IRsNodeEnumerator * This,
            /* [out] */ RtUlong *pCount);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetNode )( 
            IRsNodeEnumerator * This,
            /* [in] */ RtUlong uIndex,
            /* [out] */ IRsBaseNode **ppNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddOutputConnections )( 
            IRsNodeEnumerator * This,
            /* [in] */ IRsConnector *pConnector);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddInputConnections )( 
            IRsNodeEnumerator * This,
            /* [in] */ IRsConnector *pConnector);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddOutputConnectionsDirect )( 
            IRsNodeEnumerator * This,
            /* [in] */ IRsConnector *pConnector);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddInputConnectionsDirect )( 
            IRsNodeEnumerator * This,
            /* [in] */ IRsConnector *pConnector);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddSubGraph )( 
            IRsNodeEnumerator * This,
            /* [in] */ IRnEncapsulator *pEncapsulator);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRsNodeEnumerator * This);
        
        END_INTERFACE
    } IRsNodeEnumeratorVtbl;

    interface IRsNodeEnumerator
    {
        CONST_VTBL struct IRsNodeEnumeratorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsNodeEnumerator_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsNodeEnumerator_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsNodeEnumerator_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsNodeEnumerator_GetNodesCount(This,pCount)	\
    (This)->lpVtbl -> GetNodesCount(This,pCount)

#define IRsNodeEnumerator_GetNode(This,uIndex,ppNode)	\
    (This)->lpVtbl -> GetNode(This,uIndex,ppNode)

#define IRsNodeEnumerator_AddOutputConnections(This,pConnector)	\
    (This)->lpVtbl -> AddOutputConnections(This,pConnector)

#define IRsNodeEnumerator_AddInputConnections(This,pConnector)	\
    (This)->lpVtbl -> AddInputConnections(This,pConnector)

#define IRsNodeEnumerator_AddOutputConnectionsDirect(This,pConnector)	\
    (This)->lpVtbl -> AddOutputConnectionsDirect(This,pConnector)

#define IRsNodeEnumerator_AddInputConnectionsDirect(This,pConnector)	\
    (This)->lpVtbl -> AddInputConnectionsDirect(This,pConnector)

#define IRsNodeEnumerator_AddSubGraph(This,pEncapsulator)	\
    (This)->lpVtbl -> AddSubGraph(This,pEncapsulator)

#define IRsNodeEnumerator_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsNodeEnumerator_GetNodesCount_Proxy( 
    IRsNodeEnumerator * This,
    /* [out] */ RtUlong *pCount);


void __RPC_STUB IRsNodeEnumerator_GetNodesCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsNodeEnumerator_GetNode_Proxy( 
    IRsNodeEnumerator * This,
    /* [in] */ RtUlong uIndex,
    /* [out] */ IRsBaseNode **ppNode);


void __RPC_STUB IRsNodeEnumerator_GetNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsNodeEnumerator_AddOutputConnections_Proxy( 
    IRsNodeEnumerator * This,
    /* [in] */ IRsConnector *pConnector);


void __RPC_STUB IRsNodeEnumerator_AddOutputConnections_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsNodeEnumerator_AddInputConnections_Proxy( 
    IRsNodeEnumerator * This,
    /* [in] */ IRsConnector *pConnector);


void __RPC_STUB IRsNodeEnumerator_AddInputConnections_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsNodeEnumerator_AddOutputConnectionsDirect_Proxy( 
    IRsNodeEnumerator * This,
    /* [in] */ IRsConnector *pConnector);


void __RPC_STUB IRsNodeEnumerator_AddOutputConnectionsDirect_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsNodeEnumerator_AddInputConnectionsDirect_Proxy( 
    IRsNodeEnumerator * This,
    /* [in] */ IRsConnector *pConnector);


void __RPC_STUB IRsNodeEnumerator_AddInputConnectionsDirect_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsNodeEnumerator_AddSubGraph_Proxy( 
    IRsNodeEnumerator * This,
    /* [in] */ IRnEncapsulator *pEncapsulator);


void __RPC_STUB IRsNodeEnumerator_AddSubGraph_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsNodeEnumerator_Clear_Proxy( 
    IRsNodeEnumerator * This);


void __RPC_STUB IRsNodeEnumerator_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsNodeEnumerator_INTERFACE_DEFINED__ */


#ifndef __IRdInputState_INTERFACE_DEFINED__
#define __IRdInputState_INTERFACE_DEFINED__

/* interface IRdInputState */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRdInputState;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("954EE9A0-ACB1-4FA9-9914-37C62A2DA4DB")
    IRdInputState : public IRsObject
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetKeyState( 
            /* [in] */ RtUlong uKey,
            /* [out] */ RtBool *pPressed) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetMouseState( 
            /* [out] */ RtMouseEvent *pMouseState) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSequenceStart( 
            /* [out] */ RtBool *pbSequenceStart) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMouseState( 
            /* [in] */ RtMouseEvent *pMouseState) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetViewNode( 
            /* [in] */ IRsNode *pViewNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSequenceStart( 
            /* [in] */ RtBool bSequencsStart) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdInputStateVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdInputState * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdInputState * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdInputState * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRdInputState * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRdInputState * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetKeyState )( 
            IRdInputState * This,
            /* [in] */ RtUlong uKey,
            /* [out] */ RtBool *pPressed);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetMouseState )( 
            IRdInputState * This,
            /* [out] */ RtMouseEvent *pMouseState);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSequenceStart )( 
            IRdInputState * This,
            /* [out] */ RtBool *pbSequenceStart);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetMouseState )( 
            IRdInputState * This,
            /* [in] */ RtMouseEvent *pMouseState);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetViewNode )( 
            IRdInputState * This,
            /* [in] */ IRsNode *pViewNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSequenceStart )( 
            IRdInputState * This,
            /* [in] */ RtBool bSequencsStart);
        
        END_INTERFACE
    } IRdInputStateVtbl;

    interface IRdInputState
    {
        CONST_VTBL struct IRdInputStateVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdInputState_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdInputState_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdInputState_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdInputState_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRdInputState_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#define IRdInputState_GetKeyState(This,uKey,pPressed)	\
    (This)->lpVtbl -> GetKeyState(This,uKey,pPressed)

#define IRdInputState_GetMouseState(This,pMouseState)	\
    (This)->lpVtbl -> GetMouseState(This,pMouseState)

#define IRdInputState_GetSequenceStart(This,pbSequenceStart)	\
    (This)->lpVtbl -> GetSequenceStart(This,pbSequenceStart)

#define IRdInputState_SetMouseState(This,pMouseState)	\
    (This)->lpVtbl -> SetMouseState(This,pMouseState)

#define IRdInputState_SetViewNode(This,pViewNode)	\
    (This)->lpVtbl -> SetViewNode(This,pViewNode)

#define IRdInputState_SetSequenceStart(This,bSequencsStart)	\
    (This)->lpVtbl -> SetSequenceStart(This,bSequencsStart)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdInputState_GetKeyState_Proxy( 
    IRdInputState * This,
    /* [in] */ RtUlong uKey,
    /* [out] */ RtBool *pPressed);


void __RPC_STUB IRdInputState_GetKeyState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdInputState_GetMouseState_Proxy( 
    IRdInputState * This,
    /* [out] */ RtMouseEvent *pMouseState);


void __RPC_STUB IRdInputState_GetMouseState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdInputState_GetSequenceStart_Proxy( 
    IRdInputState * This,
    /* [out] */ RtBool *pbSequenceStart);


void __RPC_STUB IRdInputState_GetSequenceStart_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdInputState_SetMouseState_Proxy( 
    IRdInputState * This,
    /* [in] */ RtMouseEvent *pMouseState);


void __RPC_STUB IRdInputState_SetMouseState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdInputState_SetViewNode_Proxy( 
    IRdInputState * This,
    /* [in] */ IRsNode *pViewNode);


void __RPC_STUB IRdInputState_SetViewNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdInputState_SetSequenceStart_Proxy( 
    IRdInputState * This,
    /* [in] */ RtBool bSequencsStart);


void __RPC_STUB IRdInputState_SetSequenceStart_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdInputState_INTERFACE_DEFINED__ */


#ifndef __IRdWidgetParameters_INTERFACE_DEFINED__
#define __IRdWidgetParameters_INTERFACE_DEFINED__

/* interface IRdWidgetParameters */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRdWidgetParameters;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FEC3E81B-4157-4DA0-9779-64BD8359075F")
    IRdWidgetParameters : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetControlledNodesCount( 
            /* [out] */ RtUlong *pCount) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetControlledNodeName( 
            /* [in] */ RtUlong uIndex,
            /* [out] */ BSTR *pControlledNodeName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetWidgetDisplacement( 
            /* [out] */ RtMatrixf *pWidgetTransformDisplacement) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetWidgetDisplacement( 
            /* [in] */ RtMatrixf *pWidgetTransformDisplacement) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ResetControlledNodes( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddControlledNodeName( 
            /* [in] */ BSTR szControlledNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveControlledNode( 
            /* [in] */ IRsNode *pNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetParameters( 
            /* [in] */ BSTR bstrParameters) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetParameters( 
            /* [out] */ BSTR *pbstrParameters) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UpdateNodeName( 
            /* [in] */ IRsNode *pChangedNode,
            /* [in] */ BSTR bNodeName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UpdateNodeRemoved( 
            /* [in] */ IRsNode *pRemovedNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetControlledNodeNames( 
            /* [out] */ BSTR *pbPackedNodesList) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetControlledNodes( 
            /* [in] */ BSTR bPackedNodesList) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetControlledNodes( 
            /* [retval][out] */ IRsObjectList **ppObjectList) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetControlledNode( 
            /* [in] */ RtUlong uIndex,
            /* [out] */ IRsNode **pControlledNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddControlledNode( 
            /* [in] */ IRsNode *pControlledNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE PrepareToDeactivate( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdWidgetParametersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdWidgetParameters * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdWidgetParameters * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdWidgetParameters * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetControlledNodesCount )( 
            IRdWidgetParameters * This,
            /* [out] */ RtUlong *pCount);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetControlledNodeName )( 
            IRdWidgetParameters * This,
            /* [in] */ RtUlong uIndex,
            /* [out] */ BSTR *pControlledNodeName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetWidgetDisplacement )( 
            IRdWidgetParameters * This,
            /* [out] */ RtMatrixf *pWidgetTransformDisplacement);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetWidgetDisplacement )( 
            IRdWidgetParameters * This,
            /* [in] */ RtMatrixf *pWidgetTransformDisplacement);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ResetControlledNodes )( 
            IRdWidgetParameters * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddControlledNodeName )( 
            IRdWidgetParameters * This,
            /* [in] */ BSTR szControlledNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveControlledNode )( 
            IRdWidgetParameters * This,
            /* [in] */ IRsNode *pNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetParameters )( 
            IRdWidgetParameters * This,
            /* [in] */ BSTR bstrParameters);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetParameters )( 
            IRdWidgetParameters * This,
            /* [out] */ BSTR *pbstrParameters);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UpdateNodeName )( 
            IRdWidgetParameters * This,
            /* [in] */ IRsNode *pChangedNode,
            /* [in] */ BSTR bNodeName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UpdateNodeRemoved )( 
            IRdWidgetParameters * This,
            /* [in] */ IRsNode *pRemovedNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetControlledNodeNames )( 
            IRdWidgetParameters * This,
            /* [out] */ BSTR *pbPackedNodesList);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetControlledNodes )( 
            IRdWidgetParameters * This,
            /* [in] */ BSTR bPackedNodesList);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetControlledNodes )( 
            IRdWidgetParameters * This,
            /* [retval][out] */ IRsObjectList **ppObjectList);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetControlledNode )( 
            IRdWidgetParameters * This,
            /* [in] */ RtUlong uIndex,
            /* [out] */ IRsNode **pControlledNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddControlledNode )( 
            IRdWidgetParameters * This,
            /* [in] */ IRsNode *pControlledNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *PrepareToDeactivate )( 
            IRdWidgetParameters * This);
        
        END_INTERFACE
    } IRdWidgetParametersVtbl;

    interface IRdWidgetParameters
    {
        CONST_VTBL struct IRdWidgetParametersVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdWidgetParameters_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdWidgetParameters_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdWidgetParameters_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdWidgetParameters_GetControlledNodesCount(This,pCount)	\
    (This)->lpVtbl -> GetControlledNodesCount(This,pCount)

#define IRdWidgetParameters_GetControlledNodeName(This,uIndex,pControlledNodeName)	\
    (This)->lpVtbl -> GetControlledNodeName(This,uIndex,pControlledNodeName)

#define IRdWidgetParameters_GetWidgetDisplacement(This,pWidgetTransformDisplacement)	\
    (This)->lpVtbl -> GetWidgetDisplacement(This,pWidgetTransformDisplacement)

#define IRdWidgetParameters_SetWidgetDisplacement(This,pWidgetTransformDisplacement)	\
    (This)->lpVtbl -> SetWidgetDisplacement(This,pWidgetTransformDisplacement)

#define IRdWidgetParameters_ResetControlledNodes(This)	\
    (This)->lpVtbl -> ResetControlledNodes(This)

#define IRdWidgetParameters_AddControlledNodeName(This,szControlledNode)	\
    (This)->lpVtbl -> AddControlledNodeName(This,szControlledNode)

#define IRdWidgetParameters_RemoveControlledNode(This,pNode)	\
    (This)->lpVtbl -> RemoveControlledNode(This,pNode)

#define IRdWidgetParameters_SetParameters(This,bstrParameters)	\
    (This)->lpVtbl -> SetParameters(This,bstrParameters)

#define IRdWidgetParameters_GetParameters(This,pbstrParameters)	\
    (This)->lpVtbl -> GetParameters(This,pbstrParameters)

#define IRdWidgetParameters_UpdateNodeName(This,pChangedNode,bNodeName)	\
    (This)->lpVtbl -> UpdateNodeName(This,pChangedNode,bNodeName)

#define IRdWidgetParameters_UpdateNodeRemoved(This,pRemovedNode)	\
    (This)->lpVtbl -> UpdateNodeRemoved(This,pRemovedNode)

#define IRdWidgetParameters_GetControlledNodeNames(This,pbPackedNodesList)	\
    (This)->lpVtbl -> GetControlledNodeNames(This,pbPackedNodesList)

#define IRdWidgetParameters_SetControlledNodes(This,bPackedNodesList)	\
    (This)->lpVtbl -> SetControlledNodes(This,bPackedNodesList)

#define IRdWidgetParameters_GetControlledNodes(This,ppObjectList)	\
    (This)->lpVtbl -> GetControlledNodes(This,ppObjectList)

#define IRdWidgetParameters_GetControlledNode(This,uIndex,pControlledNode)	\
    (This)->lpVtbl -> GetControlledNode(This,uIndex,pControlledNode)

#define IRdWidgetParameters_AddControlledNode(This,pControlledNode)	\
    (This)->lpVtbl -> AddControlledNode(This,pControlledNode)

#define IRdWidgetParameters_PrepareToDeactivate(This)	\
    (This)->lpVtbl -> PrepareToDeactivate(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_GetControlledNodesCount_Proxy( 
    IRdWidgetParameters * This,
    /* [out] */ RtUlong *pCount);


void __RPC_STUB IRdWidgetParameters_GetControlledNodesCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_GetControlledNodeName_Proxy( 
    IRdWidgetParameters * This,
    /* [in] */ RtUlong uIndex,
    /* [out] */ BSTR *pControlledNodeName);


void __RPC_STUB IRdWidgetParameters_GetControlledNodeName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_GetWidgetDisplacement_Proxy( 
    IRdWidgetParameters * This,
    /* [out] */ RtMatrixf *pWidgetTransformDisplacement);


void __RPC_STUB IRdWidgetParameters_GetWidgetDisplacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_SetWidgetDisplacement_Proxy( 
    IRdWidgetParameters * This,
    /* [in] */ RtMatrixf *pWidgetTransformDisplacement);


void __RPC_STUB IRdWidgetParameters_SetWidgetDisplacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_ResetControlledNodes_Proxy( 
    IRdWidgetParameters * This);


void __RPC_STUB IRdWidgetParameters_ResetControlledNodes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_AddControlledNodeName_Proxy( 
    IRdWidgetParameters * This,
    /* [in] */ BSTR szControlledNode);


void __RPC_STUB IRdWidgetParameters_AddControlledNodeName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_RemoveControlledNode_Proxy( 
    IRdWidgetParameters * This,
    /* [in] */ IRsNode *pNode);


void __RPC_STUB IRdWidgetParameters_RemoveControlledNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_SetParameters_Proxy( 
    IRdWidgetParameters * This,
    /* [in] */ BSTR bstrParameters);


void __RPC_STUB IRdWidgetParameters_SetParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_GetParameters_Proxy( 
    IRdWidgetParameters * This,
    /* [out] */ BSTR *pbstrParameters);


void __RPC_STUB IRdWidgetParameters_GetParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_UpdateNodeName_Proxy( 
    IRdWidgetParameters * This,
    /* [in] */ IRsNode *pChangedNode,
    /* [in] */ BSTR bNodeName);


void __RPC_STUB IRdWidgetParameters_UpdateNodeName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_UpdateNodeRemoved_Proxy( 
    IRdWidgetParameters * This,
    /* [in] */ IRsNode *pRemovedNode);


void __RPC_STUB IRdWidgetParameters_UpdateNodeRemoved_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_GetControlledNodeNames_Proxy( 
    IRdWidgetParameters * This,
    /* [out] */ BSTR *pbPackedNodesList);


void __RPC_STUB IRdWidgetParameters_GetControlledNodeNames_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_SetControlledNodes_Proxy( 
    IRdWidgetParameters * This,
    /* [in] */ BSTR bPackedNodesList);


void __RPC_STUB IRdWidgetParameters_SetControlledNodes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_GetControlledNodes_Proxy( 
    IRdWidgetParameters * This,
    /* [retval][out] */ IRsObjectList **ppObjectList);


void __RPC_STUB IRdWidgetParameters_GetControlledNodes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_GetControlledNode_Proxy( 
    IRdWidgetParameters * This,
    /* [in] */ RtUlong uIndex,
    /* [out] */ IRsNode **pControlledNode);


void __RPC_STUB IRdWidgetParameters_GetControlledNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_AddControlledNode_Proxy( 
    IRdWidgetParameters * This,
    /* [in] */ IRsNode *pControlledNode);


void __RPC_STUB IRdWidgetParameters_AddControlledNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetParameters_PrepareToDeactivate_Proxy( 
    IRdWidgetParameters * This);


void __RPC_STUB IRdWidgetParameters_PrepareToDeactivate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdWidgetParameters_INTERFACE_DEFINED__ */


#ifndef __IRsWidgetComponent_INTERFACE_DEFINED__
#define __IRsWidgetComponent_INTERFACE_DEFINED__

/* interface IRsWidgetComponent */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsWidgetComponent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5CD88585-9A2A-41A7-AFBC-D498C4B59CAA")
    IRsWidgetComponent : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EnumRequiredNodes( 
            /* [in] */ IRsNodeEnumerator *pEnum) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EnumConnectedNodes( 
            /* [in] */ IRsNodeEnumerator *pEnum) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetActiveWidget( 
            /* [in] */ IRsBaseNode *pWidget) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetTemplateNode( 
            /* [in] */ IRsBaseNode *pNode) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsWidgetComponentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsWidgetComponent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsWidgetComponent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsWidgetComponent * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EnumRequiredNodes )( 
            IRsWidgetComponent * This,
            /* [in] */ IRsNodeEnumerator *pEnum);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EnumConnectedNodes )( 
            IRsWidgetComponent * This,
            /* [in] */ IRsNodeEnumerator *pEnum);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetActiveWidget )( 
            IRsWidgetComponent * This,
            /* [in] */ IRsBaseNode *pWidget);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetTemplateNode )( 
            IRsWidgetComponent * This,
            /* [in] */ IRsBaseNode *pNode);
        
        END_INTERFACE
    } IRsWidgetComponentVtbl;

    interface IRsWidgetComponent
    {
        CONST_VTBL struct IRsWidgetComponentVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsWidgetComponent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsWidgetComponent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsWidgetComponent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsWidgetComponent_EnumRequiredNodes(This,pEnum)	\
    (This)->lpVtbl -> EnumRequiredNodes(This,pEnum)

#define IRsWidgetComponent_EnumConnectedNodes(This,pEnum)	\
    (This)->lpVtbl -> EnumConnectedNodes(This,pEnum)

#define IRsWidgetComponent_SetActiveWidget(This,pWidget)	\
    (This)->lpVtbl -> SetActiveWidget(This,pWidget)

#define IRsWidgetComponent_SetTemplateNode(This,pNode)	\
    (This)->lpVtbl -> SetTemplateNode(This,pNode)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetComponent_EnumRequiredNodes_Proxy( 
    IRsWidgetComponent * This,
    /* [in] */ IRsNodeEnumerator *pEnum);


void __RPC_STUB IRsWidgetComponent_EnumRequiredNodes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetComponent_EnumConnectedNodes_Proxy( 
    IRsWidgetComponent * This,
    /* [in] */ IRsNodeEnumerator *pEnum);


void __RPC_STUB IRsWidgetComponent_EnumConnectedNodes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetComponent_SetActiveWidget_Proxy( 
    IRsWidgetComponent * This,
    /* [in] */ IRsBaseNode *pWidget);


void __RPC_STUB IRsWidgetComponent_SetActiveWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetComponent_SetTemplateNode_Proxy( 
    IRsWidgetComponent * This,
    /* [in] */ IRsBaseNode *pNode);


void __RPC_STUB IRsWidgetComponent_SetTemplateNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsWidgetComponent_INTERFACE_DEFINED__ */


#ifndef __IRsUnknownCoordinateSystem_INTERFACE_DEFINED__
#define __IRsUnknownCoordinateSystem_INTERFACE_DEFINED__

/* interface IRsUnknownCoordinateSystem */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsUnknownCoordinateSystem;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1F83273E-884A-402D-805E-F272C77419DF")
    IRsUnknownCoordinateSystem : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCoordinateSystem( 
            /* [in] */ GUID *guid,
            /* [out] */ RtMatrixf *pMatrix) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCoordinateSystemScaling( 
            /* [in] */ GUID *guid,
            /* [out] */ RtVector4f *pScalePlane) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCoordinateSystemViewDependence( 
            /* [in] */ GUID *guid,
            /* [out] */ RtBool *pbDependent) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsUnknownCoordinateSystemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsUnknownCoordinateSystem * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsUnknownCoordinateSystem * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsUnknownCoordinateSystem * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCoordinateSystem )( 
            IRsUnknownCoordinateSystem * This,
            /* [in] */ GUID *guid,
            /* [out] */ RtMatrixf *pMatrix);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCoordinateSystemScaling )( 
            IRsUnknownCoordinateSystem * This,
            /* [in] */ GUID *guid,
            /* [out] */ RtVector4f *pScalePlane);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCoordinateSystemViewDependence )( 
            IRsUnknownCoordinateSystem * This,
            /* [in] */ GUID *guid,
            /* [out] */ RtBool *pbDependent);
        
        END_INTERFACE
    } IRsUnknownCoordinateSystemVtbl;

    interface IRsUnknownCoordinateSystem
    {
        CONST_VTBL struct IRsUnknownCoordinateSystemVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsUnknownCoordinateSystem_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsUnknownCoordinateSystem_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsUnknownCoordinateSystem_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsUnknownCoordinateSystem_GetCoordinateSystem(This,guid,pMatrix)	\
    (This)->lpVtbl -> GetCoordinateSystem(This,guid,pMatrix)

#define IRsUnknownCoordinateSystem_GetCoordinateSystemScaling(This,guid,pScalePlane)	\
    (This)->lpVtbl -> GetCoordinateSystemScaling(This,guid,pScalePlane)

#define IRsUnknownCoordinateSystem_GetCoordinateSystemViewDependence(This,guid,pbDependent)	\
    (This)->lpVtbl -> GetCoordinateSystemViewDependence(This,guid,pbDependent)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsUnknownCoordinateSystem_GetCoordinateSystem_Proxy( 
    IRsUnknownCoordinateSystem * This,
    /* [in] */ GUID *guid,
    /* [out] */ RtMatrixf *pMatrix);


void __RPC_STUB IRsUnknownCoordinateSystem_GetCoordinateSystem_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsUnknownCoordinateSystem_GetCoordinateSystemScaling_Proxy( 
    IRsUnknownCoordinateSystem * This,
    /* [in] */ GUID *guid,
    /* [out] */ RtVector4f *pScalePlane);


void __RPC_STUB IRsUnknownCoordinateSystem_GetCoordinateSystemScaling_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsUnknownCoordinateSystem_GetCoordinateSystemViewDependence_Proxy( 
    IRsUnknownCoordinateSystem * This,
    /* [in] */ GUID *guid,
    /* [out] */ RtBool *pbDependent);


void __RPC_STUB IRsUnknownCoordinateSystem_GetCoordinateSystemViewDependence_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsUnknownCoordinateSystem_INTERFACE_DEFINED__ */


#ifndef __IRnWidgetAspect_INTERFACE_DEFINED__
#define __IRnWidgetAspect_INTERFACE_DEFINED__

/* interface IRnWidgetAspect */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnWidgetAspect;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("996E43B3-667F-4521-9732-294F3D2EFAE8")
    IRnWidgetAspect : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetAspectName( 
            /* [out] */ BSTR *pAspectName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDefaultCoordinateSystemConnector( 
            /* [out] */ CONID *pConID,
            /* [out] */ IRsUnknownCoordinateSystem **ppCoordSystem) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCachableStatus( 
            /* [retval][out] */ BOOL *pCachable) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetRenderToFront( 
            /* [retval][out] */ BOOL *pRenderFront) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetShowInAllContexts( 
            /* [retval][out] */ BOOL *pShowInAllContexts) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRnWidgetAspectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnWidgetAspect * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnWidgetAspect * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnWidgetAspect * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetAspectName )( 
            IRnWidgetAspect * This,
            /* [out] */ BSTR *pAspectName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDefaultCoordinateSystemConnector )( 
            IRnWidgetAspect * This,
            /* [out] */ CONID *pConID,
            /* [out] */ IRsUnknownCoordinateSystem **ppCoordSystem);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCachableStatus )( 
            IRnWidgetAspect * This,
            /* [retval][out] */ BOOL *pCachable);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetRenderToFront )( 
            IRnWidgetAspect * This,
            /* [retval][out] */ BOOL *pRenderFront);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetShowInAllContexts )( 
            IRnWidgetAspect * This,
            /* [retval][out] */ BOOL *pShowInAllContexts);
        
        END_INTERFACE
    } IRnWidgetAspectVtbl;

    interface IRnWidgetAspect
    {
        CONST_VTBL struct IRnWidgetAspectVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnWidgetAspect_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnWidgetAspect_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnWidgetAspect_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRnWidgetAspect_GetAspectName(This,pAspectName)	\
    (This)->lpVtbl -> GetAspectName(This,pAspectName)

#define IRnWidgetAspect_GetDefaultCoordinateSystemConnector(This,pConID,ppCoordSystem)	\
    (This)->lpVtbl -> GetDefaultCoordinateSystemConnector(This,pConID,ppCoordSystem)

#define IRnWidgetAspect_GetCachableStatus(This,pCachable)	\
    (This)->lpVtbl -> GetCachableStatus(This,pCachable)

#define IRnWidgetAspect_GetRenderToFront(This,pRenderFront)	\
    (This)->lpVtbl -> GetRenderToFront(This,pRenderFront)

#define IRnWidgetAspect_GetShowInAllContexts(This,pShowInAllContexts)	\
    (This)->lpVtbl -> GetShowInAllContexts(This,pShowInAllContexts)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetAspect_GetAspectName_Proxy( 
    IRnWidgetAspect * This,
    /* [out] */ BSTR *pAspectName);


void __RPC_STUB IRnWidgetAspect_GetAspectName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetAspect_GetDefaultCoordinateSystemConnector_Proxy( 
    IRnWidgetAspect * This,
    /* [out] */ CONID *pConID,
    /* [out] */ IRsUnknownCoordinateSystem **ppCoordSystem);


void __RPC_STUB IRnWidgetAspect_GetDefaultCoordinateSystemConnector_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetAspect_GetCachableStatus_Proxy( 
    IRnWidgetAspect * This,
    /* [retval][out] */ BOOL *pCachable);


void __RPC_STUB IRnWidgetAspect_GetCachableStatus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetAspect_GetRenderToFront_Proxy( 
    IRnWidgetAspect * This,
    /* [retval][out] */ BOOL *pRenderFront);


void __RPC_STUB IRnWidgetAspect_GetRenderToFront_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetAspect_GetShowInAllContexts_Proxy( 
    IRnWidgetAspect * This,
    /* [retval][out] */ BOOL *pShowInAllContexts);


void __RPC_STUB IRnWidgetAspect_GetShowInAllContexts_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRnWidgetAspect_INTERFACE_DEFINED__ */


#ifndef __IRnWidget_INTERFACE_DEFINED__
#define __IRnWidget_INTERFACE_DEFINED__

/* interface IRnWidget */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnWidget;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("33A70A6B-5690-490A-B722-15B1B0A9F4E7")
    IRnWidget : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE FindWidgetController( 
            /* [in] */ BSTR bAspectName,
            /* [out] */ IRnWidgetAspect **controller) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetLocalTimestamp( 
            /* [retval][out] */ RtUlong *puTimestamp) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRnWidgetVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnWidget * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnWidget * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnWidget * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *FindWidgetController )( 
            IRnWidget * This,
            /* [in] */ BSTR bAspectName,
            /* [out] */ IRnWidgetAspect **controller);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetLocalTimestamp )( 
            IRnWidget * This,
            /* [retval][out] */ RtUlong *puTimestamp);
        
        END_INTERFACE
    } IRnWidgetVtbl;

    interface IRnWidget
    {
        CONST_VTBL struct IRnWidgetVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnWidget_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnWidget_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnWidget_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRnWidget_FindWidgetController(This,bAspectName,controller)	\
    (This)->lpVtbl -> FindWidgetController(This,bAspectName,controller)

#define IRnWidget_GetLocalTimestamp(This,puTimestamp)	\
    (This)->lpVtbl -> GetLocalTimestamp(This,puTimestamp)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidget_FindWidgetController_Proxy( 
    IRnWidget * This,
    /* [in] */ BSTR bAspectName,
    /* [out] */ IRnWidgetAspect **controller);


void __RPC_STUB IRnWidget_FindWidgetController_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidget_GetLocalTimestamp_Proxy( 
    IRnWidget * This,
    /* [retval][out] */ RtUlong *puTimestamp);


void __RPC_STUB IRnWidget_GetLocalTimestamp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRnWidget_INTERFACE_DEFINED__ */


#ifndef __IRsSelectionChangedNotify_INTERFACE_DEFINED__
#define __IRsSelectionChangedNotify_INTERFACE_DEFINED__

/* interface IRsSelectionChangedNotify */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsSelectionChangedNotify;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4F573A83-D479-4248-9BE7-63EFFD8FE397")
    IRsSelectionChangedNotify : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SyncSelectionChanged( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsSelectionChangedNotifyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsSelectionChangedNotify * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsSelectionChangedNotify * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsSelectionChangedNotify * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SyncSelectionChanged )( 
            IRsSelectionChangedNotify * This);
        
        END_INTERFACE
    } IRsSelectionChangedNotifyVtbl;

    interface IRsSelectionChangedNotify
    {
        CONST_VTBL struct IRsSelectionChangedNotifyVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsSelectionChangedNotify_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsSelectionChangedNotify_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsSelectionChangedNotify_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsSelectionChangedNotify_SyncSelectionChanged(This)	\
    (This)->lpVtbl -> SyncSelectionChanged(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsSelectionChangedNotify_SyncSelectionChanged_Proxy( 
    IRsSelectionChangedNotify * This);


void __RPC_STUB IRsSelectionChangedNotify_SyncSelectionChanged_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsSelectionChangedNotify_INTERFACE_DEFINED__ */


#ifndef __IRdWidgetViewportParameters_INTERFACE_DEFINED__
#define __IRdWidgetViewportParameters_INTERFACE_DEFINED__

/* interface IRdWidgetViewportParameters */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRdWidgetViewportParameters;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DD626F33-D9A0-4FF6-8A47-1B8560D1B715")
    IRdWidgetViewportParameters : public IRsObject
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetOwner( 
            /* [in] */ IRsUnknownNode *pOwner) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCameraTransformMatrix( 
            /* [out] */ RtMatrixf *pTransformMatrix) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCameraTransformMatrixInv( 
            /* [out] */ RtMatrixf *pTransformMatrix) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCameraProjectionMatrix( 
            /* [out] */ RtMatrixf *pProjectionMatrix) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCameraPosition( 
            /* [out] */ RtVector3f *pCameraPosition) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCameraNearPlane( 
            /* [out] */ RtVector4f *pCameraNearPlane) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetRenderTargetInfo( 
            /* [out] */ struct RtRenderTargetInfo *pRenderTargetInfo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetLayerInfo( 
            /* [out] */ struct RtLayerInfo *pLayerInfo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetRay( 
            /* [in] */ int x,
            /* [in] */ int y,
            /* [out] */ RtPoint *position,
            /* [out] */ RtVector3f *ray) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCameraProjectionMatrixScreen( 
            /* [out] */ RtMatrixf *pProjectionMatrix) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdWidgetViewportParametersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdWidgetViewportParameters * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdWidgetViewportParameters * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdWidgetViewportParameters * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRdWidgetViewportParameters * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRdWidgetViewportParameters * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetOwner )( 
            IRdWidgetViewportParameters * This,
            /* [in] */ IRsUnknownNode *pOwner);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCameraTransformMatrix )( 
            IRdWidgetViewportParameters * This,
            /* [out] */ RtMatrixf *pTransformMatrix);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCameraTransformMatrixInv )( 
            IRdWidgetViewportParameters * This,
            /* [out] */ RtMatrixf *pTransformMatrix);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCameraProjectionMatrix )( 
            IRdWidgetViewportParameters * This,
            /* [out] */ RtMatrixf *pProjectionMatrix);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCameraPosition )( 
            IRdWidgetViewportParameters * This,
            /* [out] */ RtVector3f *pCameraPosition);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCameraNearPlane )( 
            IRdWidgetViewportParameters * This,
            /* [out] */ RtVector4f *pCameraNearPlane);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetRenderTargetInfo )( 
            IRdWidgetViewportParameters * This,
            /* [out] */ struct RtRenderTargetInfo *pRenderTargetInfo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetLayerInfo )( 
            IRdWidgetViewportParameters * This,
            /* [out] */ struct RtLayerInfo *pLayerInfo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetRay )( 
            IRdWidgetViewportParameters * This,
            /* [in] */ int x,
            /* [in] */ int y,
            /* [out] */ RtPoint *position,
            /* [out] */ RtVector3f *ray);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCameraProjectionMatrixScreen )( 
            IRdWidgetViewportParameters * This,
            /* [out] */ RtMatrixf *pProjectionMatrix);
        
        END_INTERFACE
    } IRdWidgetViewportParametersVtbl;

    interface IRdWidgetViewportParameters
    {
        CONST_VTBL struct IRdWidgetViewportParametersVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdWidgetViewportParameters_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdWidgetViewportParameters_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdWidgetViewportParameters_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdWidgetViewportParameters_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRdWidgetViewportParameters_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#define IRdWidgetViewportParameters_SetOwner(This,pOwner)	\
    (This)->lpVtbl -> SetOwner(This,pOwner)

#define IRdWidgetViewportParameters_GetCameraTransformMatrix(This,pTransformMatrix)	\
    (This)->lpVtbl -> GetCameraTransformMatrix(This,pTransformMatrix)

#define IRdWidgetViewportParameters_GetCameraTransformMatrixInv(This,pTransformMatrix)	\
    (This)->lpVtbl -> GetCameraTransformMatrixInv(This,pTransformMatrix)

#define IRdWidgetViewportParameters_GetCameraProjectionMatrix(This,pProjectionMatrix)	\
    (This)->lpVtbl -> GetCameraProjectionMatrix(This,pProjectionMatrix)

#define IRdWidgetViewportParameters_GetCameraPosition(This,pCameraPosition)	\
    (This)->lpVtbl -> GetCameraPosition(This,pCameraPosition)

#define IRdWidgetViewportParameters_GetCameraNearPlane(This,pCameraNearPlane)	\
    (This)->lpVtbl -> GetCameraNearPlane(This,pCameraNearPlane)

#define IRdWidgetViewportParameters_GetRenderTargetInfo(This,pRenderTargetInfo)	\
    (This)->lpVtbl -> GetRenderTargetInfo(This,pRenderTargetInfo)

#define IRdWidgetViewportParameters_GetLayerInfo(This,pLayerInfo)	\
    (This)->lpVtbl -> GetLayerInfo(This,pLayerInfo)

#define IRdWidgetViewportParameters_GetRay(This,x,y,position,ray)	\
    (This)->lpVtbl -> GetRay(This,x,y,position,ray)

#define IRdWidgetViewportParameters_GetCameraProjectionMatrixScreen(This,pProjectionMatrix)	\
    (This)->lpVtbl -> GetCameraProjectionMatrixScreen(This,pProjectionMatrix)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetViewportParameters_SetOwner_Proxy( 
    IRdWidgetViewportParameters * This,
    /* [in] */ IRsUnknownNode *pOwner);


void __RPC_STUB IRdWidgetViewportParameters_SetOwner_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetViewportParameters_GetCameraTransformMatrix_Proxy( 
    IRdWidgetViewportParameters * This,
    /* [out] */ RtMatrixf *pTransformMatrix);


void __RPC_STUB IRdWidgetViewportParameters_GetCameraTransformMatrix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetViewportParameters_GetCameraTransformMatrixInv_Proxy( 
    IRdWidgetViewportParameters * This,
    /* [out] */ RtMatrixf *pTransformMatrix);


void __RPC_STUB IRdWidgetViewportParameters_GetCameraTransformMatrixInv_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetViewportParameters_GetCameraProjectionMatrix_Proxy( 
    IRdWidgetViewportParameters * This,
    /* [out] */ RtMatrixf *pProjectionMatrix);


void __RPC_STUB IRdWidgetViewportParameters_GetCameraProjectionMatrix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetViewportParameters_GetCameraPosition_Proxy( 
    IRdWidgetViewportParameters * This,
    /* [out] */ RtVector3f *pCameraPosition);


void __RPC_STUB IRdWidgetViewportParameters_GetCameraPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetViewportParameters_GetCameraNearPlane_Proxy( 
    IRdWidgetViewportParameters * This,
    /* [out] */ RtVector4f *pCameraNearPlane);


void __RPC_STUB IRdWidgetViewportParameters_GetCameraNearPlane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetViewportParameters_GetRenderTargetInfo_Proxy( 
    IRdWidgetViewportParameters * This,
    /* [out] */ struct RtRenderTargetInfo *pRenderTargetInfo);


void __RPC_STUB IRdWidgetViewportParameters_GetRenderTargetInfo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetViewportParameters_GetLayerInfo_Proxy( 
    IRdWidgetViewportParameters * This,
    /* [out] */ struct RtLayerInfo *pLayerInfo);


void __RPC_STUB IRdWidgetViewportParameters_GetLayerInfo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetViewportParameters_GetRay_Proxy( 
    IRdWidgetViewportParameters * This,
    /* [in] */ int x,
    /* [in] */ int y,
    /* [out] */ RtPoint *position,
    /* [out] */ RtVector3f *ray);


void __RPC_STUB IRdWidgetViewportParameters_GetRay_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetViewportParameters_GetCameraProjectionMatrixScreen_Proxy( 
    IRdWidgetViewportParameters * This,
    /* [out] */ RtMatrixf *pProjectionMatrix);


void __RPC_STUB IRdWidgetViewportParameters_GetCameraProjectionMatrixScreen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdWidgetViewportParameters_INTERFACE_DEFINED__ */


/* interface __MIDL_itf__Widgets_2206 */
/* [local] */ 

struct RtWidgetToolEvent
    {
    RtMouseEvent m_MouseEvent;
    IRsNode *m_pViewNode;
    IRsNode *m_pShapeTransformNode;
    RtMatrixf m_ShapeTransform;
    RtMatrixf m_OperationTransfrom;
    RtMatrixf m_TransformMatrix;
    RtMatrixf m_CoordSysTransform;
    RtMatrixf m_CurrentShapeTransform;
    RtMatrixf m_CurrentOperationTransfrom;
    RtMatrixf m_CurrentTransformMatrix;
    RtMatrixf m_CurrentCoordSysTransform;
    RtBool m_bAxesSwap[ 3 ];
    } ;


extern RPC_IF_HANDLE __MIDL_itf__Widgets_2206_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf__Widgets_2206_v0_0_s_ifspec;

#ifndef __IRsWidgetTool_INTERFACE_DEFINED__
#define __IRsWidgetTool_INTERFACE_DEFINED__

/* interface IRsWidgetTool */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsWidgetTool;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("767594E1-3F53-4513-B96D-9A39605B7508")
    IRsWidgetTool : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE WidgetToolActivate( 
            /* [in] */ IRcUndoRedoGroup *pUndoRedo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE WidgetToolDeactivate( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE WidgetToolUpdate( 
            /* [in] */ struct RtWidgetToolEvent *pEvent) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE WidgetToolSetup( 
            /* [in] */ struct RtWidgetToolEvent *pEvent) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsWidgetToolVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsWidgetTool * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsWidgetTool * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsWidgetTool * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *WidgetToolActivate )( 
            IRsWidgetTool * This,
            /* [in] */ IRcUndoRedoGroup *pUndoRedo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *WidgetToolDeactivate )( 
            IRsWidgetTool * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *WidgetToolUpdate )( 
            IRsWidgetTool * This,
            /* [in] */ struct RtWidgetToolEvent *pEvent);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *WidgetToolSetup )( 
            IRsWidgetTool * This,
            /* [in] */ struct RtWidgetToolEvent *pEvent);
        
        END_INTERFACE
    } IRsWidgetToolVtbl;

    interface IRsWidgetTool
    {
        CONST_VTBL struct IRsWidgetToolVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsWidgetTool_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsWidgetTool_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsWidgetTool_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsWidgetTool_WidgetToolActivate(This,pUndoRedo)	\
    (This)->lpVtbl -> WidgetToolActivate(This,pUndoRedo)

#define IRsWidgetTool_WidgetToolDeactivate(This)	\
    (This)->lpVtbl -> WidgetToolDeactivate(This)

#define IRsWidgetTool_WidgetToolUpdate(This,pEvent)	\
    (This)->lpVtbl -> WidgetToolUpdate(This,pEvent)

#define IRsWidgetTool_WidgetToolSetup(This,pEvent)	\
    (This)->lpVtbl -> WidgetToolSetup(This,pEvent)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetTool_WidgetToolActivate_Proxy( 
    IRsWidgetTool * This,
    /* [in] */ IRcUndoRedoGroup *pUndoRedo);


void __RPC_STUB IRsWidgetTool_WidgetToolActivate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetTool_WidgetToolDeactivate_Proxy( 
    IRsWidgetTool * This);


void __RPC_STUB IRsWidgetTool_WidgetToolDeactivate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetTool_WidgetToolUpdate_Proxy( 
    IRsWidgetTool * This,
    /* [in] */ struct RtWidgetToolEvent *pEvent);


void __RPC_STUB IRsWidgetTool_WidgetToolUpdate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetTool_WidgetToolSetup_Proxy( 
    IRsWidgetTool * This,
    /* [in] */ struct RtWidgetToolEvent *pEvent);


void __RPC_STUB IRsWidgetTool_WidgetToolSetup_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsWidgetTool_INTERFACE_DEFINED__ */


#ifndef __IRnActiveWidget_INTERFACE_DEFINED__
#define __IRnActiveWidget_INTERFACE_DEFINED__

/* interface IRnActiveWidget */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnActiveWidget;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("AD8F0E60-4D21-48E4-939B-F0E5CC375C77")
    IRnActiveWidget : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetActiveAspect( 
            /* [in] */ IRnWidgetAspect *pController) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetWidgetPrototype( 
            /* [in] */ IRnWidget *pPrototype) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Cleanup( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDefaultCoordinateSystemConnector( 
            /* [in] */ CONID *pConID,
            /* [in] */ IRsUnknownCoordinateSystem *ppCoordSystem) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetWidgetActiveStatus( 
            /* [retval][out] */ RtBool *pbActive) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddActionToExecutionQueue( 
            /* [in] */ IRsNode *pNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ExecuteCommandQueue( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetViewportParameters( 
            /* [in] */ IRsNode *pViewNode,
            /* [in] */ struct RtRenderTargetInfo *pRenderTagetInfo,
            /* [in] */ struct RtLayerInfo *pLayerInfo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetViewportData( 
            /* [in] */ IRsNode *pViewNode,
            /* [in] */ struct RtRenderTargetInfo *pRenderTagetInfo,
            /* [in] */ struct RtLayerInfo *pLayerInfo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCameraProjectionCompensationScale( 
            /* [out] */ RtVector4f *pScale) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCameraTransformMatrix( 
            /* [out] */ RtMatrixf *pTransformMatrix) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCameraTransformMatrixInv( 
            /* [out] */ RtMatrixf *pTransformMatrix) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCameraProjectionMatrix( 
            /* [out] */ RtMatrixf *pProjectionMatrix) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCameraPosition( 
            /* [out] */ RtVector3f *pCameraPosition) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCameraNearPlane( 
            /* [out] */ RtVector4f *pCameraNearPlane) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetRenderTargetInfo( 
            /* [out] */ struct RtRenderTargetInfo *pRenderTagetInfo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetLayerInfo( 
            /* [out] */ struct RtLayerInfo *pLayerInfo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ProcessMouseEvent( 
            /* [in] */ RtBool bSequenceStart,
            /* [in] */ RtMouseEvent *pEvent,
            /* [in] */ IRsNode *pViewNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UpdateWidget( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IsVisible( 
            /* [retval][out] */ RtBool *pbVisible) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LockWidget( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UnlockWidget( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetWidgetPrototype( 
            /* [out] */ IRnWidget **ppPrototype) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetActiveAspect( 
            /* [out] */ BSTR *pbAspectName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetActiveAspectNode( 
            /* [retval][out] */ IRnWidgetAspect **ppWc) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Activate( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetWidgetDisplacement( 
            /* [retval][out] */ RtMatrixf *pMatrix) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetWidgetDisplacement( 
            /* [in] */ RtMatrixf *pMatrix) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetLocalTimestamp( 
            /* [retval][out] */ RtUlong *puTimestamp) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetActivationLayer( 
            /* [retval][out] */ RtBool *pbLayer) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetWidgetParameters( 
            /* [out] */ IRdWidgetParameters **ppWp) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UpdateWidgetParameters( 
            /* [in] */ IRdWidgetParameters *pWp) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetManagedState( 
            /* [in] */ RtBool bManaged) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetManagedState( 
            /* [out] */ RtBool *pbManaged) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetControlledObjectsListManagement( 
            /* [in] */ RtBool bExternalManagement) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Reinitialize( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetActiveViewNode( 
            /* [in] */ IRsNode **pViewNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetRenderViewNode( 
            /* [in] */ IRsNode **pViewNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetWidgetGroupId( 
            /* [in] */ GUID gGroupId) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetWidgetGroupId( 
            /* [in] */ GUID *pgGroupId) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SendOnActivateDoMessage( 
            /* [in] */ IRcUndoRedoGroup *pUndoRedo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SendOnActivateUndoMessage( 
            /* [in] */ IRcUndoRedoGroup *pUndoRedo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SendOnDeactivateDoMessage( 
            /* [in] */ IRcUndoRedoGroup *pUndoRedo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SendOnDeactivateUndoMessage( 
            /* [in] */ IRcUndoRedoGroup *pUndoRedo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CheckActivationPossible( 
            /* [in] */ RtBool *pbActivationPossible) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetWidgetActivationEvent( 
            /* [in] */ RtMouseEvent *pEvent,
            /* [in] */ IRsNode **ppViewNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetWidgetActivationEvent( 
            /* [in] */ RtMouseEvent *pEvent,
            /* [in] */ IRsNode *pViewNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UpdateWidgetVisibility( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetEventHandling( 
            /* [in] */ RtBool bEnable) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetActiveCamera( 
            /* [in] */ IRsNode **ppCamera) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetLocalVisibility( 
            /* [in] */ RtBool bVisible) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetLocalVisibility( 
            /* [retval][out] */ RtBool *pbVisible) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRnActiveWidgetVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnActiveWidget * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnActiveWidget * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnActiveWidget * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetActiveAspect )( 
            IRnActiveWidget * This,
            /* [in] */ IRnWidgetAspect *pController);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetWidgetPrototype )( 
            IRnActiveWidget * This,
            /* [in] */ IRnWidget *pPrototype);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Cleanup )( 
            IRnActiveWidget * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDefaultCoordinateSystemConnector )( 
            IRnActiveWidget * This,
            /* [in] */ CONID *pConID,
            /* [in] */ IRsUnknownCoordinateSystem *ppCoordSystem);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetWidgetActiveStatus )( 
            IRnActiveWidget * This,
            /* [retval][out] */ RtBool *pbActive);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddActionToExecutionQueue )( 
            IRnActiveWidget * This,
            /* [in] */ IRsNode *pNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ExecuteCommandQueue )( 
            IRnActiveWidget * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetViewportParameters )( 
            IRnActiveWidget * This,
            /* [in] */ IRsNode *pViewNode,
            /* [in] */ struct RtRenderTargetInfo *pRenderTagetInfo,
            /* [in] */ struct RtLayerInfo *pLayerInfo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetViewportData )( 
            IRnActiveWidget * This,
            /* [in] */ IRsNode *pViewNode,
            /* [in] */ struct RtRenderTargetInfo *pRenderTagetInfo,
            /* [in] */ struct RtLayerInfo *pLayerInfo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCameraProjectionCompensationScale )( 
            IRnActiveWidget * This,
            /* [out] */ RtVector4f *pScale);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCameraTransformMatrix )( 
            IRnActiveWidget * This,
            /* [out] */ RtMatrixf *pTransformMatrix);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCameraTransformMatrixInv )( 
            IRnActiveWidget * This,
            /* [out] */ RtMatrixf *pTransformMatrix);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCameraProjectionMatrix )( 
            IRnActiveWidget * This,
            /* [out] */ RtMatrixf *pProjectionMatrix);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCameraPosition )( 
            IRnActiveWidget * This,
            /* [out] */ RtVector3f *pCameraPosition);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCameraNearPlane )( 
            IRnActiveWidget * This,
            /* [out] */ RtVector4f *pCameraNearPlane);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetRenderTargetInfo )( 
            IRnActiveWidget * This,
            /* [out] */ struct RtRenderTargetInfo *pRenderTagetInfo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetLayerInfo )( 
            IRnActiveWidget * This,
            /* [out] */ struct RtLayerInfo *pLayerInfo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ProcessMouseEvent )( 
            IRnActiveWidget * This,
            /* [in] */ RtBool bSequenceStart,
            /* [in] */ RtMouseEvent *pEvent,
            /* [in] */ IRsNode *pViewNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UpdateWidget )( 
            IRnActiveWidget * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IsVisible )( 
            IRnActiveWidget * This,
            /* [retval][out] */ RtBool *pbVisible);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LockWidget )( 
            IRnActiveWidget * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UnlockWidget )( 
            IRnActiveWidget * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetWidgetPrototype )( 
            IRnActiveWidget * This,
            /* [out] */ IRnWidget **ppPrototype);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetActiveAspect )( 
            IRnActiveWidget * This,
            /* [out] */ BSTR *pbAspectName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetActiveAspectNode )( 
            IRnActiveWidget * This,
            /* [retval][out] */ IRnWidgetAspect **ppWc);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Activate )( 
            IRnActiveWidget * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetWidgetDisplacement )( 
            IRnActiveWidget * This,
            /* [retval][out] */ RtMatrixf *pMatrix);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetWidgetDisplacement )( 
            IRnActiveWidget * This,
            /* [in] */ RtMatrixf *pMatrix);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetLocalTimestamp )( 
            IRnActiveWidget * This,
            /* [retval][out] */ RtUlong *puTimestamp);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetActivationLayer )( 
            IRnActiveWidget * This,
            /* [retval][out] */ RtBool *pbLayer);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetWidgetParameters )( 
            IRnActiveWidget * This,
            /* [out] */ IRdWidgetParameters **ppWp);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UpdateWidgetParameters )( 
            IRnActiveWidget * This,
            /* [in] */ IRdWidgetParameters *pWp);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetManagedState )( 
            IRnActiveWidget * This,
            /* [in] */ RtBool bManaged);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetManagedState )( 
            IRnActiveWidget * This,
            /* [out] */ RtBool *pbManaged);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetControlledObjectsListManagement )( 
            IRnActiveWidget * This,
            /* [in] */ RtBool bExternalManagement);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Reinitialize )( 
            IRnActiveWidget * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetActiveViewNode )( 
            IRnActiveWidget * This,
            /* [in] */ IRsNode **pViewNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetRenderViewNode )( 
            IRnActiveWidget * This,
            /* [in] */ IRsNode **pViewNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetWidgetGroupId )( 
            IRnActiveWidget * This,
            /* [in] */ GUID gGroupId);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetWidgetGroupId )( 
            IRnActiveWidget * This,
            /* [in] */ GUID *pgGroupId);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SendOnActivateDoMessage )( 
            IRnActiveWidget * This,
            /* [in] */ IRcUndoRedoGroup *pUndoRedo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SendOnActivateUndoMessage )( 
            IRnActiveWidget * This,
            /* [in] */ IRcUndoRedoGroup *pUndoRedo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SendOnDeactivateDoMessage )( 
            IRnActiveWidget * This,
            /* [in] */ IRcUndoRedoGroup *pUndoRedo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SendOnDeactivateUndoMessage )( 
            IRnActiveWidget * This,
            /* [in] */ IRcUndoRedoGroup *pUndoRedo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CheckActivationPossible )( 
            IRnActiveWidget * This,
            /* [in] */ RtBool *pbActivationPossible);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetWidgetActivationEvent )( 
            IRnActiveWidget * This,
            /* [in] */ RtMouseEvent *pEvent,
            /* [in] */ IRsNode **ppViewNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetWidgetActivationEvent )( 
            IRnActiveWidget * This,
            /* [in] */ RtMouseEvent *pEvent,
            /* [in] */ IRsNode *pViewNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UpdateWidgetVisibility )( 
            IRnActiveWidget * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetEventHandling )( 
            IRnActiveWidget * This,
            /* [in] */ RtBool bEnable);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetActiveCamera )( 
            IRnActiveWidget * This,
            /* [in] */ IRsNode **ppCamera);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetLocalVisibility )( 
            IRnActiveWidget * This,
            /* [in] */ RtBool bVisible);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetLocalVisibility )( 
            IRnActiveWidget * This,
            /* [retval][out] */ RtBool *pbVisible);
        
        END_INTERFACE
    } IRnActiveWidgetVtbl;

    interface IRnActiveWidget
    {
        CONST_VTBL struct IRnActiveWidgetVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnActiveWidget_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnActiveWidget_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnActiveWidget_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRnActiveWidget_SetActiveAspect(This,pController)	\
    (This)->lpVtbl -> SetActiveAspect(This,pController)

#define IRnActiveWidget_SetWidgetPrototype(This,pPrototype)	\
    (This)->lpVtbl -> SetWidgetPrototype(This,pPrototype)

#define IRnActiveWidget_Cleanup(This)	\
    (This)->lpVtbl -> Cleanup(This)

#define IRnActiveWidget_SetDefaultCoordinateSystemConnector(This,pConID,ppCoordSystem)	\
    (This)->lpVtbl -> SetDefaultCoordinateSystemConnector(This,pConID,ppCoordSystem)

#define IRnActiveWidget_GetWidgetActiveStatus(This,pbActive)	\
    (This)->lpVtbl -> GetWidgetActiveStatus(This,pbActive)

#define IRnActiveWidget_AddActionToExecutionQueue(This,pNode)	\
    (This)->lpVtbl -> AddActionToExecutionQueue(This,pNode)

#define IRnActiveWidget_ExecuteCommandQueue(This)	\
    (This)->lpVtbl -> ExecuteCommandQueue(This)

#define IRnActiveWidget_SetViewportParameters(This,pViewNode,pRenderTagetInfo,pLayerInfo)	\
    (This)->lpVtbl -> SetViewportParameters(This,pViewNode,pRenderTagetInfo,pLayerInfo)

#define IRnActiveWidget_SetViewportData(This,pViewNode,pRenderTagetInfo,pLayerInfo)	\
    (This)->lpVtbl -> SetViewportData(This,pViewNode,pRenderTagetInfo,pLayerInfo)

#define IRnActiveWidget_GetCameraProjectionCompensationScale(This,pScale)	\
    (This)->lpVtbl -> GetCameraProjectionCompensationScale(This,pScale)

#define IRnActiveWidget_GetCameraTransformMatrix(This,pTransformMatrix)	\
    (This)->lpVtbl -> GetCameraTransformMatrix(This,pTransformMatrix)

#define IRnActiveWidget_GetCameraTransformMatrixInv(This,pTransformMatrix)	\
    (This)->lpVtbl -> GetCameraTransformMatrixInv(This,pTransformMatrix)

#define IRnActiveWidget_GetCameraProjectionMatrix(This,pProjectionMatrix)	\
    (This)->lpVtbl -> GetCameraProjectionMatrix(This,pProjectionMatrix)

#define IRnActiveWidget_GetCameraPosition(This,pCameraPosition)	\
    (This)->lpVtbl -> GetCameraPosition(This,pCameraPosition)

#define IRnActiveWidget_GetCameraNearPlane(This,pCameraNearPlane)	\
    (This)->lpVtbl -> GetCameraNearPlane(This,pCameraNearPlane)

#define IRnActiveWidget_GetRenderTargetInfo(This,pRenderTagetInfo)	\
    (This)->lpVtbl -> GetRenderTargetInfo(This,pRenderTagetInfo)

#define IRnActiveWidget_GetLayerInfo(This,pLayerInfo)	\
    (This)->lpVtbl -> GetLayerInfo(This,pLayerInfo)

#define IRnActiveWidget_ProcessMouseEvent(This,bSequenceStart,pEvent,pViewNode)	\
    (This)->lpVtbl -> ProcessMouseEvent(This,bSequenceStart,pEvent,pViewNode)

#define IRnActiveWidget_UpdateWidget(This)	\
    (This)->lpVtbl -> UpdateWidget(This)

#define IRnActiveWidget_IsVisible(This,pbVisible)	\
    (This)->lpVtbl -> IsVisible(This,pbVisible)

#define IRnActiveWidget_LockWidget(This)	\
    (This)->lpVtbl -> LockWidget(This)

#define IRnActiveWidget_UnlockWidget(This)	\
    (This)->lpVtbl -> UnlockWidget(This)

#define IRnActiveWidget_GetWidgetPrototype(This,ppPrototype)	\
    (This)->lpVtbl -> GetWidgetPrototype(This,ppPrototype)

#define IRnActiveWidget_GetActiveAspect(This,pbAspectName)	\
    (This)->lpVtbl -> GetActiveAspect(This,pbAspectName)

#define IRnActiveWidget_GetActiveAspectNode(This,ppWc)	\
    (This)->lpVtbl -> GetActiveAspectNode(This,ppWc)

#define IRnActiveWidget_Activate(This)	\
    (This)->lpVtbl -> Activate(This)

#define IRnActiveWidget_GetWidgetDisplacement(This,pMatrix)	\
    (This)->lpVtbl -> GetWidgetDisplacement(This,pMatrix)

#define IRnActiveWidget_SetWidgetDisplacement(This,pMatrix)	\
    (This)->lpVtbl -> SetWidgetDisplacement(This,pMatrix)

#define IRnActiveWidget_GetLocalTimestamp(This,puTimestamp)	\
    (This)->lpVtbl -> GetLocalTimestamp(This,puTimestamp)

#define IRnActiveWidget_GetActivationLayer(This,pbLayer)	\
    (This)->lpVtbl -> GetActivationLayer(This,pbLayer)

#define IRnActiveWidget_GetWidgetParameters(This,ppWp)	\
    (This)->lpVtbl -> GetWidgetParameters(This,ppWp)

#define IRnActiveWidget_UpdateWidgetParameters(This,pWp)	\
    (This)->lpVtbl -> UpdateWidgetParameters(This,pWp)

#define IRnActiveWidget_SetManagedState(This,bManaged)	\
    (This)->lpVtbl -> SetManagedState(This,bManaged)

#define IRnActiveWidget_GetManagedState(This,pbManaged)	\
    (This)->lpVtbl -> GetManagedState(This,pbManaged)

#define IRnActiveWidget_SetControlledObjectsListManagement(This,bExternalManagement)	\
    (This)->lpVtbl -> SetControlledObjectsListManagement(This,bExternalManagement)

#define IRnActiveWidget_Reinitialize(This)	\
    (This)->lpVtbl -> Reinitialize(This)

#define IRnActiveWidget_GetActiveViewNode(This,pViewNode)	\
    (This)->lpVtbl -> GetActiveViewNode(This,pViewNode)

#define IRnActiveWidget_GetRenderViewNode(This,pViewNode)	\
    (This)->lpVtbl -> GetRenderViewNode(This,pViewNode)

#define IRnActiveWidget_SetWidgetGroupId(This,gGroupId)	\
    (This)->lpVtbl -> SetWidgetGroupId(This,gGroupId)

#define IRnActiveWidget_GetWidgetGroupId(This,pgGroupId)	\
    (This)->lpVtbl -> GetWidgetGroupId(This,pgGroupId)

#define IRnActiveWidget_SendOnActivateDoMessage(This,pUndoRedo)	\
    (This)->lpVtbl -> SendOnActivateDoMessage(This,pUndoRedo)

#define IRnActiveWidget_SendOnActivateUndoMessage(This,pUndoRedo)	\
    (This)->lpVtbl -> SendOnActivateUndoMessage(This,pUndoRedo)

#define IRnActiveWidget_SendOnDeactivateDoMessage(This,pUndoRedo)	\
    (This)->lpVtbl -> SendOnDeactivateDoMessage(This,pUndoRedo)

#define IRnActiveWidget_SendOnDeactivateUndoMessage(This,pUndoRedo)	\
    (This)->lpVtbl -> SendOnDeactivateUndoMessage(This,pUndoRedo)

#define IRnActiveWidget_CheckActivationPossible(This,pbActivationPossible)	\
    (This)->lpVtbl -> CheckActivationPossible(This,pbActivationPossible)

#define IRnActiveWidget_GetWidgetActivationEvent(This,pEvent,ppViewNode)	\
    (This)->lpVtbl -> GetWidgetActivationEvent(This,pEvent,ppViewNode)

#define IRnActiveWidget_SetWidgetActivationEvent(This,pEvent,pViewNode)	\
    (This)->lpVtbl -> SetWidgetActivationEvent(This,pEvent,pViewNode)

#define IRnActiveWidget_UpdateWidgetVisibility(This)	\
    (This)->lpVtbl -> UpdateWidgetVisibility(This)

#define IRnActiveWidget_SetEventHandling(This,bEnable)	\
    (This)->lpVtbl -> SetEventHandling(This,bEnable)

#define IRnActiveWidget_GetActiveCamera(This,ppCamera)	\
    (This)->lpVtbl -> GetActiveCamera(This,ppCamera)

#define IRnActiveWidget_SetLocalVisibility(This,bVisible)	\
    (This)->lpVtbl -> SetLocalVisibility(This,bVisible)

#define IRnActiveWidget_GetLocalVisibility(This,pbVisible)	\
    (This)->lpVtbl -> GetLocalVisibility(This,pbVisible)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SetActiveAspect_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ IRnWidgetAspect *pController);


void __RPC_STUB IRnActiveWidget_SetActiveAspect_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SetWidgetPrototype_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ IRnWidget *pPrototype);


void __RPC_STUB IRnActiveWidget_SetWidgetPrototype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_Cleanup_Proxy( 
    IRnActiveWidget * This);


void __RPC_STUB IRnActiveWidget_Cleanup_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SetDefaultCoordinateSystemConnector_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ CONID *pConID,
    /* [in] */ IRsUnknownCoordinateSystem *ppCoordSystem);


void __RPC_STUB IRnActiveWidget_SetDefaultCoordinateSystemConnector_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetWidgetActiveStatus_Proxy( 
    IRnActiveWidget * This,
    /* [retval][out] */ RtBool *pbActive);


void __RPC_STUB IRnActiveWidget_GetWidgetActiveStatus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_AddActionToExecutionQueue_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ IRsNode *pNode);


void __RPC_STUB IRnActiveWidget_AddActionToExecutionQueue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_ExecuteCommandQueue_Proxy( 
    IRnActiveWidget * This);


void __RPC_STUB IRnActiveWidget_ExecuteCommandQueue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SetViewportParameters_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ IRsNode *pViewNode,
    /* [in] */ struct RtRenderTargetInfo *pRenderTagetInfo,
    /* [in] */ struct RtLayerInfo *pLayerInfo);


void __RPC_STUB IRnActiveWidget_SetViewportParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SetViewportData_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ IRsNode *pViewNode,
    /* [in] */ struct RtRenderTargetInfo *pRenderTagetInfo,
    /* [in] */ struct RtLayerInfo *pLayerInfo);


void __RPC_STUB IRnActiveWidget_SetViewportData_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetCameraProjectionCompensationScale_Proxy( 
    IRnActiveWidget * This,
    /* [out] */ RtVector4f *pScale);


void __RPC_STUB IRnActiveWidget_GetCameraProjectionCompensationScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetCameraTransformMatrix_Proxy( 
    IRnActiveWidget * This,
    /* [out] */ RtMatrixf *pTransformMatrix);


void __RPC_STUB IRnActiveWidget_GetCameraTransformMatrix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetCameraTransformMatrixInv_Proxy( 
    IRnActiveWidget * This,
    /* [out] */ RtMatrixf *pTransformMatrix);


void __RPC_STUB IRnActiveWidget_GetCameraTransformMatrixInv_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetCameraProjectionMatrix_Proxy( 
    IRnActiveWidget * This,
    /* [out] */ RtMatrixf *pProjectionMatrix);


void __RPC_STUB IRnActiveWidget_GetCameraProjectionMatrix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetCameraPosition_Proxy( 
    IRnActiveWidget * This,
    /* [out] */ RtVector3f *pCameraPosition);


void __RPC_STUB IRnActiveWidget_GetCameraPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetCameraNearPlane_Proxy( 
    IRnActiveWidget * This,
    /* [out] */ RtVector4f *pCameraNearPlane);


void __RPC_STUB IRnActiveWidget_GetCameraNearPlane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetRenderTargetInfo_Proxy( 
    IRnActiveWidget * This,
    /* [out] */ struct RtRenderTargetInfo *pRenderTagetInfo);


void __RPC_STUB IRnActiveWidget_GetRenderTargetInfo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetLayerInfo_Proxy( 
    IRnActiveWidget * This,
    /* [out] */ struct RtLayerInfo *pLayerInfo);


void __RPC_STUB IRnActiveWidget_GetLayerInfo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_ProcessMouseEvent_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ RtBool bSequenceStart,
    /* [in] */ RtMouseEvent *pEvent,
    /* [in] */ IRsNode *pViewNode);


void __RPC_STUB IRnActiveWidget_ProcessMouseEvent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_UpdateWidget_Proxy( 
    IRnActiveWidget * This);


void __RPC_STUB IRnActiveWidget_UpdateWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_IsVisible_Proxy( 
    IRnActiveWidget * This,
    /* [retval][out] */ RtBool *pbVisible);


void __RPC_STUB IRnActiveWidget_IsVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_LockWidget_Proxy( 
    IRnActiveWidget * This);


void __RPC_STUB IRnActiveWidget_LockWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_UnlockWidget_Proxy( 
    IRnActiveWidget * This);


void __RPC_STUB IRnActiveWidget_UnlockWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetWidgetPrototype_Proxy( 
    IRnActiveWidget * This,
    /* [out] */ IRnWidget **ppPrototype);


void __RPC_STUB IRnActiveWidget_GetWidgetPrototype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetActiveAspect_Proxy( 
    IRnActiveWidget * This,
    /* [out] */ BSTR *pbAspectName);


void __RPC_STUB IRnActiveWidget_GetActiveAspect_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetActiveAspectNode_Proxy( 
    IRnActiveWidget * This,
    /* [retval][out] */ IRnWidgetAspect **ppWc);


void __RPC_STUB IRnActiveWidget_GetActiveAspectNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_Activate_Proxy( 
    IRnActiveWidget * This);


void __RPC_STUB IRnActiveWidget_Activate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetWidgetDisplacement_Proxy( 
    IRnActiveWidget * This,
    /* [retval][out] */ RtMatrixf *pMatrix);


void __RPC_STUB IRnActiveWidget_GetWidgetDisplacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SetWidgetDisplacement_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ RtMatrixf *pMatrix);


void __RPC_STUB IRnActiveWidget_SetWidgetDisplacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetLocalTimestamp_Proxy( 
    IRnActiveWidget * This,
    /* [retval][out] */ RtUlong *puTimestamp);


void __RPC_STUB IRnActiveWidget_GetLocalTimestamp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetActivationLayer_Proxy( 
    IRnActiveWidget * This,
    /* [retval][out] */ RtBool *pbLayer);


void __RPC_STUB IRnActiveWidget_GetActivationLayer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetWidgetParameters_Proxy( 
    IRnActiveWidget * This,
    /* [out] */ IRdWidgetParameters **ppWp);


void __RPC_STUB IRnActiveWidget_GetWidgetParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_UpdateWidgetParameters_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ IRdWidgetParameters *pWp);


void __RPC_STUB IRnActiveWidget_UpdateWidgetParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SetManagedState_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ RtBool bManaged);


void __RPC_STUB IRnActiveWidget_SetManagedState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetManagedState_Proxy( 
    IRnActiveWidget * This,
    /* [out] */ RtBool *pbManaged);


void __RPC_STUB IRnActiveWidget_GetManagedState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SetControlledObjectsListManagement_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ RtBool bExternalManagement);


void __RPC_STUB IRnActiveWidget_SetControlledObjectsListManagement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_Reinitialize_Proxy( 
    IRnActiveWidget * This);


void __RPC_STUB IRnActiveWidget_Reinitialize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetActiveViewNode_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ IRsNode **pViewNode);


void __RPC_STUB IRnActiveWidget_GetActiveViewNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetRenderViewNode_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ IRsNode **pViewNode);


void __RPC_STUB IRnActiveWidget_GetRenderViewNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SetWidgetGroupId_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ GUID gGroupId);


void __RPC_STUB IRnActiveWidget_SetWidgetGroupId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetWidgetGroupId_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ GUID *pgGroupId);


void __RPC_STUB IRnActiveWidget_GetWidgetGroupId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SendOnActivateDoMessage_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ IRcUndoRedoGroup *pUndoRedo);


void __RPC_STUB IRnActiveWidget_SendOnActivateDoMessage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SendOnActivateUndoMessage_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ IRcUndoRedoGroup *pUndoRedo);


void __RPC_STUB IRnActiveWidget_SendOnActivateUndoMessage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SendOnDeactivateDoMessage_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ IRcUndoRedoGroup *pUndoRedo);


void __RPC_STUB IRnActiveWidget_SendOnDeactivateDoMessage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SendOnDeactivateUndoMessage_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ IRcUndoRedoGroup *pUndoRedo);


void __RPC_STUB IRnActiveWidget_SendOnDeactivateUndoMessage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_CheckActivationPossible_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ RtBool *pbActivationPossible);


void __RPC_STUB IRnActiveWidget_CheckActivationPossible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetWidgetActivationEvent_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ RtMouseEvent *pEvent,
    /* [in] */ IRsNode **ppViewNode);


void __RPC_STUB IRnActiveWidget_GetWidgetActivationEvent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SetWidgetActivationEvent_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ RtMouseEvent *pEvent,
    /* [in] */ IRsNode *pViewNode);


void __RPC_STUB IRnActiveWidget_SetWidgetActivationEvent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_UpdateWidgetVisibility_Proxy( 
    IRnActiveWidget * This);


void __RPC_STUB IRnActiveWidget_UpdateWidgetVisibility_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SetEventHandling_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ RtBool bEnable);


void __RPC_STUB IRnActiveWidget_SetEventHandling_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetActiveCamera_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ IRsNode **ppCamera);


void __RPC_STUB IRnActiveWidget_GetActiveCamera_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_SetLocalVisibility_Proxy( 
    IRnActiveWidget * This,
    /* [in] */ RtBool bVisible);


void __RPC_STUB IRnActiveWidget_SetLocalVisibility_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnActiveWidget_GetLocalVisibility_Proxy( 
    IRnActiveWidget * This,
    /* [retval][out] */ RtBool *pbVisible);


void __RPC_STUB IRnActiveWidget_GetLocalVisibility_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRnActiveWidget_INTERFACE_DEFINED__ */


/* interface __MIDL_itf__Widgets_2208 */
/* [local] */ 

struct RtWidgetCacheConnection
    {
    CONID m_source_id;
    CONID m_target_id;
    IRsNode *m_target_node;
    } ;


extern RPC_IF_HANDLE __MIDL_itf__Widgets_2208_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf__Widgets_2208_v0_0_s_ifspec;

#ifndef __IRsWidgetCacheItem_INTERFACE_DEFINED__
#define __IRsWidgetCacheItem_INTERFACE_DEFINED__

/* interface IRsWidgetCacheItem */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsWidgetCacheItem;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("26503F8C-75BF-4DD3-A7C6-33D4443F7461")
    IRsWidgetCacheItem : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Destroy( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetGlobalTimeStamp( 
            /* [retval][out] */ RtUlong *puTimeStamp) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetGlobalTimeStamp( 
            /* [in] */ RtUlong uTimeStamp) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetLocalTimeStamp( 
            /* [retval][out] */ RtUlong *puTimeStamp) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetLocalTimeStamp( 
            /* [in] */ RtUlong uTimeStamp) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetWidgetName( 
            /* [retval][out] */ BSTR *pbstrName) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetWidgetName( 
            /* [in] */ BSTR bstrName) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetWidgetAspect( 
            /* [retval][out] */ BSTR *pbstrAspect) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetWidgetAspect( 
            /* [in] */ BSTR bstrAspect) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetWidget( 
            /* [in] */ IRnActiveWidget *pWidget) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetNodesCount( 
            /* [retval][out] */ RtUlong *puNodesCount) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetNode( 
            /* [in] */ RtUlong uIndex,
            /* [retval][out] */ IRsNode **pNode) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetConnectionsCount( 
            /* [retval][out] */ RtUlong *puConnectionsCount) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetConnection( 
            /* [in] */ RtUlong uIndex,
            /* [retval][out] */ struct RtWidgetCacheConnection *pConnection) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Detach( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsWidgetCacheItemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsWidgetCacheItem * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsWidgetCacheItem * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsWidgetCacheItem * This);
        
        HRESULT ( STDMETHODCALLTYPE *Destroy )( 
            IRsWidgetCacheItem * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetGlobalTimeStamp )( 
            IRsWidgetCacheItem * This,
            /* [retval][out] */ RtUlong *puTimeStamp);
        
        HRESULT ( STDMETHODCALLTYPE *SetGlobalTimeStamp )( 
            IRsWidgetCacheItem * This,
            /* [in] */ RtUlong uTimeStamp);
        
        HRESULT ( STDMETHODCALLTYPE *GetLocalTimeStamp )( 
            IRsWidgetCacheItem * This,
            /* [retval][out] */ RtUlong *puTimeStamp);
        
        HRESULT ( STDMETHODCALLTYPE *SetLocalTimeStamp )( 
            IRsWidgetCacheItem * This,
            /* [in] */ RtUlong uTimeStamp);
        
        HRESULT ( STDMETHODCALLTYPE *GetWidgetName )( 
            IRsWidgetCacheItem * This,
            /* [retval][out] */ BSTR *pbstrName);
        
        HRESULT ( STDMETHODCALLTYPE *SetWidgetName )( 
            IRsWidgetCacheItem * This,
            /* [in] */ BSTR bstrName);
        
        HRESULT ( STDMETHODCALLTYPE *GetWidgetAspect )( 
            IRsWidgetCacheItem * This,
            /* [retval][out] */ BSTR *pbstrAspect);
        
        HRESULT ( STDMETHODCALLTYPE *SetWidgetAspect )( 
            IRsWidgetCacheItem * This,
            /* [in] */ BSTR bstrAspect);
        
        HRESULT ( STDMETHODCALLTYPE *SetWidget )( 
            IRsWidgetCacheItem * This,
            /* [in] */ IRnActiveWidget *pWidget);
        
        HRESULT ( STDMETHODCALLTYPE *GetNodesCount )( 
            IRsWidgetCacheItem * This,
            /* [retval][out] */ RtUlong *puNodesCount);
        
        HRESULT ( STDMETHODCALLTYPE *GetNode )( 
            IRsWidgetCacheItem * This,
            /* [in] */ RtUlong uIndex,
            /* [retval][out] */ IRsNode **pNode);
        
        HRESULT ( STDMETHODCALLTYPE *GetConnectionsCount )( 
            IRsWidgetCacheItem * This,
            /* [retval][out] */ RtUlong *puConnectionsCount);
        
        HRESULT ( STDMETHODCALLTYPE *GetConnection )( 
            IRsWidgetCacheItem * This,
            /* [in] */ RtUlong uIndex,
            /* [retval][out] */ struct RtWidgetCacheConnection *pConnection);
        
        HRESULT ( STDMETHODCALLTYPE *Detach )( 
            IRsWidgetCacheItem * This);
        
        END_INTERFACE
    } IRsWidgetCacheItemVtbl;

    interface IRsWidgetCacheItem
    {
        CONST_VTBL struct IRsWidgetCacheItemVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsWidgetCacheItem_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsWidgetCacheItem_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsWidgetCacheItem_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsWidgetCacheItem_Destroy(This)	\
    (This)->lpVtbl -> Destroy(This)

#define IRsWidgetCacheItem_GetGlobalTimeStamp(This,puTimeStamp)	\
    (This)->lpVtbl -> GetGlobalTimeStamp(This,puTimeStamp)

#define IRsWidgetCacheItem_SetGlobalTimeStamp(This,uTimeStamp)	\
    (This)->lpVtbl -> SetGlobalTimeStamp(This,uTimeStamp)

#define IRsWidgetCacheItem_GetLocalTimeStamp(This,puTimeStamp)	\
    (This)->lpVtbl -> GetLocalTimeStamp(This,puTimeStamp)

#define IRsWidgetCacheItem_SetLocalTimeStamp(This,uTimeStamp)	\
    (This)->lpVtbl -> SetLocalTimeStamp(This,uTimeStamp)

#define IRsWidgetCacheItem_GetWidgetName(This,pbstrName)	\
    (This)->lpVtbl -> GetWidgetName(This,pbstrName)

#define IRsWidgetCacheItem_SetWidgetName(This,bstrName)	\
    (This)->lpVtbl -> SetWidgetName(This,bstrName)

#define IRsWidgetCacheItem_GetWidgetAspect(This,pbstrAspect)	\
    (This)->lpVtbl -> GetWidgetAspect(This,pbstrAspect)

#define IRsWidgetCacheItem_SetWidgetAspect(This,bstrAspect)	\
    (This)->lpVtbl -> SetWidgetAspect(This,bstrAspect)

#define IRsWidgetCacheItem_SetWidget(This,pWidget)	\
    (This)->lpVtbl -> SetWidget(This,pWidget)

#define IRsWidgetCacheItem_GetNodesCount(This,puNodesCount)	\
    (This)->lpVtbl -> GetNodesCount(This,puNodesCount)

#define IRsWidgetCacheItem_GetNode(This,uIndex,pNode)	\
    (This)->lpVtbl -> GetNode(This,uIndex,pNode)

#define IRsWidgetCacheItem_GetConnectionsCount(This,puConnectionsCount)	\
    (This)->lpVtbl -> GetConnectionsCount(This,puConnectionsCount)

#define IRsWidgetCacheItem_GetConnection(This,uIndex,pConnection)	\
    (This)->lpVtbl -> GetConnection(This,uIndex,pConnection)

#define IRsWidgetCacheItem_Detach(This)	\
    (This)->lpVtbl -> Detach(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRsWidgetCacheItem_Destroy_Proxy( 
    IRsWidgetCacheItem * This);


void __RPC_STUB IRsWidgetCacheItem_Destroy_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetCacheItem_GetGlobalTimeStamp_Proxy( 
    IRsWidgetCacheItem * This,
    /* [retval][out] */ RtUlong *puTimeStamp);


void __RPC_STUB IRsWidgetCacheItem_GetGlobalTimeStamp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetCacheItem_SetGlobalTimeStamp_Proxy( 
    IRsWidgetCacheItem * This,
    /* [in] */ RtUlong uTimeStamp);


void __RPC_STUB IRsWidgetCacheItem_SetGlobalTimeStamp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetCacheItem_GetLocalTimeStamp_Proxy( 
    IRsWidgetCacheItem * This,
    /* [retval][out] */ RtUlong *puTimeStamp);


void __RPC_STUB IRsWidgetCacheItem_GetLocalTimeStamp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetCacheItem_SetLocalTimeStamp_Proxy( 
    IRsWidgetCacheItem * This,
    /* [in] */ RtUlong uTimeStamp);


void __RPC_STUB IRsWidgetCacheItem_SetLocalTimeStamp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetCacheItem_GetWidgetName_Proxy( 
    IRsWidgetCacheItem * This,
    /* [retval][out] */ BSTR *pbstrName);


void __RPC_STUB IRsWidgetCacheItem_GetWidgetName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetCacheItem_SetWidgetName_Proxy( 
    IRsWidgetCacheItem * This,
    /* [in] */ BSTR bstrName);


void __RPC_STUB IRsWidgetCacheItem_SetWidgetName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetCacheItem_GetWidgetAspect_Proxy( 
    IRsWidgetCacheItem * This,
    /* [retval][out] */ BSTR *pbstrAspect);


void __RPC_STUB IRsWidgetCacheItem_GetWidgetAspect_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetCacheItem_SetWidgetAspect_Proxy( 
    IRsWidgetCacheItem * This,
    /* [in] */ BSTR bstrAspect);


void __RPC_STUB IRsWidgetCacheItem_SetWidgetAspect_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetCacheItem_SetWidget_Proxy( 
    IRsWidgetCacheItem * This,
    /* [in] */ IRnActiveWidget *pWidget);


void __RPC_STUB IRsWidgetCacheItem_SetWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetCacheItem_GetNodesCount_Proxy( 
    IRsWidgetCacheItem * This,
    /* [retval][out] */ RtUlong *puNodesCount);


void __RPC_STUB IRsWidgetCacheItem_GetNodesCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetCacheItem_GetNode_Proxy( 
    IRsWidgetCacheItem * This,
    /* [in] */ RtUlong uIndex,
    /* [retval][out] */ IRsNode **pNode);


void __RPC_STUB IRsWidgetCacheItem_GetNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetCacheItem_GetConnectionsCount_Proxy( 
    IRsWidgetCacheItem * This,
    /* [retval][out] */ RtUlong *puConnectionsCount);


void __RPC_STUB IRsWidgetCacheItem_GetConnectionsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetCacheItem_GetConnection_Proxy( 
    IRsWidgetCacheItem * This,
    /* [in] */ RtUlong uIndex,
    /* [retval][out] */ struct RtWidgetCacheConnection *pConnection);


void __RPC_STUB IRsWidgetCacheItem_GetConnection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetCacheItem_Detach_Proxy( 
    IRsWidgetCacheItem * This);


void __RPC_STUB IRsWidgetCacheItem_Detach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsWidgetCacheItem_INTERFACE_DEFINED__ */


#ifndef __IRsWidgetSelectionHandler_INTERFACE_DEFINED__
#define __IRsWidgetSelectionHandler_INTERFACE_DEFINED__

/* interface IRsWidgetSelectionHandler */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsWidgetSelectionHandler;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0FA9975A-F58C-4cfa-B58B-097DA416B631")
    IRsWidgetSelectionHandler : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CheckGlobalSelection( 
            /* [in] */ IRsObjectList *pSelection,
            /* [retval][out] */ RtBool *pHandled) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsWidgetSelectionHandlerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsWidgetSelectionHandler * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsWidgetSelectionHandler * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsWidgetSelectionHandler * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CheckGlobalSelection )( 
            IRsWidgetSelectionHandler * This,
            /* [in] */ IRsObjectList *pSelection,
            /* [retval][out] */ RtBool *pHandled);
        
        END_INTERFACE
    } IRsWidgetSelectionHandlerVtbl;

    interface IRsWidgetSelectionHandler
    {
        CONST_VTBL struct IRsWidgetSelectionHandlerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsWidgetSelectionHandler_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsWidgetSelectionHandler_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsWidgetSelectionHandler_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsWidgetSelectionHandler_CheckGlobalSelection(This,pSelection,pHandled)	\
    (This)->lpVtbl -> CheckGlobalSelection(This,pSelection,pHandled)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetSelectionHandler_CheckGlobalSelection_Proxy( 
    IRsWidgetSelectionHandler * This,
    /* [in] */ IRsObjectList *pSelection,
    /* [retval][out] */ RtBool *pHandled);


void __RPC_STUB IRsWidgetSelectionHandler_CheckGlobalSelection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsWidgetSelectionHandler_INTERFACE_DEFINED__ */


#ifndef __IRnWidgetSubsystem_INTERFACE_DEFINED__
#define __IRnWidgetSubsystem_INTERFACE_DEFINED__

/* interface IRnWidgetSubsystem */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnWidgetSubsystem;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E22CEADA-731E-4D5C-B1A5-F169F49B2ACE")
    IRnWidgetSubsystem : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Activate( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Deactivate( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DeactivateManagedWidgets( 
            /* [in] */ GUID gGroupId,
            /* [in] */ IRcUndoRedoGroup *pUndoRedo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE QueryWidgetCache( 
            /* [in] */ BSTR bstrWidgetName,
            /* [in] */ BSTR bstrAspectName,
            /* [retval][out] */ IRsWidgetCacheItem **pItem) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddWidgetToCache( 
            /* [in] */ IRnActiveWidget *pWidget) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InvalidateCache( 
            /* [in] */ BSTR bstrNodeName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveWidget( 
            /* [in] */ IRnActiveWidget *pWidget) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddManagedWidget( 
            /* [in] */ IRnActiveWidget *pWidget) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ReplaceManagedWidget( 
            /* [in] */ IRnActiveWidget *pWidget,
            /* [in] */ IRcUndoRedoGroup *pUndoRedo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UpdateActiveWidgets( 
            /* [in] */ BSTR bszWidgetPrototype,
            /* [in] */ BSTR bszRelativePath,
            /* [in] */ CONID conid) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ReactivateWidgets( 
            /* [in] */ BSTR bszWidgetPrototype) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ReactivateWidgetsSync( 
            /* [in] */ BSTR bszWidgetPrototype) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetActiveWidgetParameters( 
            /* [out] */ IRdWidgetParameters **ppParams) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ActivateDefaultWidget( 
            /* [in] */ IRcUndoRedoGroup *pUndoRedo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSelection( 
            /* [in] */ RtUlong uCount,
            /* [in] */ IRsNode **ppSelectionList) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSelectionList( 
            /* [in] */ IRsObjectList *pList) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ForceSelectionOwner( 
            /* [in] */ BSTR szOwner) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ResetSelection( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IgnoreSelection( 
            /* [in] */ RtUlong uCount) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetGroupDependency( 
            /* [in] */ GUID source_id,
            /* [in] */ GUID dependent_id) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveGroupDependency( 
            /* [in] */ GUID source_id,
            /* [in] */ GUID dependent_id) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetActiveWidget( 
            /* [out] */ IRnActiveWidget **ppActiveWidget) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CheckWidgetPrototypeActive( 
            /* [in] */ BSTR szWidgetPrototype,
            /* [out] */ RtBool *pbActive) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EnableSelectionAutoHandling( 
            /* [in] */ RtBool bActive) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetManagedWidgetsCount( 
            /* [retval][out] */ RtUlong *pdwCount) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetManagedWidget( 
            /* [in] */ RtUlong dwIndex,
            /* [retval][out] */ IRnActiveWidget **ppActiveWidget) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetEventHandling( 
            /* [in] */ RtBool bEnable) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CheckWidgetPrototypeGroupActive( 
            /* [in] */ BSTR szWidgetPrototype,
            /* [in] */ GUID gGUID,
            /* [out] */ RtBool *pbActive) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RegisterWidgetSelectionHandler( 
            /* [in] */ IRsWidgetSelectionHandler *pSelectionHandler) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UnregisterWidgetSelectionHandler( 
            /* [in] */ IRsWidgetSelectionHandler *pSelectionHandler) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetWidgetPrototypeInstance( 
            /* [in] */ BSTR szWidgetProto,
            /* [out] */ IRnActiveWidget **ppWidgetInstance) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetWidgetGroupSize( 
            /* [in] */ GUID gGroupId,
            /* [out] */ RtUlong *dwNumWidgets) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetWidgetGroupWidget( 
            /* [in] */ GUID gGroupId,
            /* [in] */ RtUlong dwIndex,
            /* [out] */ IRnActiveWidget **ppWidget) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRnWidgetSubsystemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnWidgetSubsystem * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnWidgetSubsystem * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnWidgetSubsystem * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Activate )( 
            IRnWidgetSubsystem * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Deactivate )( 
            IRnWidgetSubsystem * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DeactivateManagedWidgets )( 
            IRnWidgetSubsystem * This,
            /* [in] */ GUID gGroupId,
            /* [in] */ IRcUndoRedoGroup *pUndoRedo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *QueryWidgetCache )( 
            IRnWidgetSubsystem * This,
            /* [in] */ BSTR bstrWidgetName,
            /* [in] */ BSTR bstrAspectName,
            /* [retval][out] */ IRsWidgetCacheItem **pItem);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddWidgetToCache )( 
            IRnWidgetSubsystem * This,
            /* [in] */ IRnActiveWidget *pWidget);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *InvalidateCache )( 
            IRnWidgetSubsystem * This,
            /* [in] */ BSTR bstrNodeName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveWidget )( 
            IRnWidgetSubsystem * This,
            /* [in] */ IRnActiveWidget *pWidget);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddManagedWidget )( 
            IRnWidgetSubsystem * This,
            /* [in] */ IRnActiveWidget *pWidget);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ReplaceManagedWidget )( 
            IRnWidgetSubsystem * This,
            /* [in] */ IRnActiveWidget *pWidget,
            /* [in] */ IRcUndoRedoGroup *pUndoRedo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UpdateActiveWidgets )( 
            IRnWidgetSubsystem * This,
            /* [in] */ BSTR bszWidgetPrototype,
            /* [in] */ BSTR bszRelativePath,
            /* [in] */ CONID conid);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ReactivateWidgets )( 
            IRnWidgetSubsystem * This,
            /* [in] */ BSTR bszWidgetPrototype);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ReactivateWidgetsSync )( 
            IRnWidgetSubsystem * This,
            /* [in] */ BSTR bszWidgetPrototype);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetActiveWidgetParameters )( 
            IRnWidgetSubsystem * This,
            /* [out] */ IRdWidgetParameters **ppParams);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ActivateDefaultWidget )( 
            IRnWidgetSubsystem * This,
            /* [in] */ IRcUndoRedoGroup *pUndoRedo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSelection )( 
            IRnWidgetSubsystem * This,
            /* [in] */ RtUlong uCount,
            /* [in] */ IRsNode **ppSelectionList);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSelectionList )( 
            IRnWidgetSubsystem * This,
            /* [in] */ IRsObjectList *pList);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ForceSelectionOwner )( 
            IRnWidgetSubsystem * This,
            /* [in] */ BSTR szOwner);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ResetSelection )( 
            IRnWidgetSubsystem * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IgnoreSelection )( 
            IRnWidgetSubsystem * This,
            /* [in] */ RtUlong uCount);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetGroupDependency )( 
            IRnWidgetSubsystem * This,
            /* [in] */ GUID source_id,
            /* [in] */ GUID dependent_id);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveGroupDependency )( 
            IRnWidgetSubsystem * This,
            /* [in] */ GUID source_id,
            /* [in] */ GUID dependent_id);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetActiveWidget )( 
            IRnWidgetSubsystem * This,
            /* [out] */ IRnActiveWidget **ppActiveWidget);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CheckWidgetPrototypeActive )( 
            IRnWidgetSubsystem * This,
            /* [in] */ BSTR szWidgetPrototype,
            /* [out] */ RtBool *pbActive);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EnableSelectionAutoHandling )( 
            IRnWidgetSubsystem * This,
            /* [in] */ RtBool bActive);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetManagedWidgetsCount )( 
            IRnWidgetSubsystem * This,
            /* [retval][out] */ RtUlong *pdwCount);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetManagedWidget )( 
            IRnWidgetSubsystem * This,
            /* [in] */ RtUlong dwIndex,
            /* [retval][out] */ IRnActiveWidget **ppActiveWidget);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetEventHandling )( 
            IRnWidgetSubsystem * This,
            /* [in] */ RtBool bEnable);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CheckWidgetPrototypeGroupActive )( 
            IRnWidgetSubsystem * This,
            /* [in] */ BSTR szWidgetPrototype,
            /* [in] */ GUID gGUID,
            /* [out] */ RtBool *pbActive);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RegisterWidgetSelectionHandler )( 
            IRnWidgetSubsystem * This,
            /* [in] */ IRsWidgetSelectionHandler *pSelectionHandler);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UnregisterWidgetSelectionHandler )( 
            IRnWidgetSubsystem * This,
            /* [in] */ IRsWidgetSelectionHandler *pSelectionHandler);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetWidgetPrototypeInstance )( 
            IRnWidgetSubsystem * This,
            /* [in] */ BSTR szWidgetProto,
            /* [out] */ IRnActiveWidget **ppWidgetInstance);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetWidgetGroupSize )( 
            IRnWidgetSubsystem * This,
            /* [in] */ GUID gGroupId,
            /* [out] */ RtUlong *dwNumWidgets);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetWidgetGroupWidget )( 
            IRnWidgetSubsystem * This,
            /* [in] */ GUID gGroupId,
            /* [in] */ RtUlong dwIndex,
            /* [out] */ IRnActiveWidget **ppWidget);
        
        END_INTERFACE
    } IRnWidgetSubsystemVtbl;

    interface IRnWidgetSubsystem
    {
        CONST_VTBL struct IRnWidgetSubsystemVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnWidgetSubsystem_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnWidgetSubsystem_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnWidgetSubsystem_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRnWidgetSubsystem_Activate(This)	\
    (This)->lpVtbl -> Activate(This)

#define IRnWidgetSubsystem_Deactivate(This)	\
    (This)->lpVtbl -> Deactivate(This)

#define IRnWidgetSubsystem_DeactivateManagedWidgets(This,gGroupId,pUndoRedo)	\
    (This)->lpVtbl -> DeactivateManagedWidgets(This,gGroupId,pUndoRedo)

#define IRnWidgetSubsystem_QueryWidgetCache(This,bstrWidgetName,bstrAspectName,pItem)	\
    (This)->lpVtbl -> QueryWidgetCache(This,bstrWidgetName,bstrAspectName,pItem)

#define IRnWidgetSubsystem_AddWidgetToCache(This,pWidget)	\
    (This)->lpVtbl -> AddWidgetToCache(This,pWidget)

#define IRnWidgetSubsystem_InvalidateCache(This,bstrNodeName)	\
    (This)->lpVtbl -> InvalidateCache(This,bstrNodeName)

#define IRnWidgetSubsystem_RemoveWidget(This,pWidget)	\
    (This)->lpVtbl -> RemoveWidget(This,pWidget)

#define IRnWidgetSubsystem_AddManagedWidget(This,pWidget)	\
    (This)->lpVtbl -> AddManagedWidget(This,pWidget)

#define IRnWidgetSubsystem_ReplaceManagedWidget(This,pWidget,pUndoRedo)	\
    (This)->lpVtbl -> ReplaceManagedWidget(This,pWidget,pUndoRedo)

#define IRnWidgetSubsystem_UpdateActiveWidgets(This,bszWidgetPrototype,bszRelativePath,conid)	\
    (This)->lpVtbl -> UpdateActiveWidgets(This,bszWidgetPrototype,bszRelativePath,conid)

#define IRnWidgetSubsystem_ReactivateWidgets(This,bszWidgetPrototype)	\
    (This)->lpVtbl -> ReactivateWidgets(This,bszWidgetPrototype)

#define IRnWidgetSubsystem_ReactivateWidgetsSync(This,bszWidgetPrototype)	\
    (This)->lpVtbl -> ReactivateWidgetsSync(This,bszWidgetPrototype)

#define IRnWidgetSubsystem_GetActiveWidgetParameters(This,ppParams)	\
    (This)->lpVtbl -> GetActiveWidgetParameters(This,ppParams)

#define IRnWidgetSubsystem_ActivateDefaultWidget(This,pUndoRedo)	\
    (This)->lpVtbl -> ActivateDefaultWidget(This,pUndoRedo)

#define IRnWidgetSubsystem_SetSelection(This,uCount,ppSelectionList)	\
    (This)->lpVtbl -> SetSelection(This,uCount,ppSelectionList)

#define IRnWidgetSubsystem_SetSelectionList(This,pList)	\
    (This)->lpVtbl -> SetSelectionList(This,pList)

#define IRnWidgetSubsystem_ForceSelectionOwner(This,szOwner)	\
    (This)->lpVtbl -> ForceSelectionOwner(This,szOwner)

#define IRnWidgetSubsystem_ResetSelection(This)	\
    (This)->lpVtbl -> ResetSelection(This)

#define IRnWidgetSubsystem_IgnoreSelection(This,uCount)	\
    (This)->lpVtbl -> IgnoreSelection(This,uCount)

#define IRnWidgetSubsystem_SetGroupDependency(This,source_id,dependent_id)	\
    (This)->lpVtbl -> SetGroupDependency(This,source_id,dependent_id)

#define IRnWidgetSubsystem_RemoveGroupDependency(This,source_id,dependent_id)	\
    (This)->lpVtbl -> RemoveGroupDependency(This,source_id,dependent_id)

#define IRnWidgetSubsystem_GetActiveWidget(This,ppActiveWidget)	\
    (This)->lpVtbl -> GetActiveWidget(This,ppActiveWidget)

#define IRnWidgetSubsystem_CheckWidgetPrototypeActive(This,szWidgetPrototype,pbActive)	\
    (This)->lpVtbl -> CheckWidgetPrototypeActive(This,szWidgetPrototype,pbActive)

#define IRnWidgetSubsystem_EnableSelectionAutoHandling(This,bActive)	\
    (This)->lpVtbl -> EnableSelectionAutoHandling(This,bActive)

#define IRnWidgetSubsystem_GetManagedWidgetsCount(This,pdwCount)	\
    (This)->lpVtbl -> GetManagedWidgetsCount(This,pdwCount)

#define IRnWidgetSubsystem_GetManagedWidget(This,dwIndex,ppActiveWidget)	\
    (This)->lpVtbl -> GetManagedWidget(This,dwIndex,ppActiveWidget)

#define IRnWidgetSubsystem_SetEventHandling(This,bEnable)	\
    (This)->lpVtbl -> SetEventHandling(This,bEnable)

#define IRnWidgetSubsystem_CheckWidgetPrototypeGroupActive(This,szWidgetPrototype,gGUID,pbActive)	\
    (This)->lpVtbl -> CheckWidgetPrototypeGroupActive(This,szWidgetPrototype,gGUID,pbActive)

#define IRnWidgetSubsystem_RegisterWidgetSelectionHandler(This,pSelectionHandler)	\
    (This)->lpVtbl -> RegisterWidgetSelectionHandler(This,pSelectionHandler)

#define IRnWidgetSubsystem_UnregisterWidgetSelectionHandler(This,pSelectionHandler)	\
    (This)->lpVtbl -> UnregisterWidgetSelectionHandler(This,pSelectionHandler)

#define IRnWidgetSubsystem_GetWidgetPrototypeInstance(This,szWidgetProto,ppWidgetInstance)	\
    (This)->lpVtbl -> GetWidgetPrototypeInstance(This,szWidgetProto,ppWidgetInstance)

#define IRnWidgetSubsystem_GetWidgetGroupSize(This,gGroupId,dwNumWidgets)	\
    (This)->lpVtbl -> GetWidgetGroupSize(This,gGroupId,dwNumWidgets)

#define IRnWidgetSubsystem_GetWidgetGroupWidget(This,gGroupId,dwIndex,ppWidget)	\
    (This)->lpVtbl -> GetWidgetGroupWidget(This,gGroupId,dwIndex,ppWidget)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_Activate_Proxy( 
    IRnWidgetSubsystem * This);


void __RPC_STUB IRnWidgetSubsystem_Activate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_Deactivate_Proxy( 
    IRnWidgetSubsystem * This);


void __RPC_STUB IRnWidgetSubsystem_Deactivate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_DeactivateManagedWidgets_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ GUID gGroupId,
    /* [in] */ IRcUndoRedoGroup *pUndoRedo);


void __RPC_STUB IRnWidgetSubsystem_DeactivateManagedWidgets_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_QueryWidgetCache_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ BSTR bstrWidgetName,
    /* [in] */ BSTR bstrAspectName,
    /* [retval][out] */ IRsWidgetCacheItem **pItem);


void __RPC_STUB IRnWidgetSubsystem_QueryWidgetCache_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_AddWidgetToCache_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ IRnActiveWidget *pWidget);


void __RPC_STUB IRnWidgetSubsystem_AddWidgetToCache_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_InvalidateCache_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ BSTR bstrNodeName);


void __RPC_STUB IRnWidgetSubsystem_InvalidateCache_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_RemoveWidget_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ IRnActiveWidget *pWidget);


void __RPC_STUB IRnWidgetSubsystem_RemoveWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_AddManagedWidget_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ IRnActiveWidget *pWidget);


void __RPC_STUB IRnWidgetSubsystem_AddManagedWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_ReplaceManagedWidget_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ IRnActiveWidget *pWidget,
    /* [in] */ IRcUndoRedoGroup *pUndoRedo);


void __RPC_STUB IRnWidgetSubsystem_ReplaceManagedWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_UpdateActiveWidgets_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ BSTR bszWidgetPrototype,
    /* [in] */ BSTR bszRelativePath,
    /* [in] */ CONID conid);


void __RPC_STUB IRnWidgetSubsystem_UpdateActiveWidgets_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_ReactivateWidgets_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ BSTR bszWidgetPrototype);


void __RPC_STUB IRnWidgetSubsystem_ReactivateWidgets_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_ReactivateWidgetsSync_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ BSTR bszWidgetPrototype);


void __RPC_STUB IRnWidgetSubsystem_ReactivateWidgetsSync_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_GetActiveWidgetParameters_Proxy( 
    IRnWidgetSubsystem * This,
    /* [out] */ IRdWidgetParameters **ppParams);


void __RPC_STUB IRnWidgetSubsystem_GetActiveWidgetParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_ActivateDefaultWidget_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ IRcUndoRedoGroup *pUndoRedo);


void __RPC_STUB IRnWidgetSubsystem_ActivateDefaultWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_SetSelection_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ RtUlong uCount,
    /* [in] */ IRsNode **ppSelectionList);


void __RPC_STUB IRnWidgetSubsystem_SetSelection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_SetSelectionList_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ IRsObjectList *pList);


void __RPC_STUB IRnWidgetSubsystem_SetSelectionList_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_ForceSelectionOwner_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ BSTR szOwner);


void __RPC_STUB IRnWidgetSubsystem_ForceSelectionOwner_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_ResetSelection_Proxy( 
    IRnWidgetSubsystem * This);


void __RPC_STUB IRnWidgetSubsystem_ResetSelection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_IgnoreSelection_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ RtUlong uCount);


void __RPC_STUB IRnWidgetSubsystem_IgnoreSelection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_SetGroupDependency_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ GUID source_id,
    /* [in] */ GUID dependent_id);


void __RPC_STUB IRnWidgetSubsystem_SetGroupDependency_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_RemoveGroupDependency_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ GUID source_id,
    /* [in] */ GUID dependent_id);


void __RPC_STUB IRnWidgetSubsystem_RemoveGroupDependency_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_GetActiveWidget_Proxy( 
    IRnWidgetSubsystem * This,
    /* [out] */ IRnActiveWidget **ppActiveWidget);


void __RPC_STUB IRnWidgetSubsystem_GetActiveWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_CheckWidgetPrototypeActive_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ BSTR szWidgetPrototype,
    /* [out] */ RtBool *pbActive);


void __RPC_STUB IRnWidgetSubsystem_CheckWidgetPrototypeActive_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_EnableSelectionAutoHandling_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ RtBool bActive);


void __RPC_STUB IRnWidgetSubsystem_EnableSelectionAutoHandling_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_GetManagedWidgetsCount_Proxy( 
    IRnWidgetSubsystem * This,
    /* [retval][out] */ RtUlong *pdwCount);


void __RPC_STUB IRnWidgetSubsystem_GetManagedWidgetsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_GetManagedWidget_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ RtUlong dwIndex,
    /* [retval][out] */ IRnActiveWidget **ppActiveWidget);


void __RPC_STUB IRnWidgetSubsystem_GetManagedWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_SetEventHandling_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ RtBool bEnable);


void __RPC_STUB IRnWidgetSubsystem_SetEventHandling_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_CheckWidgetPrototypeGroupActive_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ BSTR szWidgetPrototype,
    /* [in] */ GUID gGUID,
    /* [out] */ RtBool *pbActive);


void __RPC_STUB IRnWidgetSubsystem_CheckWidgetPrototypeGroupActive_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_RegisterWidgetSelectionHandler_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ IRsWidgetSelectionHandler *pSelectionHandler);


void __RPC_STUB IRnWidgetSubsystem_RegisterWidgetSelectionHandler_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_UnregisterWidgetSelectionHandler_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ IRsWidgetSelectionHandler *pSelectionHandler);


void __RPC_STUB IRnWidgetSubsystem_UnregisterWidgetSelectionHandler_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_GetWidgetPrototypeInstance_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ BSTR szWidgetProto,
    /* [out] */ IRnActiveWidget **ppWidgetInstance);


void __RPC_STUB IRnWidgetSubsystem_GetWidgetPrototypeInstance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_GetWidgetGroupSize_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ GUID gGroupId,
    /* [out] */ RtUlong *dwNumWidgets);


void __RPC_STUB IRnWidgetSubsystem_GetWidgetGroupSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnWidgetSubsystem_GetWidgetGroupWidget_Proxy( 
    IRnWidgetSubsystem * This,
    /* [in] */ GUID gGroupId,
    /* [in] */ RtUlong dwIndex,
    /* [out] */ IRnActiveWidget **ppWidget);


void __RPC_STUB IRnWidgetSubsystem_GetWidgetGroupWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRnWidgetSubsystem_INTERFACE_DEFINED__ */


#ifndef __IRsUnknownBackgroundController_INTERFACE_DEFINED__
#define __IRsUnknownBackgroundController_INTERFACE_DEFINED__

/* interface IRsUnknownBackgroundController */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsUnknownBackgroundController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("67BD05B8-F144-4a77-A999-A4887A06AA38")
    IRsUnknownBackgroundController : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE CheckActivationStatus( 
            /* [in] */ RtMouseEvent *pMouseEvent,
            /* [in] */ IRsNode *pViewNode,
            /* [out] */ IRsNode **ppActiveNode) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetActivationPriority( 
            /* [out] */ RtUlong *uPriority) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Activate( 
            /* [in] */ RtMouseEvent *pMouseEvent,
            /* [in] */ IRsNode *pViewNode,
            /* [in] */ IRsNode *pAction) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsUnknownBackgroundControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsUnknownBackgroundController * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsUnknownBackgroundController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsUnknownBackgroundController * This);
        
        HRESULT ( STDMETHODCALLTYPE *CheckActivationStatus )( 
            IRsUnknownBackgroundController * This,
            /* [in] */ RtMouseEvent *pMouseEvent,
            /* [in] */ IRsNode *pViewNode,
            /* [out] */ IRsNode **ppActiveNode);
        
        HRESULT ( STDMETHODCALLTYPE *GetActivationPriority )( 
            IRsUnknownBackgroundController * This,
            /* [out] */ RtUlong *uPriority);
        
        HRESULT ( STDMETHODCALLTYPE *Activate )( 
            IRsUnknownBackgroundController * This,
            /* [in] */ RtMouseEvent *pMouseEvent,
            /* [in] */ IRsNode *pViewNode,
            /* [in] */ IRsNode *pAction);
        
        END_INTERFACE
    } IRsUnknownBackgroundControllerVtbl;

    interface IRsUnknownBackgroundController
    {
        CONST_VTBL struct IRsUnknownBackgroundControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsUnknownBackgroundController_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsUnknownBackgroundController_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsUnknownBackgroundController_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsUnknownBackgroundController_CheckActivationStatus(This,pMouseEvent,pViewNode,ppActiveNode)	\
    (This)->lpVtbl -> CheckActivationStatus(This,pMouseEvent,pViewNode,ppActiveNode)

#define IRsUnknownBackgroundController_GetActivationPriority(This,uPriority)	\
    (This)->lpVtbl -> GetActivationPriority(This,uPriority)

#define IRsUnknownBackgroundController_Activate(This,pMouseEvent,pViewNode,pAction)	\
    (This)->lpVtbl -> Activate(This,pMouseEvent,pViewNode,pAction)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRsUnknownBackgroundController_CheckActivationStatus_Proxy( 
    IRsUnknownBackgroundController * This,
    /* [in] */ RtMouseEvent *pMouseEvent,
    /* [in] */ IRsNode *pViewNode,
    /* [out] */ IRsNode **ppActiveNode);


void __RPC_STUB IRsUnknownBackgroundController_CheckActivationStatus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsUnknownBackgroundController_GetActivationPriority_Proxy( 
    IRsUnknownBackgroundController * This,
    /* [out] */ RtUlong *uPriority);


void __RPC_STUB IRsUnknownBackgroundController_GetActivationPriority_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsUnknownBackgroundController_Activate_Proxy( 
    IRsUnknownBackgroundController * This,
    /* [in] */ RtMouseEvent *pMouseEvent,
    /* [in] */ IRsNode *pViewNode,
    /* [in] */ IRsNode *pAction);


void __RPC_STUB IRsUnknownBackgroundController_Activate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsUnknownBackgroundController_INTERFACE_DEFINED__ */


#ifndef __IRsUnknownForegroundController_INTERFACE_DEFINED__
#define __IRsUnknownForegroundController_INTERFACE_DEFINED__

/* interface IRsUnknownForegroundController */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsUnknownForegroundController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E63C91E6-D1D5-402c-82B9-13B7F4192755")
    IRsUnknownForegroundController : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE IsWidgetVisible( 
            /* [in] */ RtBool *pbVisible) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetViewportParameters( 
            /* [in] */ IRsNode *pViewNode,
            /* [in] */ struct RtRenderTargetInfo *pRenderTagetInfo,
            /* [in] */ struct RtLayerInfo *pLayerInfo) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMatrix( 
            /* [in] */ IRdMatrixf **ppMatrix) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMesh( 
            /* [in] */ IRdMesh **ppMesh) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE IsScreenDistanceRequired( 
            /* [in] */ RtBool *pbReqScrDist) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetRaycastParameters( 
            /* [in] */ RtFloat fDst,
            /* [in] */ RtUlong dwObjectId,
            /* [in] */ RtPoint *pptNearestPt) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetRaycastHit( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DeactivateHighlite( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CheckActivationStatus( 
            /* [in] */ RtMouseEvent *pMouseEvent,
            /* [in] */ IRsNode *pViewNode,
            /* [out] */ IRsNode **ppActiveNode) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Activate( 
            /* [in] */ RtMouseEvent *pMouseEvent,
            /* [in] */ IRsNode *pViewNode,
            /* [in] */ IRsNode *pAction) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsUnknownForegroundControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsUnknownForegroundController * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsUnknownForegroundController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsUnknownForegroundController * This);
        
        HRESULT ( STDMETHODCALLTYPE *IsWidgetVisible )( 
            IRsUnknownForegroundController * This,
            /* [in] */ RtBool *pbVisible);
        
        HRESULT ( STDMETHODCALLTYPE *SetViewportParameters )( 
            IRsUnknownForegroundController * This,
            /* [in] */ IRsNode *pViewNode,
            /* [in] */ struct RtRenderTargetInfo *pRenderTagetInfo,
            /* [in] */ struct RtLayerInfo *pLayerInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetMatrix )( 
            IRsUnknownForegroundController * This,
            /* [in] */ IRdMatrixf **ppMatrix);
        
        HRESULT ( STDMETHODCALLTYPE *GetMesh )( 
            IRsUnknownForegroundController * This,
            /* [in] */ IRdMesh **ppMesh);
        
        HRESULT ( STDMETHODCALLTYPE *IsScreenDistanceRequired )( 
            IRsUnknownForegroundController * This,
            /* [in] */ RtBool *pbReqScrDist);
        
        HRESULT ( STDMETHODCALLTYPE *SetRaycastParameters )( 
            IRsUnknownForegroundController * This,
            /* [in] */ RtFloat fDst,
            /* [in] */ RtUlong dwObjectId,
            /* [in] */ RtPoint *pptNearestPt);
        
        HRESULT ( STDMETHODCALLTYPE *SetRaycastHit )( 
            IRsUnknownForegroundController * This);
        
        HRESULT ( STDMETHODCALLTYPE *DeactivateHighlite )( 
            IRsUnknownForegroundController * This);
        
        HRESULT ( STDMETHODCALLTYPE *CheckActivationStatus )( 
            IRsUnknownForegroundController * This,
            /* [in] */ RtMouseEvent *pMouseEvent,
            /* [in] */ IRsNode *pViewNode,
            /* [out] */ IRsNode **ppActiveNode);
        
        HRESULT ( STDMETHODCALLTYPE *Activate )( 
            IRsUnknownForegroundController * This,
            /* [in] */ RtMouseEvent *pMouseEvent,
            /* [in] */ IRsNode *pViewNode,
            /* [in] */ IRsNode *pAction);
        
        END_INTERFACE
    } IRsUnknownForegroundControllerVtbl;

    interface IRsUnknownForegroundController
    {
        CONST_VTBL struct IRsUnknownForegroundControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsUnknownForegroundController_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsUnknownForegroundController_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsUnknownForegroundController_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsUnknownForegroundController_IsWidgetVisible(This,pbVisible)	\
    (This)->lpVtbl -> IsWidgetVisible(This,pbVisible)

#define IRsUnknownForegroundController_SetViewportParameters(This,pViewNode,pRenderTagetInfo,pLayerInfo)	\
    (This)->lpVtbl -> SetViewportParameters(This,pViewNode,pRenderTagetInfo,pLayerInfo)

#define IRsUnknownForegroundController_GetMatrix(This,ppMatrix)	\
    (This)->lpVtbl -> GetMatrix(This,ppMatrix)

#define IRsUnknownForegroundController_GetMesh(This,ppMesh)	\
    (This)->lpVtbl -> GetMesh(This,ppMesh)

#define IRsUnknownForegroundController_IsScreenDistanceRequired(This,pbReqScrDist)	\
    (This)->lpVtbl -> IsScreenDistanceRequired(This,pbReqScrDist)

#define IRsUnknownForegroundController_SetRaycastParameters(This,fDst,dwObjectId,pptNearestPt)	\
    (This)->lpVtbl -> SetRaycastParameters(This,fDst,dwObjectId,pptNearestPt)

#define IRsUnknownForegroundController_SetRaycastHit(This)	\
    (This)->lpVtbl -> SetRaycastHit(This)

#define IRsUnknownForegroundController_DeactivateHighlite(This)	\
    (This)->lpVtbl -> DeactivateHighlite(This)

#define IRsUnknownForegroundController_CheckActivationStatus(This,pMouseEvent,pViewNode,ppActiveNode)	\
    (This)->lpVtbl -> CheckActivationStatus(This,pMouseEvent,pViewNode,ppActiveNode)

#define IRsUnknownForegroundController_Activate(This,pMouseEvent,pViewNode,pAction)	\
    (This)->lpVtbl -> Activate(This,pMouseEvent,pViewNode,pAction)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRsUnknownForegroundController_IsWidgetVisible_Proxy( 
    IRsUnknownForegroundController * This,
    /* [in] */ RtBool *pbVisible);


void __RPC_STUB IRsUnknownForegroundController_IsWidgetVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsUnknownForegroundController_SetViewportParameters_Proxy( 
    IRsUnknownForegroundController * This,
    /* [in] */ IRsNode *pViewNode,
    /* [in] */ struct RtRenderTargetInfo *pRenderTagetInfo,
    /* [in] */ struct RtLayerInfo *pLayerInfo);


void __RPC_STUB IRsUnknownForegroundController_SetViewportParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsUnknownForegroundController_GetMatrix_Proxy( 
    IRsUnknownForegroundController * This,
    /* [in] */ IRdMatrixf **ppMatrix);


void __RPC_STUB IRsUnknownForegroundController_GetMatrix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsUnknownForegroundController_GetMesh_Proxy( 
    IRsUnknownForegroundController * This,
    /* [in] */ IRdMesh **ppMesh);


void __RPC_STUB IRsUnknownForegroundController_GetMesh_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsUnknownForegroundController_IsScreenDistanceRequired_Proxy( 
    IRsUnknownForegroundController * This,
    /* [in] */ RtBool *pbReqScrDist);


void __RPC_STUB IRsUnknownForegroundController_IsScreenDistanceRequired_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsUnknownForegroundController_SetRaycastParameters_Proxy( 
    IRsUnknownForegroundController * This,
    /* [in] */ RtFloat fDst,
    /* [in] */ RtUlong dwObjectId,
    /* [in] */ RtPoint *pptNearestPt);


void __RPC_STUB IRsUnknownForegroundController_SetRaycastParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsUnknownForegroundController_SetRaycastHit_Proxy( 
    IRsUnknownForegroundController * This);


void __RPC_STUB IRsUnknownForegroundController_SetRaycastHit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsUnknownForegroundController_DeactivateHighlite_Proxy( 
    IRsUnknownForegroundController * This);


void __RPC_STUB IRsUnknownForegroundController_DeactivateHighlite_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsUnknownForegroundController_CheckActivationStatus_Proxy( 
    IRsUnknownForegroundController * This,
    /* [in] */ RtMouseEvent *pMouseEvent,
    /* [in] */ IRsNode *pViewNode,
    /* [out] */ IRsNode **ppActiveNode);


void __RPC_STUB IRsUnknownForegroundController_CheckActivationStatus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsUnknownForegroundController_Activate_Proxy( 
    IRsUnknownForegroundController * This,
    /* [in] */ RtMouseEvent *pMouseEvent,
    /* [in] */ IRsNode *pViewNode,
    /* [in] */ IRsNode *pAction);


void __RPC_STUB IRsUnknownForegroundController_Activate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsUnknownForegroundController_INTERFACE_DEFINED__ */


#ifndef __IRsWidgetToolController_INTERFACE_DEFINED__
#define __IRsWidgetToolController_INTERFACE_DEFINED__

/* interface IRsWidgetToolController */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsWidgetToolController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("50434658-D276-4E4C-A28D-B660048D634F")
    IRsWidgetToolController : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE AddBackgroundListener( 
            /* [in] */ IRsUnknownBackgroundController *pController) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveBackgroundListener( 
            /* [in] */ IRsUnknownBackgroundController *pController) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DeactivateBackgroundListener( 
            /* [in] */ IRsUnknownBackgroundController *pController) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AddForegroundListener( 
            /* [in] */ IRsUnknownForegroundController *pController) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveForegroundListener( 
            /* [in] */ IRsUnknownForegroundController *pController) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DeactivateForegroundListener( 
            /* [in] */ IRsUnknownForegroundController *pController) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetLastRaycastRay( 
            /* [in] */ RtPoint *pPosition,
            /* [in] */ RtVector3f *pDirection) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetFocus( 
            /* [in] */ RtBool *pFocus) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetIntersectionTolerance( 
            /* [in] */ RtFloat fDistance) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetIntersectionTolerance( 
            /* [in] */ RtFloat *pfDistance) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CheckNodeWidgetActive( 
            /* [in] */ IRsNode *pNode) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetActiveWidgetController( 
            /* [in] */ IRsWidgetController **ppCtrl) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsWidgetToolControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsWidgetToolController * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsWidgetToolController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsWidgetToolController * This);
        
        HRESULT ( STDMETHODCALLTYPE *AddBackgroundListener )( 
            IRsWidgetToolController * This,
            /* [in] */ IRsUnknownBackgroundController *pController);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveBackgroundListener )( 
            IRsWidgetToolController * This,
            /* [in] */ IRsUnknownBackgroundController *pController);
        
        HRESULT ( STDMETHODCALLTYPE *DeactivateBackgroundListener )( 
            IRsWidgetToolController * This,
            /* [in] */ IRsUnknownBackgroundController *pController);
        
        HRESULT ( STDMETHODCALLTYPE *AddForegroundListener )( 
            IRsWidgetToolController * This,
            /* [in] */ IRsUnknownForegroundController *pController);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveForegroundListener )( 
            IRsWidgetToolController * This,
            /* [in] */ IRsUnknownForegroundController *pController);
        
        HRESULT ( STDMETHODCALLTYPE *DeactivateForegroundListener )( 
            IRsWidgetToolController * This,
            /* [in] */ IRsUnknownForegroundController *pController);
        
        HRESULT ( STDMETHODCALLTYPE *GetLastRaycastRay )( 
            IRsWidgetToolController * This,
            /* [in] */ RtPoint *pPosition,
            /* [in] */ RtVector3f *pDirection);
        
        HRESULT ( STDMETHODCALLTYPE *GetFocus )( 
            IRsWidgetToolController * This,
            /* [in] */ RtBool *pFocus);
        
        HRESULT ( STDMETHODCALLTYPE *SetIntersectionTolerance )( 
            IRsWidgetToolController * This,
            /* [in] */ RtFloat fDistance);
        
        HRESULT ( STDMETHODCALLTYPE *GetIntersectionTolerance )( 
            IRsWidgetToolController * This,
            /* [in] */ RtFloat *pfDistance);
        
        HRESULT ( STDMETHODCALLTYPE *CheckNodeWidgetActive )( 
            IRsWidgetToolController * This,
            /* [in] */ IRsNode *pNode);
        
        HRESULT ( STDMETHODCALLTYPE *GetActiveWidgetController )( 
            IRsWidgetToolController * This,
            /* [in] */ IRsWidgetController **ppCtrl);
        
        END_INTERFACE
    } IRsWidgetToolControllerVtbl;

    interface IRsWidgetToolController
    {
        CONST_VTBL struct IRsWidgetToolControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsWidgetToolController_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsWidgetToolController_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsWidgetToolController_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsWidgetToolController_AddBackgroundListener(This,pController)	\
    (This)->lpVtbl -> AddBackgroundListener(This,pController)

#define IRsWidgetToolController_RemoveBackgroundListener(This,pController)	\
    (This)->lpVtbl -> RemoveBackgroundListener(This,pController)

#define IRsWidgetToolController_DeactivateBackgroundListener(This,pController)	\
    (This)->lpVtbl -> DeactivateBackgroundListener(This,pController)

#define IRsWidgetToolController_AddForegroundListener(This,pController)	\
    (This)->lpVtbl -> AddForegroundListener(This,pController)

#define IRsWidgetToolController_RemoveForegroundListener(This,pController)	\
    (This)->lpVtbl -> RemoveForegroundListener(This,pController)

#define IRsWidgetToolController_DeactivateForegroundListener(This,pController)	\
    (This)->lpVtbl -> DeactivateForegroundListener(This,pController)

#define IRsWidgetToolController_GetLastRaycastRay(This,pPosition,pDirection)	\
    (This)->lpVtbl -> GetLastRaycastRay(This,pPosition,pDirection)

#define IRsWidgetToolController_GetFocus(This,pFocus)	\
    (This)->lpVtbl -> GetFocus(This,pFocus)

#define IRsWidgetToolController_SetIntersectionTolerance(This,fDistance)	\
    (This)->lpVtbl -> SetIntersectionTolerance(This,fDistance)

#define IRsWidgetToolController_GetIntersectionTolerance(This,pfDistance)	\
    (This)->lpVtbl -> GetIntersectionTolerance(This,pfDistance)

#define IRsWidgetToolController_CheckNodeWidgetActive(This,pNode)	\
    (This)->lpVtbl -> CheckNodeWidgetActive(This,pNode)

#define IRsWidgetToolController_GetActiveWidgetController(This,ppCtrl)	\
    (This)->lpVtbl -> GetActiveWidgetController(This,ppCtrl)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRsWidgetToolController_AddBackgroundListener_Proxy( 
    IRsWidgetToolController * This,
    /* [in] */ IRsUnknownBackgroundController *pController);


void __RPC_STUB IRsWidgetToolController_AddBackgroundListener_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetToolController_RemoveBackgroundListener_Proxy( 
    IRsWidgetToolController * This,
    /* [in] */ IRsUnknownBackgroundController *pController);


void __RPC_STUB IRsWidgetToolController_RemoveBackgroundListener_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetToolController_DeactivateBackgroundListener_Proxy( 
    IRsWidgetToolController * This,
    /* [in] */ IRsUnknownBackgroundController *pController);


void __RPC_STUB IRsWidgetToolController_DeactivateBackgroundListener_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetToolController_AddForegroundListener_Proxy( 
    IRsWidgetToolController * This,
    /* [in] */ IRsUnknownForegroundController *pController);


void __RPC_STUB IRsWidgetToolController_AddForegroundListener_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetToolController_RemoveForegroundListener_Proxy( 
    IRsWidgetToolController * This,
    /* [in] */ IRsUnknownForegroundController *pController);


void __RPC_STUB IRsWidgetToolController_RemoveForegroundListener_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetToolController_DeactivateForegroundListener_Proxy( 
    IRsWidgetToolController * This,
    /* [in] */ IRsUnknownForegroundController *pController);


void __RPC_STUB IRsWidgetToolController_DeactivateForegroundListener_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetToolController_GetLastRaycastRay_Proxy( 
    IRsWidgetToolController * This,
    /* [in] */ RtPoint *pPosition,
    /* [in] */ RtVector3f *pDirection);


void __RPC_STUB IRsWidgetToolController_GetLastRaycastRay_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetToolController_GetFocus_Proxy( 
    IRsWidgetToolController * This,
    /* [in] */ RtBool *pFocus);


void __RPC_STUB IRsWidgetToolController_GetFocus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetToolController_SetIntersectionTolerance_Proxy( 
    IRsWidgetToolController * This,
    /* [in] */ RtFloat fDistance);


void __RPC_STUB IRsWidgetToolController_SetIntersectionTolerance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetToolController_GetIntersectionTolerance_Proxy( 
    IRsWidgetToolController * This,
    /* [in] */ RtFloat *pfDistance);


void __RPC_STUB IRsWidgetToolController_GetIntersectionTolerance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetToolController_CheckNodeWidgetActive_Proxy( 
    IRsWidgetToolController * This,
    /* [in] */ IRsNode *pNode);


void __RPC_STUB IRsWidgetToolController_CheckNodeWidgetActive_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetToolController_GetActiveWidgetController_Proxy( 
    IRsWidgetToolController * This,
    /* [in] */ IRsWidgetController **ppCtrl);


void __RPC_STUB IRsWidgetToolController_GetActiveWidgetController_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsWidgetToolController_INTERFACE_DEFINED__ */


#ifndef __IRfMarkerVisualization_INTERFACE_DEFINED__
#define __IRfMarkerVisualization_INTERFACE_DEFINED__

/* interface IRfMarkerVisualization */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRfMarkerVisualization;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8823D146-13BE-40A2-BA82-B3EBE7D055F2")
    IRfMarkerVisualization : public IUnknown
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetVisualizationMesh( 
            /* [in] */ GUID gGroupId,
            /* [in] */ IRdMesh *pMesh) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ResetVisualizationMesh( 
            /* [in] */ GUID gGroupId) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetMarkerVisualizationNode( 
            /* [in] */ IRsNode **ppNode) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AttachVisualizationMesh( 
            /* [in] */ GUID gGroupId) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddVertex( 
            /* [in] */ RtPoint *pVertex,
            /* [in] */ float fSize,
            /* [in] */ RtUlong dwColor) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddEdge( 
            /* [in] */ RtPoint *pVertex1,
            /* [in] */ RtPoint *pVertex2,
            /* [in] */ RtUlong dwColor) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddVector( 
            /* [in] */ RtPoint *pOrigin,
            /* [in] */ RtVector3f *pDirection,
            /* [in] */ RtVector3f *pUp,
            /* [in] */ RtUlong dwColor) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetTextSize( 
            /* [in] */ BSTR szText,
            /* [in] */ RtUlong *dwSizeX,
            /* [in] */ RtUlong *dwSizeY) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddText( 
            /* [in] */ RtPoint *pOrigin,
            /* [in] */ RtVector3f *pDirX,
            /* [in] */ RtVector3f *pDirY,
            /* [in] */ BSTR szText,
            /* [in] */ RtDWORD dwColor) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddMeasureText( 
            /* [in] */ RtPoint *pOrigin,
            /* [in] */ RtVector3f *pDirX,
            /* [in] */ RtVector3f *pDirY,
            /* [in] */ BSTR szText,
            /* [in] */ RtDWORD dwColor) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetMeasureTextSize( 
            /* [in] */ BSTR szText,
            /* [in] */ RtUlong *dwSizeX,
            /* [in] */ RtUlong *dwSizeY) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddTriangle( 
            /* [in] */ RtPoint *pVertex1,
            /* [in] */ RtPoint *pVertex2,
            /* [in] */ RtPoint *pVertex3,
            /* [in] */ RtUlong dwColor) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRfMarkerVisualizationVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRfMarkerVisualization * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRfMarkerVisualization * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRfMarkerVisualization * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetVisualizationMesh )( 
            IRfMarkerVisualization * This,
            /* [in] */ GUID gGroupId,
            /* [in] */ IRdMesh *pMesh);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ResetVisualizationMesh )( 
            IRfMarkerVisualization * This,
            /* [in] */ GUID gGroupId);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetMarkerVisualizationNode )( 
            IRfMarkerVisualization * This,
            /* [in] */ IRsNode **ppNode);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AttachVisualizationMesh )( 
            IRfMarkerVisualization * This,
            /* [in] */ GUID gGroupId);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddVertex )( 
            IRfMarkerVisualization * This,
            /* [in] */ RtPoint *pVertex,
            /* [in] */ float fSize,
            /* [in] */ RtUlong dwColor);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddEdge )( 
            IRfMarkerVisualization * This,
            /* [in] */ RtPoint *pVertex1,
            /* [in] */ RtPoint *pVertex2,
            /* [in] */ RtUlong dwColor);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddVector )( 
            IRfMarkerVisualization * This,
            /* [in] */ RtPoint *pOrigin,
            /* [in] */ RtVector3f *pDirection,
            /* [in] */ RtVector3f *pUp,
            /* [in] */ RtUlong dwColor);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetTextSize )( 
            IRfMarkerVisualization * This,
            /* [in] */ BSTR szText,
            /* [in] */ RtUlong *dwSizeX,
            /* [in] */ RtUlong *dwSizeY);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddText )( 
            IRfMarkerVisualization * This,
            /* [in] */ RtPoint *pOrigin,
            /* [in] */ RtVector3f *pDirX,
            /* [in] */ RtVector3f *pDirY,
            /* [in] */ BSTR szText,
            /* [in] */ RtDWORD dwColor);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddMeasureText )( 
            IRfMarkerVisualization * This,
            /* [in] */ RtPoint *pOrigin,
            /* [in] */ RtVector3f *pDirX,
            /* [in] */ RtVector3f *pDirY,
            /* [in] */ BSTR szText,
            /* [in] */ RtDWORD dwColor);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetMeasureTextSize )( 
            IRfMarkerVisualization * This,
            /* [in] */ BSTR szText,
            /* [in] */ RtUlong *dwSizeX,
            /* [in] */ RtUlong *dwSizeY);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddTriangle )( 
            IRfMarkerVisualization * This,
            /* [in] */ RtPoint *pVertex1,
            /* [in] */ RtPoint *pVertex2,
            /* [in] */ RtPoint *pVertex3,
            /* [in] */ RtUlong dwColor);
        
        END_INTERFACE
    } IRfMarkerVisualizationVtbl;

    interface IRfMarkerVisualization
    {
        CONST_VTBL struct IRfMarkerVisualizationVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRfMarkerVisualization_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRfMarkerVisualization_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRfMarkerVisualization_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRfMarkerVisualization_SetVisualizationMesh(This,gGroupId,pMesh)	\
    (This)->lpVtbl -> SetVisualizationMesh(This,gGroupId,pMesh)

#define IRfMarkerVisualization_ResetVisualizationMesh(This,gGroupId)	\
    (This)->lpVtbl -> ResetVisualizationMesh(This,gGroupId)

#define IRfMarkerVisualization_GetMarkerVisualizationNode(This,ppNode)	\
    (This)->lpVtbl -> GetMarkerVisualizationNode(This,ppNode)

#define IRfMarkerVisualization_AttachVisualizationMesh(This,gGroupId)	\
    (This)->lpVtbl -> AttachVisualizationMesh(This,gGroupId)

#define IRfMarkerVisualization_AddVertex(This,pVertex,fSize,dwColor)	\
    (This)->lpVtbl -> AddVertex(This,pVertex,fSize,dwColor)

#define IRfMarkerVisualization_AddEdge(This,pVertex1,pVertex2,dwColor)	\
    (This)->lpVtbl -> AddEdge(This,pVertex1,pVertex2,dwColor)

#define IRfMarkerVisualization_AddVector(This,pOrigin,pDirection,pUp,dwColor)	\
    (This)->lpVtbl -> AddVector(This,pOrigin,pDirection,pUp,dwColor)

#define IRfMarkerVisualization_GetTextSize(This,szText,dwSizeX,dwSizeY)	\
    (This)->lpVtbl -> GetTextSize(This,szText,dwSizeX,dwSizeY)

#define IRfMarkerVisualization_AddText(This,pOrigin,pDirX,pDirY,szText,dwColor)	\
    (This)->lpVtbl -> AddText(This,pOrigin,pDirX,pDirY,szText,dwColor)

#define IRfMarkerVisualization_AddMeasureText(This,pOrigin,pDirX,pDirY,szText,dwColor)	\
    (This)->lpVtbl -> AddMeasureText(This,pOrigin,pDirX,pDirY,szText,dwColor)

#define IRfMarkerVisualization_GetMeasureTextSize(This,szText,dwSizeX,dwSizeY)	\
    (This)->lpVtbl -> GetMeasureTextSize(This,szText,dwSizeX,dwSizeY)

#define IRfMarkerVisualization_AddTriangle(This,pVertex1,pVertex2,pVertex3,dwColor)	\
    (This)->lpVtbl -> AddTriangle(This,pVertex1,pVertex2,pVertex3,dwColor)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualization_SetVisualizationMesh_Proxy( 
    IRfMarkerVisualization * This,
    /* [in] */ GUID gGroupId,
    /* [in] */ IRdMesh *pMesh);


void __RPC_STUB IRfMarkerVisualization_SetVisualizationMesh_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualization_ResetVisualizationMesh_Proxy( 
    IRfMarkerVisualization * This,
    /* [in] */ GUID gGroupId);


void __RPC_STUB IRfMarkerVisualization_ResetVisualizationMesh_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualization_GetMarkerVisualizationNode_Proxy( 
    IRfMarkerVisualization * This,
    /* [in] */ IRsNode **ppNode);


void __RPC_STUB IRfMarkerVisualization_GetMarkerVisualizationNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualization_AttachVisualizationMesh_Proxy( 
    IRfMarkerVisualization * This,
    /* [in] */ GUID gGroupId);


void __RPC_STUB IRfMarkerVisualization_AttachVisualizationMesh_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualization_AddVertex_Proxy( 
    IRfMarkerVisualization * This,
    /* [in] */ RtPoint *pVertex,
    /* [in] */ float fSize,
    /* [in] */ RtUlong dwColor);


void __RPC_STUB IRfMarkerVisualization_AddVertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualization_AddEdge_Proxy( 
    IRfMarkerVisualization * This,
    /* [in] */ RtPoint *pVertex1,
    /* [in] */ RtPoint *pVertex2,
    /* [in] */ RtUlong dwColor);


void __RPC_STUB IRfMarkerVisualization_AddEdge_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualization_AddVector_Proxy( 
    IRfMarkerVisualization * This,
    /* [in] */ RtPoint *pOrigin,
    /* [in] */ RtVector3f *pDirection,
    /* [in] */ RtVector3f *pUp,
    /* [in] */ RtUlong dwColor);


void __RPC_STUB IRfMarkerVisualization_AddVector_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualization_GetTextSize_Proxy( 
    IRfMarkerVisualization * This,
    /* [in] */ BSTR szText,
    /* [in] */ RtUlong *dwSizeX,
    /* [in] */ RtUlong *dwSizeY);


void __RPC_STUB IRfMarkerVisualization_GetTextSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualization_AddText_Proxy( 
    IRfMarkerVisualization * This,
    /* [in] */ RtPoint *pOrigin,
    /* [in] */ RtVector3f *pDirX,
    /* [in] */ RtVector3f *pDirY,
    /* [in] */ BSTR szText,
    /* [in] */ RtDWORD dwColor);


void __RPC_STUB IRfMarkerVisualization_AddText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualization_AddMeasureText_Proxy( 
    IRfMarkerVisualization * This,
    /* [in] */ RtPoint *pOrigin,
    /* [in] */ RtVector3f *pDirX,
    /* [in] */ RtVector3f *pDirY,
    /* [in] */ BSTR szText,
    /* [in] */ RtDWORD dwColor);


void __RPC_STUB IRfMarkerVisualization_AddMeasureText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualization_GetMeasureTextSize_Proxy( 
    IRfMarkerVisualization * This,
    /* [in] */ BSTR szText,
    /* [in] */ RtUlong *dwSizeX,
    /* [in] */ RtUlong *dwSizeY);


void __RPC_STUB IRfMarkerVisualization_GetMeasureTextSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualization_AddTriangle_Proxy( 
    IRfMarkerVisualization * This,
    /* [in] */ RtPoint *pVertex1,
    /* [in] */ RtPoint *pVertex2,
    /* [in] */ RtPoint *pVertex3,
    /* [in] */ RtUlong dwColor);


void __RPC_STUB IRfMarkerVisualization_AddTriangle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRfMarkerVisualization_INTERFACE_DEFINED__ */


#ifndef __IRfMarkerVisualizationDisp_INTERFACE_DEFINED__
#define __IRfMarkerVisualizationDisp_INTERFACE_DEFINED__

/* interface IRfMarkerVisualizationDisp */
/* [object][unique][helpstring][uuid][dual] */ 


EXTERN_C const IID IID_IRfMarkerVisualizationDisp;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6533D97A-26A3-40e0-94E9-46C797CE9472")
    IRfMarkerVisualizationDisp : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetVisualizationMesh( 
            /* [in] */ BSTR gGroupId,
            /* [in] */ IDispatch *pMesh) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ResetVisualizationMesh( 
            /* [in] */ BSTR gGroupId) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AttachVisualizationMesh( 
            /* [in] */ BSTR gGroupId) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddVertex( 
            /* [in] */ IDispatch *pVertex,
            /* [in] */ float fSize,
            /* [in] */ IDispatch *pColor) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddEdge( 
            /* [in] */ IDispatch *pVertex1,
            /* [in] */ IDispatch *pVertex2,
            /* [in] */ IDispatch *pColor) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddVector( 
            /* [in] */ IDispatch *pOrigin,
            /* [in] */ IDispatch *pDirection,
            /* [in] */ IDispatch *pUp,
            /* [in] */ IDispatch *pColor) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetTextSizeX( 
            /* [in] */ BSTR szText,
            /* [retval][out] */ RtUlong *dwSizeX) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetTextSizeY( 
            /* [in] */ BSTR szText,
            /* [retval][out] */ RtUlong *dwSizeY) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddText( 
            /* [in] */ IDispatch *pOrigin,
            /* [in] */ IDispatch *pDirX,
            /* [in] */ IDispatch *pDirY,
            /* [in] */ BSTR szText,
            /* [in] */ IDispatch *pColor) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddMeasureText( 
            /* [in] */ IDispatch *pOrigin,
            /* [in] */ IDispatch *pDirX,
            /* [in] */ IDispatch *pDirY,
            /* [in] */ BSTR szText,
            /* [in] */ IDispatch *pColor) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetMeasureTextSizeX( 
            /* [in] */ BSTR szText,
            /* [retval][out] */ RtUlong *dwSizeX) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetMeasureTextSizeY( 
            /* [in] */ BSTR szText,
            /* [retval][out] */ RtUlong *dwSizeY) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRfMarkerVisualizationDispVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRfMarkerVisualizationDisp * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRfMarkerVisualizationDisp * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRfMarkerVisualizationDisp * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetVisualizationMesh )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ BSTR gGroupId,
            /* [in] */ IDispatch *pMesh);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ResetVisualizationMesh )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ BSTR gGroupId);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AttachVisualizationMesh )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ BSTR gGroupId);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddVertex )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ IDispatch *pVertex,
            /* [in] */ float fSize,
            /* [in] */ IDispatch *pColor);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddEdge )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ IDispatch *pVertex1,
            /* [in] */ IDispatch *pVertex2,
            /* [in] */ IDispatch *pColor);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddVector )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ IDispatch *pOrigin,
            /* [in] */ IDispatch *pDirection,
            /* [in] */ IDispatch *pUp,
            /* [in] */ IDispatch *pColor);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetTextSizeX )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ BSTR szText,
            /* [retval][out] */ RtUlong *dwSizeX);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetTextSizeY )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ BSTR szText,
            /* [retval][out] */ RtUlong *dwSizeY);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddText )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ IDispatch *pOrigin,
            /* [in] */ IDispatch *pDirX,
            /* [in] */ IDispatch *pDirY,
            /* [in] */ BSTR szText,
            /* [in] */ IDispatch *pColor);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddMeasureText )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ IDispatch *pOrigin,
            /* [in] */ IDispatch *pDirX,
            /* [in] */ IDispatch *pDirY,
            /* [in] */ BSTR szText,
            /* [in] */ IDispatch *pColor);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetMeasureTextSizeX )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ BSTR szText,
            /* [retval][out] */ RtUlong *dwSizeX);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetMeasureTextSizeY )( 
            IRfMarkerVisualizationDisp * This,
            /* [in] */ BSTR szText,
            /* [retval][out] */ RtUlong *dwSizeY);
        
        END_INTERFACE
    } IRfMarkerVisualizationDispVtbl;

    interface IRfMarkerVisualizationDisp
    {
        CONST_VTBL struct IRfMarkerVisualizationDispVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRfMarkerVisualizationDisp_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRfMarkerVisualizationDisp_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRfMarkerVisualizationDisp_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRfMarkerVisualizationDisp_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRfMarkerVisualizationDisp_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRfMarkerVisualizationDisp_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRfMarkerVisualizationDisp_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRfMarkerVisualizationDisp_SetVisualizationMesh(This,gGroupId,pMesh)	\
    (This)->lpVtbl -> SetVisualizationMesh(This,gGroupId,pMesh)

#define IRfMarkerVisualizationDisp_ResetVisualizationMesh(This,gGroupId)	\
    (This)->lpVtbl -> ResetVisualizationMesh(This,gGroupId)

#define IRfMarkerVisualizationDisp_AttachVisualizationMesh(This,gGroupId)	\
    (This)->lpVtbl -> AttachVisualizationMesh(This,gGroupId)

#define IRfMarkerVisualizationDisp_AddVertex(This,pVertex,fSize,pColor)	\
    (This)->lpVtbl -> AddVertex(This,pVertex,fSize,pColor)

#define IRfMarkerVisualizationDisp_AddEdge(This,pVertex1,pVertex2,pColor)	\
    (This)->lpVtbl -> AddEdge(This,pVertex1,pVertex2,pColor)

#define IRfMarkerVisualizationDisp_AddVector(This,pOrigin,pDirection,pUp,pColor)	\
    (This)->lpVtbl -> AddVector(This,pOrigin,pDirection,pUp,pColor)

#define IRfMarkerVisualizationDisp_GetTextSizeX(This,szText,dwSizeX)	\
    (This)->lpVtbl -> GetTextSizeX(This,szText,dwSizeX)

#define IRfMarkerVisualizationDisp_GetTextSizeY(This,szText,dwSizeY)	\
    (This)->lpVtbl -> GetTextSizeY(This,szText,dwSizeY)

#define IRfMarkerVisualizationDisp_AddText(This,pOrigin,pDirX,pDirY,szText,pColor)	\
    (This)->lpVtbl -> AddText(This,pOrigin,pDirX,pDirY,szText,pColor)

#define IRfMarkerVisualizationDisp_AddMeasureText(This,pOrigin,pDirX,pDirY,szText,pColor)	\
    (This)->lpVtbl -> AddMeasureText(This,pOrigin,pDirX,pDirY,szText,pColor)

#define IRfMarkerVisualizationDisp_GetMeasureTextSizeX(This,szText,dwSizeX)	\
    (This)->lpVtbl -> GetMeasureTextSizeX(This,szText,dwSizeX)

#define IRfMarkerVisualizationDisp_GetMeasureTextSizeY(This,szText,dwSizeY)	\
    (This)->lpVtbl -> GetMeasureTextSizeY(This,szText,dwSizeY)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualizationDisp_SetVisualizationMesh_Proxy( 
    IRfMarkerVisualizationDisp * This,
    /* [in] */ BSTR gGroupId,
    /* [in] */ IDispatch *pMesh);


void __RPC_STUB IRfMarkerVisualizationDisp_SetVisualizationMesh_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualizationDisp_ResetVisualizationMesh_Proxy( 
    IRfMarkerVisualizationDisp * This,
    /* [in] */ BSTR gGroupId);


void __RPC_STUB IRfMarkerVisualizationDisp_ResetVisualizationMesh_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualizationDisp_AttachVisualizationMesh_Proxy( 
    IRfMarkerVisualizationDisp * This,
    /* [in] */ BSTR gGroupId);


void __RPC_STUB IRfMarkerVisualizationDisp_AttachVisualizationMesh_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualizationDisp_AddVertex_Proxy( 
    IRfMarkerVisualizationDisp * This,
    /* [in] */ IDispatch *pVertex,
    /* [in] */ float fSize,
    /* [in] */ IDispatch *pColor);


void __RPC_STUB IRfMarkerVisualizationDisp_AddVertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualizationDisp_AddEdge_Proxy( 
    IRfMarkerVisualizationDisp * This,
    /* [in] */ IDispatch *pVertex1,
    /* [in] */ IDispatch *pVertex2,
    /* [in] */ IDispatch *pColor);


void __RPC_STUB IRfMarkerVisualizationDisp_AddEdge_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualizationDisp_AddVector_Proxy( 
    IRfMarkerVisualizationDisp * This,
    /* [in] */ IDispatch *pOrigin,
    /* [in] */ IDispatch *pDirection,
    /* [in] */ IDispatch *pUp,
    /* [in] */ IDispatch *pColor);


void __RPC_STUB IRfMarkerVisualizationDisp_AddVector_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualizationDisp_GetTextSizeX_Proxy( 
    IRfMarkerVisualizationDisp * This,
    /* [in] */ BSTR szText,
    /* [retval][out] */ RtUlong *dwSizeX);


void __RPC_STUB IRfMarkerVisualizationDisp_GetTextSizeX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualizationDisp_GetTextSizeY_Proxy( 
    IRfMarkerVisualizationDisp * This,
    /* [in] */ BSTR szText,
    /* [retval][out] */ RtUlong *dwSizeY);


void __RPC_STUB IRfMarkerVisualizationDisp_GetTextSizeY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualizationDisp_AddText_Proxy( 
    IRfMarkerVisualizationDisp * This,
    /* [in] */ IDispatch *pOrigin,
    /* [in] */ IDispatch *pDirX,
    /* [in] */ IDispatch *pDirY,
    /* [in] */ BSTR szText,
    /* [in] */ IDispatch *pColor);


void __RPC_STUB IRfMarkerVisualizationDisp_AddText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualizationDisp_AddMeasureText_Proxy( 
    IRfMarkerVisualizationDisp * This,
    /* [in] */ IDispatch *pOrigin,
    /* [in] */ IDispatch *pDirX,
    /* [in] */ IDispatch *pDirY,
    /* [in] */ BSTR szText,
    /* [in] */ IDispatch *pColor);


void __RPC_STUB IRfMarkerVisualizationDisp_AddMeasureText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualizationDisp_GetMeasureTextSizeX_Proxy( 
    IRfMarkerVisualizationDisp * This,
    /* [in] */ BSTR szText,
    /* [retval][out] */ RtUlong *dwSizeX);


void __RPC_STUB IRfMarkerVisualizationDisp_GetMeasureTextSizeX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfMarkerVisualizationDisp_GetMeasureTextSizeY_Proxy( 
    IRfMarkerVisualizationDisp * This,
    /* [in] */ BSTR szText,
    /* [retval][out] */ RtUlong *dwSizeY);


void __RPC_STUB IRfMarkerVisualizationDisp_GetMeasureTextSizeY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRfMarkerVisualizationDisp_INTERFACE_DEFINED__ */


#ifndef __IRfCursorController_INTERFACE_DEFINED__
#define __IRfCursorController_INTERFACE_DEFINED__

/* interface IRfCursorController */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRfCursorController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A1EC4373-A64A-4026-916F-F9A009CDBEA0")
    IRfCursorController : public IUnknown
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Initialize( 
            /* [in] */ IRdWidgetViewportParameters *spViewport) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetDistanceAdaptiveMode( 
            /* [in] */ RtBool adaptive) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetCoordMask( 
            /* [in] */ RtBool enable_x,
            /* [in] */ RtBool enable_y) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetDeltaMovement( 
            /* [in] */ struct RtWidgetToolEvent *pEvent,
            /* [in] */ IRdWidgetViewportParameters *spViewport,
            /* [in] */ int dx,
            /* [in] */ int dy,
            /* [in] */ RtFloat *delta_x,
            /* [in] */ RtFloat *delta_y) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Capture( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ReleaseCapture( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Update( 
            /* [in] */ int *deltaX,
            /* [in] */ int *deltaY) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRfCursorControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRfCursorController * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRfCursorController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRfCursorController * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Initialize )( 
            IRfCursorController * This,
            /* [in] */ IRdWidgetViewportParameters *spViewport);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetDistanceAdaptiveMode )( 
            IRfCursorController * This,
            /* [in] */ RtBool adaptive);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetCoordMask )( 
            IRfCursorController * This,
            /* [in] */ RtBool enable_x,
            /* [in] */ RtBool enable_y);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetDeltaMovement )( 
            IRfCursorController * This,
            /* [in] */ struct RtWidgetToolEvent *pEvent,
            /* [in] */ IRdWidgetViewportParameters *spViewport,
            /* [in] */ int dx,
            /* [in] */ int dy,
            /* [in] */ RtFloat *delta_x,
            /* [in] */ RtFloat *delta_y);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Capture )( 
            IRfCursorController * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ReleaseCapture )( 
            IRfCursorController * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Update )( 
            IRfCursorController * This,
            /* [in] */ int *deltaX,
            /* [in] */ int *deltaY);
        
        END_INTERFACE
    } IRfCursorControllerVtbl;

    interface IRfCursorController
    {
        CONST_VTBL struct IRfCursorControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRfCursorController_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRfCursorController_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRfCursorController_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRfCursorController_Initialize(This,spViewport)	\
    (This)->lpVtbl -> Initialize(This,spViewport)

#define IRfCursorController_SetDistanceAdaptiveMode(This,adaptive)	\
    (This)->lpVtbl -> SetDistanceAdaptiveMode(This,adaptive)

#define IRfCursorController_SetCoordMask(This,enable_x,enable_y)	\
    (This)->lpVtbl -> SetCoordMask(This,enable_x,enable_y)

#define IRfCursorController_GetDeltaMovement(This,pEvent,spViewport,dx,dy,delta_x,delta_y)	\
    (This)->lpVtbl -> GetDeltaMovement(This,pEvent,spViewport,dx,dy,delta_x,delta_y)

#define IRfCursorController_Capture(This)	\
    (This)->lpVtbl -> Capture(This)

#define IRfCursorController_ReleaseCapture(This)	\
    (This)->lpVtbl -> ReleaseCapture(This)

#define IRfCursorController_Update(This,deltaX,deltaY)	\
    (This)->lpVtbl -> Update(This,deltaX,deltaY)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfCursorController_Initialize_Proxy( 
    IRfCursorController * This,
    /* [in] */ IRdWidgetViewportParameters *spViewport);


void __RPC_STUB IRfCursorController_Initialize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfCursorController_SetDistanceAdaptiveMode_Proxy( 
    IRfCursorController * This,
    /* [in] */ RtBool adaptive);


void __RPC_STUB IRfCursorController_SetDistanceAdaptiveMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfCursorController_SetCoordMask_Proxy( 
    IRfCursorController * This,
    /* [in] */ RtBool enable_x,
    /* [in] */ RtBool enable_y);


void __RPC_STUB IRfCursorController_SetCoordMask_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfCursorController_GetDeltaMovement_Proxy( 
    IRfCursorController * This,
    /* [in] */ struct RtWidgetToolEvent *pEvent,
    /* [in] */ IRdWidgetViewportParameters *spViewport,
    /* [in] */ int dx,
    /* [in] */ int dy,
    /* [in] */ RtFloat *delta_x,
    /* [in] */ RtFloat *delta_y);


void __RPC_STUB IRfCursorController_GetDeltaMovement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfCursorController_Capture_Proxy( 
    IRfCursorController * This);


void __RPC_STUB IRfCursorController_Capture_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfCursorController_ReleaseCapture_Proxy( 
    IRfCursorController * This);


void __RPC_STUB IRfCursorController_ReleaseCapture_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfCursorController_Update_Proxy( 
    IRfCursorController * This,
    /* [in] */ int *deltaX,
    /* [in] */ int *deltaY);


void __RPC_STUB IRfCursorController_Update_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRfCursorController_INTERFACE_DEFINED__ */


#ifndef __IRsUiWidgetsAgent_INTERFACE_DEFINED__
#define __IRsUiWidgetsAgent_INTERFACE_DEFINED__

/* interface IRsUiWidgetsAgent */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsUiWidgetsAgent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5F9762CC-4AE4-4DCB-AFE1-28A68EC83D3E")
    IRsUiWidgetsAgent : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Destroy( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsUiWidgetsAgentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsUiWidgetsAgent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsUiWidgetsAgent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsUiWidgetsAgent * This);
        
        HRESULT ( STDMETHODCALLTYPE *Destroy )( 
            IRsUiWidgetsAgent * This);
        
        END_INTERFACE
    } IRsUiWidgetsAgentVtbl;

    interface IRsUiWidgetsAgent
    {
        CONST_VTBL struct IRsUiWidgetsAgentVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsUiWidgetsAgent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsUiWidgetsAgent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsUiWidgetsAgent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsUiWidgetsAgent_Destroy(This)	\
    (This)->lpVtbl -> Destroy(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRsUiWidgetsAgent_Destroy_Proxy( 
    IRsUiWidgetsAgent * This);


void __RPC_STUB IRsUiWidgetsAgent_Destroy_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsUiWidgetsAgent_INTERFACE_DEFINED__ */


/* interface __MIDL_itf__Widgets_2218 */
/* [local] */ 


enum RtPickOverrideResult
    {	POR_OK	= 0,
	POR_NO_SELECTION	= 1,
	POR_ALREADY_TRANSLATED	= 2,
	POR_MAKE_DWORD	= 2147483647
    } ;


extern RPC_IF_HANDLE __MIDL_itf__Widgets_2218_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf__Widgets_2218_v0_0_s_ifspec;

#ifndef __IRsPickOverride_INTERFACE_DEFINED__
#define __IRsPickOverride_INTERFACE_DEFINED__

/* interface IRsPickOverride */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsPickOverride;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("79E50F6F-7962-4d00-9591-60CDFFD50E5F")
    IRsPickOverride : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE PickSubObject( 
            /* [in] */ IRsNode *pViewNode,
            /* [in] */ RtPoint2f *ptScrPoint,
            /* [out] */ IRsNode **ppNode,
            /* [out] */ enum RtPickOverrideResult *pPickResult) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsPickOverrideVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsPickOverride * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsPickOverride * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsPickOverride * This);
        
        HRESULT ( STDMETHODCALLTYPE *PickSubObject )( 
            IRsPickOverride * This,
            /* [in] */ IRsNode *pViewNode,
            /* [in] */ RtPoint2f *ptScrPoint,
            /* [out] */ IRsNode **ppNode,
            /* [out] */ enum RtPickOverrideResult *pPickResult);
        
        END_INTERFACE
    } IRsPickOverrideVtbl;

    interface IRsPickOverride
    {
        CONST_VTBL struct IRsPickOverrideVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsPickOverride_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsPickOverride_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsPickOverride_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsPickOverride_PickSubObject(This,pViewNode,ptScrPoint,ppNode,pPickResult)	\
    (This)->lpVtbl -> PickSubObject(This,pViewNode,ptScrPoint,ppNode,pPickResult)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRsPickOverride_PickSubObject_Proxy( 
    IRsPickOverride * This,
    /* [in] */ IRsNode *pViewNode,
    /* [in] */ RtPoint2f *ptScrPoint,
    /* [out] */ IRsNode **ppNode,
    /* [out] */ enum RtPickOverrideResult *pPickResult);


void __RPC_STUB IRsPickOverride_PickSubObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsPickOverride_INTERFACE_DEFINED__ */


#ifndef __IRsPickOverrideManager_INTERFACE_DEFINED__
#define __IRsPickOverrideManager_INTERFACE_DEFINED__

/* interface IRsPickOverrideManager */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsPickOverrideManager;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2EBE17D7-D0DB-4b6e-906C-D3B89E476D79")
    IRsPickOverrideManager : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE PickSubObject( 
            /* [in] */ IRsNode *pViewNode,
            /* [in] */ RtPoint2f *ptScrPoint,
            /* [out] */ IRsNode **ppNode,
            /* [in] */ enum RtPickOverrideResult *pPor) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RegisterPickOverride( 
            /* [in] */ IRsPickOverride *pOverride) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE UnregisterPickOverride( 
            /* [in] */ IRsPickOverride *pOverride) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsPickOverrideManagerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsPickOverrideManager * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsPickOverrideManager * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsPickOverrideManager * This);
        
        HRESULT ( STDMETHODCALLTYPE *PickSubObject )( 
            IRsPickOverrideManager * This,
            /* [in] */ IRsNode *pViewNode,
            /* [in] */ RtPoint2f *ptScrPoint,
            /* [out] */ IRsNode **ppNode,
            /* [in] */ enum RtPickOverrideResult *pPor);
        
        HRESULT ( STDMETHODCALLTYPE *RegisterPickOverride )( 
            IRsPickOverrideManager * This,
            /* [in] */ IRsPickOverride *pOverride);
        
        HRESULT ( STDMETHODCALLTYPE *UnregisterPickOverride )( 
            IRsPickOverrideManager * This,
            /* [in] */ IRsPickOverride *pOverride);
        
        END_INTERFACE
    } IRsPickOverrideManagerVtbl;

    interface IRsPickOverrideManager
    {
        CONST_VTBL struct IRsPickOverrideManagerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsPickOverrideManager_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsPickOverrideManager_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsPickOverrideManager_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsPickOverrideManager_PickSubObject(This,pViewNode,ptScrPoint,ppNode,pPor)	\
    (This)->lpVtbl -> PickSubObject(This,pViewNode,ptScrPoint,ppNode,pPor)

#define IRsPickOverrideManager_RegisterPickOverride(This,pOverride)	\
    (This)->lpVtbl -> RegisterPickOverride(This,pOverride)

#define IRsPickOverrideManager_UnregisterPickOverride(This,pOverride)	\
    (This)->lpVtbl -> UnregisterPickOverride(This,pOverride)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRsPickOverrideManager_PickSubObject_Proxy( 
    IRsPickOverrideManager * This,
    /* [in] */ IRsNode *pViewNode,
    /* [in] */ RtPoint2f *ptScrPoint,
    /* [out] */ IRsNode **ppNode,
    /* [in] */ enum RtPickOverrideResult *pPor);


void __RPC_STUB IRsPickOverrideManager_PickSubObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsPickOverrideManager_RegisterPickOverride_Proxy( 
    IRsPickOverrideManager * This,
    /* [in] */ IRsPickOverride *pOverride);


void __RPC_STUB IRsPickOverrideManager_RegisterPickOverride_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsPickOverrideManager_UnregisterPickOverride_Proxy( 
    IRsPickOverrideManager * This,
    /* [in] */ IRsPickOverride *pOverride);


void __RPC_STUB IRsPickOverrideManager_UnregisterPickOverride_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsPickOverrideManager_INTERFACE_DEFINED__ */


#ifndef __IRpWidgets_INTERFACE_DEFINED__
#define __IRpWidgets_INTERFACE_DEFINED__

/* interface IRpWidgets */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRpWidgets;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1827C19B-D0BE-4faa-97D5-27104C7E5710")
    IRpWidgets : public IUnknown
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Create3DToolbarFnSet( 
            /* [retval][out] */ IRf3DToolbarSet **ppFn) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetWidgetSubsystemController( 
            /* [retval][out] */ IRnWidgetSubsystem **ppWidgetSubsys) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE RegisterSysMessageReceiver( 
            /* [in] */ MSGID msg,
            /* [in] */ IRsSysMessageReceiver *pRecv) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE UnregisterSysMessageReceiver( 
            /* [in] */ MSGID msg,
            /* [in] */ IRsSysMessageReceiver *pRecv) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CreateMarkerVisualizationFnSet( 
            /* [retval][out] */ IRfMarkerVisualization **ppFn) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CreateCursorController( 
            /* [retval][out] */ IRfCursorController **ppFn) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetWidgetsUiAgent( 
            /* [in] */ IRsUiWidgetsAgent **ppUiAgent) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetWidgetToolController( 
            /* [in] */ IRsWidgetToolController **ppTool) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetWidgetVisible( 
            /* [in] */ IRsNode *pPrototype,
            /* [in] */ RtBool *pbVisible) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ResetWidgetVisibilityTable( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetPickOverrideManager( 
            /* [in] */ IRsPickOverrideManager **ppManager) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRpWidgetsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRpWidgets * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRpWidgets * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRpWidgets * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Create3DToolbarFnSet )( 
            IRpWidgets * This,
            /* [retval][out] */ IRf3DToolbarSet **ppFn);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetWidgetSubsystemController )( 
            IRpWidgets * This,
            /* [retval][out] */ IRnWidgetSubsystem **ppWidgetSubsys);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *RegisterSysMessageReceiver )( 
            IRpWidgets * This,
            /* [in] */ MSGID msg,
            /* [in] */ IRsSysMessageReceiver *pRecv);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *UnregisterSysMessageReceiver )( 
            IRpWidgets * This,
            /* [in] */ MSGID msg,
            /* [in] */ IRsSysMessageReceiver *pRecv);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateMarkerVisualizationFnSet )( 
            IRpWidgets * This,
            /* [retval][out] */ IRfMarkerVisualization **ppFn);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateCursorController )( 
            IRpWidgets * This,
            /* [retval][out] */ IRfCursorController **ppFn);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetWidgetsUiAgent )( 
            IRpWidgets * This,
            /* [in] */ IRsUiWidgetsAgent **ppUiAgent);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetWidgetToolController )( 
            IRpWidgets * This,
            /* [in] */ IRsWidgetToolController **ppTool);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetWidgetVisible )( 
            IRpWidgets * This,
            /* [in] */ IRsNode *pPrototype,
            /* [in] */ RtBool *pbVisible);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ResetWidgetVisibilityTable )( 
            IRpWidgets * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetPickOverrideManager )( 
            IRpWidgets * This,
            /* [in] */ IRsPickOverrideManager **ppManager);
        
        END_INTERFACE
    } IRpWidgetsVtbl;

    interface IRpWidgets
    {
        CONST_VTBL struct IRpWidgetsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRpWidgets_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRpWidgets_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRpWidgets_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRpWidgets_Create3DToolbarFnSet(This,ppFn)	\
    (This)->lpVtbl -> Create3DToolbarFnSet(This,ppFn)

#define IRpWidgets_GetWidgetSubsystemController(This,ppWidgetSubsys)	\
    (This)->lpVtbl -> GetWidgetSubsystemController(This,ppWidgetSubsys)

#define IRpWidgets_RegisterSysMessageReceiver(This,msg,pRecv)	\
    (This)->lpVtbl -> RegisterSysMessageReceiver(This,msg,pRecv)

#define IRpWidgets_UnregisterSysMessageReceiver(This,msg,pRecv)	\
    (This)->lpVtbl -> UnregisterSysMessageReceiver(This,msg,pRecv)

#define IRpWidgets_CreateMarkerVisualizationFnSet(This,ppFn)	\
    (This)->lpVtbl -> CreateMarkerVisualizationFnSet(This,ppFn)

#define IRpWidgets_CreateCursorController(This,ppFn)	\
    (This)->lpVtbl -> CreateCursorController(This,ppFn)

#define IRpWidgets_GetWidgetsUiAgent(This,ppUiAgent)	\
    (This)->lpVtbl -> GetWidgetsUiAgent(This,ppUiAgent)

#define IRpWidgets_GetWidgetToolController(This,ppTool)	\
    (This)->lpVtbl -> GetWidgetToolController(This,ppTool)

#define IRpWidgets_GetWidgetVisible(This,pPrototype,pbVisible)	\
    (This)->lpVtbl -> GetWidgetVisible(This,pPrototype,pbVisible)

#define IRpWidgets_ResetWidgetVisibilityTable(This)	\
    (This)->lpVtbl -> ResetWidgetVisibilityTable(This)

#define IRpWidgets_GetPickOverrideManager(This,ppManager)	\
    (This)->lpVtbl -> GetPickOverrideManager(This,ppManager)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpWidgets_Create3DToolbarFnSet_Proxy( 
    IRpWidgets * This,
    /* [retval][out] */ IRf3DToolbarSet **ppFn);


void __RPC_STUB IRpWidgets_Create3DToolbarFnSet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpWidgets_GetWidgetSubsystemController_Proxy( 
    IRpWidgets * This,
    /* [retval][out] */ IRnWidgetSubsystem **ppWidgetSubsys);


void __RPC_STUB IRpWidgets_GetWidgetSubsystemController_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpWidgets_RegisterSysMessageReceiver_Proxy( 
    IRpWidgets * This,
    /* [in] */ MSGID msg,
    /* [in] */ IRsSysMessageReceiver *pRecv);


void __RPC_STUB IRpWidgets_RegisterSysMessageReceiver_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpWidgets_UnregisterSysMessageReceiver_Proxy( 
    IRpWidgets * This,
    /* [in] */ MSGID msg,
    /* [in] */ IRsSysMessageReceiver *pRecv);


void __RPC_STUB IRpWidgets_UnregisterSysMessageReceiver_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpWidgets_CreateMarkerVisualizationFnSet_Proxy( 
    IRpWidgets * This,
    /* [retval][out] */ IRfMarkerVisualization **ppFn);


void __RPC_STUB IRpWidgets_CreateMarkerVisualizationFnSet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpWidgets_CreateCursorController_Proxy( 
    IRpWidgets * This,
    /* [retval][out] */ IRfCursorController **ppFn);


void __RPC_STUB IRpWidgets_CreateCursorController_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpWidgets_GetWidgetsUiAgent_Proxy( 
    IRpWidgets * This,
    /* [in] */ IRsUiWidgetsAgent **ppUiAgent);


void __RPC_STUB IRpWidgets_GetWidgetsUiAgent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpWidgets_GetWidgetToolController_Proxy( 
    IRpWidgets * This,
    /* [in] */ IRsWidgetToolController **ppTool);


void __RPC_STUB IRpWidgets_GetWidgetToolController_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpWidgets_GetWidgetVisible_Proxy( 
    IRpWidgets * This,
    /* [in] */ IRsNode *pPrototype,
    /* [in] */ RtBool *pbVisible);


void __RPC_STUB IRpWidgets_GetWidgetVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpWidgets_ResetWidgetVisibilityTable_Proxy( 
    IRpWidgets * This);


void __RPC_STUB IRpWidgets_ResetWidgetVisibilityTable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpWidgets_GetPickOverrideManager_Proxy( 
    IRpWidgets * This,
    /* [in] */ IRsPickOverrideManager **ppManager);


void __RPC_STUB IRpWidgets_GetPickOverrideManager_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRpWidgets_INTERFACE_DEFINED__ */


#ifndef __IRcUpdateButtonTransform_INTERFACE_DEFINED__
#define __IRcUpdateButtonTransform_INTERFACE_DEFINED__

/* interface IRcUpdateButtonTransform */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcUpdateButtonTransform;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A0B137C8-7420-4B60-83B6-1B8203969D16")
    IRcUpdateButtonTransform : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE SetButtonParams( 
            /* [in] */ IRsNode *pButton,
            /* [in] */ RtFloat x,
            /* [in] */ RtFloat y,
            /* [in] */ RtFloat z) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRcUpdateButtonTransformVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcUpdateButtonTransform * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcUpdateButtonTransform * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcUpdateButtonTransform * This);
        
        HRESULT ( STDMETHODCALLTYPE *SetButtonParams )( 
            IRcUpdateButtonTransform * This,
            /* [in] */ IRsNode *pButton,
            /* [in] */ RtFloat x,
            /* [in] */ RtFloat y,
            /* [in] */ RtFloat z);
        
        END_INTERFACE
    } IRcUpdateButtonTransformVtbl;

    interface IRcUpdateButtonTransform
    {
        CONST_VTBL struct IRcUpdateButtonTransformVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcUpdateButtonTransform_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcUpdateButtonTransform_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcUpdateButtonTransform_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRcUpdateButtonTransform_SetButtonParams(This,pButton,x,y,z)	\
    (This)->lpVtbl -> SetButtonParams(This,pButton,x,y,z)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRcUpdateButtonTransform_SetButtonParams_Proxy( 
    IRcUpdateButtonTransform * This,
    /* [in] */ IRsNode *pButton,
    /* [in] */ RtFloat x,
    /* [in] */ RtFloat y,
    /* [in] */ RtFloat z);


void __RPC_STUB IRcUpdateButtonTransform_SetButtonParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRcUpdateButtonTransform_INTERFACE_DEFINED__ */


#ifndef __IRiWidgets_INTERFACE_DEFINED__
#define __IRiWidgets_INTERFACE_DEFINED__

/* interface IRiWidgets */
/* [unique][helpstring][dual][uuid][object] */ 


EXTERN_C const IID IID_IRiWidgets;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("EA2DE146-5969-4565-96C8-323CD75AC3C3")
    IRiWidgets : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ActivateWidget( 
            /* [in] */ BSTR bszWidgetName,
            /* [in] */ BSTR bszAspectName,
            /* [in] */ BSTR bParametersName,
            /* [in] */ BSTR bszControlledNodeName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddWidget( 
            /* [in] */ BSTR bszWidgetName,
            /* [in] */ BSTR bszAspectName,
            /* [in] */ BSTR bParametersName,
            /* [in] */ BSTR bszControlledNodeName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ActivateViewWidget( 
            /* [in] */ BSTR bszWidgetName,
            /* [in] */ BSTR bszAspectName,
            /* [in] */ BSTR bszViewNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ActivateToolWidget( 
            /* [in] */ BSTR bszWidgetName,
            /* [in] */ BSTR bszAspectName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ReplaceWidget( 
            /* [in] */ BSTR bszGroupId,
            /* [in] */ BSTR bszWidgetName,
            /* [in] */ BSTR bszAspectName,
            /* [in] */ BSTR bszParametersName,
            /* [in] */ BSTR bszControlledNodeName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ActivateDefaultWidget( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetWidgetGroupDependency( 
            /* [in] */ BSTR bszSource,
            /* [in] */ BSTR bszDependent) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveWidgetGroupDependency( 
            /* [in] */ BSTR bszSource,
            /* [in] */ BSTR bszDependent) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ActivateViewToolWidget( 
            /* [in] */ BSTR bszWidgetName,
            /* [in] */ BSTR bszAspectName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UpdateCSSToolbars( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Move( 
            /* [in] */ BSTR bszSelection,
            /* [in] */ VARIANT fWx,
            /* [in] */ VARIANT fWy,
            /* [in] */ VARIANT fWz) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Rotate( 
            /* [in] */ BSTR bszSelection,
            /* [in] */ VARIANT fY,
            /* [in] */ VARIANT fP,
            /* [in] */ VARIANT fR,
            /* [in] */ VARIANT fWx,
            /* [in] */ VARIANT fWy,
            /* [in] */ VARIANT fWz) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Scale( 
            /* [in] */ BSTR bszSelection,
            /* [in] */ VARIANT fscx,
            /* [in] */ VARIANT fscy,
            /* [in] */ VARIANT fscz,
            /* [in] */ VARIANT fshxy,
            /* [in] */ VARIANT fshxz,
            /* [in] */ VARIANT fshyz,
            /* [in] */ VARIANT fWx,
            /* [in] */ VARIANT fWy,
            /* [in] */ VARIANT fWz) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RotateWorld( 
            /* [in] */ BSTR bszSelection,
            /* [in] */ VARIANT fY,
            /* [in] */ VARIANT fP,
            /* [in] */ VARIANT fR,
            /* [in] */ VARIANT fWx,
            /* [in] */ VARIANT fWy,
            /* [in] */ VARIANT fWz) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DeactivateDefaultWidgets( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ChangeKeyName( 
            /* [in] */ BSTR szNode,
            /* [in] */ BSTR szConnector) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetConListValue( 
            /* [in] */ BSTR szConnector,
            /* [in] */ BSTR szNewValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Transform( 
            /* [in] */ BSTR bszSelection,
            /* [in] */ VARIANT frx,
            /* [in] */ VARIANT fry,
            /* [in] */ VARIANT frz,
            /* [in] */ VARIANT fscx,
            /* [in] */ VARIANT fscy,
            /* [in] */ VARIANT fscz,
            /* [in] */ VARIANT fshxy,
            /* [in] */ VARIANT fshxz,
            /* [in] */ VARIANT fshyz,
            /* [in] */ VARIANT fWx,
            /* [in] */ VARIANT fWy,
            /* [in] */ VARIANT fWz) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateMarkersSet( 
            /* [retval][out] */ IDispatch **ppMarkersSet) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ActivateDefaultTool( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ToggleWidget( 
            /* [in] */ BSTR bszGroupId,
            /* [in] */ BSTR bszWidgetName,
            /* [in] */ BSTR bszAspectName,
            /* [in] */ BSTR bszParametersName,
            /* [in] */ BSTR bszControlledNodeName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRiWidgetsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRiWidgets * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRiWidgets * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRiWidgets * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRiWidgets * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRiWidgets * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRiWidgets * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRiWidgets * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ActivateWidget )( 
            IRiWidgets * This,
            /* [in] */ BSTR bszWidgetName,
            /* [in] */ BSTR bszAspectName,
            /* [in] */ BSTR bParametersName,
            /* [in] */ BSTR bszControlledNodeName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddWidget )( 
            IRiWidgets * This,
            /* [in] */ BSTR bszWidgetName,
            /* [in] */ BSTR bszAspectName,
            /* [in] */ BSTR bParametersName,
            /* [in] */ BSTR bszControlledNodeName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ActivateViewWidget )( 
            IRiWidgets * This,
            /* [in] */ BSTR bszWidgetName,
            /* [in] */ BSTR bszAspectName,
            /* [in] */ BSTR bszViewNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ActivateToolWidget )( 
            IRiWidgets * This,
            /* [in] */ BSTR bszWidgetName,
            /* [in] */ BSTR bszAspectName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ReplaceWidget )( 
            IRiWidgets * This,
            /* [in] */ BSTR bszGroupId,
            /* [in] */ BSTR bszWidgetName,
            /* [in] */ BSTR bszAspectName,
            /* [in] */ BSTR bszParametersName,
            /* [in] */ BSTR bszControlledNodeName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ActivateDefaultWidget )( 
            IRiWidgets * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetWidgetGroupDependency )( 
            IRiWidgets * This,
            /* [in] */ BSTR bszSource,
            /* [in] */ BSTR bszDependent);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveWidgetGroupDependency )( 
            IRiWidgets * This,
            /* [in] */ BSTR bszSource,
            /* [in] */ BSTR bszDependent);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ActivateViewToolWidget )( 
            IRiWidgets * This,
            /* [in] */ BSTR bszWidgetName,
            /* [in] */ BSTR bszAspectName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UpdateCSSToolbars )( 
            IRiWidgets * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Move )( 
            IRiWidgets * This,
            /* [in] */ BSTR bszSelection,
            /* [in] */ VARIANT fWx,
            /* [in] */ VARIANT fWy,
            /* [in] */ VARIANT fWz);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Rotate )( 
            IRiWidgets * This,
            /* [in] */ BSTR bszSelection,
            /* [in] */ VARIANT fY,
            /* [in] */ VARIANT fP,
            /* [in] */ VARIANT fR,
            /* [in] */ VARIANT fWx,
            /* [in] */ VARIANT fWy,
            /* [in] */ VARIANT fWz);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Scale )( 
            IRiWidgets * This,
            /* [in] */ BSTR bszSelection,
            /* [in] */ VARIANT fscx,
            /* [in] */ VARIANT fscy,
            /* [in] */ VARIANT fscz,
            /* [in] */ VARIANT fshxy,
            /* [in] */ VARIANT fshxz,
            /* [in] */ VARIANT fshyz,
            /* [in] */ VARIANT fWx,
            /* [in] */ VARIANT fWy,
            /* [in] */ VARIANT fWz);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RotateWorld )( 
            IRiWidgets * This,
            /* [in] */ BSTR bszSelection,
            /* [in] */ VARIANT fY,
            /* [in] */ VARIANT fP,
            /* [in] */ VARIANT fR,
            /* [in] */ VARIANT fWx,
            /* [in] */ VARIANT fWy,
            /* [in] */ VARIANT fWz);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DeactivateDefaultWidgets )( 
            IRiWidgets * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ChangeKeyName )( 
            IRiWidgets * This,
            /* [in] */ BSTR szNode,
            /* [in] */ BSTR szConnector);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetConListValue )( 
            IRiWidgets * This,
            /* [in] */ BSTR szConnector,
            /* [in] */ BSTR szNewValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Transform )( 
            IRiWidgets * This,
            /* [in] */ BSTR bszSelection,
            /* [in] */ VARIANT frx,
            /* [in] */ VARIANT fry,
            /* [in] */ VARIANT frz,
            /* [in] */ VARIANT fscx,
            /* [in] */ VARIANT fscy,
            /* [in] */ VARIANT fscz,
            /* [in] */ VARIANT fshxy,
            /* [in] */ VARIANT fshxz,
            /* [in] */ VARIANT fshyz,
            /* [in] */ VARIANT fWx,
            /* [in] */ VARIANT fWy,
            /* [in] */ VARIANT fWz);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CreateMarkersSet )( 
            IRiWidgets * This,
            /* [retval][out] */ IDispatch **ppMarkersSet);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ActivateDefaultTool )( 
            IRiWidgets * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ToggleWidget )( 
            IRiWidgets * This,
            /* [in] */ BSTR bszGroupId,
            /* [in] */ BSTR bszWidgetName,
            /* [in] */ BSTR bszAspectName,
            /* [in] */ BSTR bszParametersName,
            /* [in] */ BSTR bszControlledNodeName);
        
        END_INTERFACE
    } IRiWidgetsVtbl;

    interface IRiWidgets
    {
        CONST_VTBL struct IRiWidgetsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRiWidgets_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRiWidgets_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRiWidgets_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRiWidgets_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRiWidgets_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRiWidgets_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRiWidgets_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRiWidgets_ActivateWidget(This,bszWidgetName,bszAspectName,bParametersName,bszControlledNodeName)	\
    (This)->lpVtbl -> ActivateWidget(This,bszWidgetName,bszAspectName,bParametersName,bszControlledNodeName)

#define IRiWidgets_AddWidget(This,bszWidgetName,bszAspectName,bParametersName,bszControlledNodeName)	\
    (This)->lpVtbl -> AddWidget(This,bszWidgetName,bszAspectName,bParametersName,bszControlledNodeName)

#define IRiWidgets_ActivateViewWidget(This,bszWidgetName,bszAspectName,bszViewNode)	\
    (This)->lpVtbl -> ActivateViewWidget(This,bszWidgetName,bszAspectName,bszViewNode)

#define IRiWidgets_ActivateToolWidget(This,bszWidgetName,bszAspectName)	\
    (This)->lpVtbl -> ActivateToolWidget(This,bszWidgetName,bszAspectName)

#define IRiWidgets_ReplaceWidget(This,bszGroupId,bszWidgetName,bszAspectName,bszParametersName,bszControlledNodeName)	\
    (This)->lpVtbl -> ReplaceWidget(This,bszGroupId,bszWidgetName,bszAspectName,bszParametersName,bszControlledNodeName)

#define IRiWidgets_ActivateDefaultWidget(This)	\
    (This)->lpVtbl -> ActivateDefaultWidget(This)

#define IRiWidgets_SetWidgetGroupDependency(This,bszSource,bszDependent)	\
    (This)->lpVtbl -> SetWidgetGroupDependency(This,bszSource,bszDependent)

#define IRiWidgets_RemoveWidgetGroupDependency(This,bszSource,bszDependent)	\
    (This)->lpVtbl -> RemoveWidgetGroupDependency(This,bszSource,bszDependent)

#define IRiWidgets_ActivateViewToolWidget(This,bszWidgetName,bszAspectName)	\
    (This)->lpVtbl -> ActivateViewToolWidget(This,bszWidgetName,bszAspectName)

#define IRiWidgets_UpdateCSSToolbars(This)	\
    (This)->lpVtbl -> UpdateCSSToolbars(This)

#define IRiWidgets_Move(This,bszSelection,fWx,fWy,fWz)	\
    (This)->lpVtbl -> Move(This,bszSelection,fWx,fWy,fWz)

#define IRiWidgets_Rotate(This,bszSelection,fY,fP,fR,fWx,fWy,fWz)	\
    (This)->lpVtbl -> Rotate(This,bszSelection,fY,fP,fR,fWx,fWy,fWz)

#define IRiWidgets_Scale(This,bszSelection,fscx,fscy,fscz,fshxy,fshxz,fshyz,fWx,fWy,fWz)	\
    (This)->lpVtbl -> Scale(This,bszSelection,fscx,fscy,fscz,fshxy,fshxz,fshyz,fWx,fWy,fWz)

#define IRiWidgets_RotateWorld(This,bszSelection,fY,fP,fR,fWx,fWy,fWz)	\
    (This)->lpVtbl -> RotateWorld(This,bszSelection,fY,fP,fR,fWx,fWy,fWz)

#define IRiWidgets_DeactivateDefaultWidgets(This)	\
    (This)->lpVtbl -> DeactivateDefaultWidgets(This)

#define IRiWidgets_ChangeKeyName(This,szNode,szConnector)	\
    (This)->lpVtbl -> ChangeKeyName(This,szNode,szConnector)

#define IRiWidgets_SetConListValue(This,szConnector,szNewValue)	\
    (This)->lpVtbl -> SetConListValue(This,szConnector,szNewValue)

#define IRiWidgets_Transform(This,bszSelection,frx,fry,frz,fscx,fscy,fscz,fshxy,fshxz,fshyz,fWx,fWy,fWz)	\
    (This)->lpVtbl -> Transform(This,bszSelection,frx,fry,frz,fscx,fscy,fscz,fshxy,fshxz,fshyz,fWx,fWy,fWz)

#define IRiWidgets_CreateMarkersSet(This,ppMarkersSet)	\
    (This)->lpVtbl -> CreateMarkersSet(This,ppMarkersSet)

#define IRiWidgets_ActivateDefaultTool(This)	\
    (This)->lpVtbl -> ActivateDefaultTool(This)

#define IRiWidgets_ToggleWidget(This,bszGroupId,bszWidgetName,bszAspectName,bszParametersName,bszControlledNodeName)	\
    (This)->lpVtbl -> ToggleWidget(This,bszGroupId,bszWidgetName,bszAspectName,bszParametersName,bszControlledNodeName)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_ActivateWidget_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR bszWidgetName,
    /* [in] */ BSTR bszAspectName,
    /* [in] */ BSTR bParametersName,
    /* [in] */ BSTR bszControlledNodeName);


void __RPC_STUB IRiWidgets_ActivateWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_AddWidget_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR bszWidgetName,
    /* [in] */ BSTR bszAspectName,
    /* [in] */ BSTR bParametersName,
    /* [in] */ BSTR bszControlledNodeName);


void __RPC_STUB IRiWidgets_AddWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_ActivateViewWidget_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR bszWidgetName,
    /* [in] */ BSTR bszAspectName,
    /* [in] */ BSTR bszViewNode);


void __RPC_STUB IRiWidgets_ActivateViewWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_ActivateToolWidget_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR bszWidgetName,
    /* [in] */ BSTR bszAspectName);


void __RPC_STUB IRiWidgets_ActivateToolWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_ReplaceWidget_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR bszGroupId,
    /* [in] */ BSTR bszWidgetName,
    /* [in] */ BSTR bszAspectName,
    /* [in] */ BSTR bszParametersName,
    /* [in] */ BSTR bszControlledNodeName);


void __RPC_STUB IRiWidgets_ReplaceWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_ActivateDefaultWidget_Proxy( 
    IRiWidgets * This);


void __RPC_STUB IRiWidgets_ActivateDefaultWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_SetWidgetGroupDependency_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR bszSource,
    /* [in] */ BSTR bszDependent);


void __RPC_STUB IRiWidgets_SetWidgetGroupDependency_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_RemoveWidgetGroupDependency_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR bszSource,
    /* [in] */ BSTR bszDependent);


void __RPC_STUB IRiWidgets_RemoveWidgetGroupDependency_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_ActivateViewToolWidget_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR bszWidgetName,
    /* [in] */ BSTR bszAspectName);


void __RPC_STUB IRiWidgets_ActivateViewToolWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_UpdateCSSToolbars_Proxy( 
    IRiWidgets * This);


void __RPC_STUB IRiWidgets_UpdateCSSToolbars_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_Move_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR bszSelection,
    /* [in] */ VARIANT fWx,
    /* [in] */ VARIANT fWy,
    /* [in] */ VARIANT fWz);


void __RPC_STUB IRiWidgets_Move_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_Rotate_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR bszSelection,
    /* [in] */ VARIANT fY,
    /* [in] */ VARIANT fP,
    /* [in] */ VARIANT fR,
    /* [in] */ VARIANT fWx,
    /* [in] */ VARIANT fWy,
    /* [in] */ VARIANT fWz);


void __RPC_STUB IRiWidgets_Rotate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_Scale_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR bszSelection,
    /* [in] */ VARIANT fscx,
    /* [in] */ VARIANT fscy,
    /* [in] */ VARIANT fscz,
    /* [in] */ VARIANT fshxy,
    /* [in] */ VARIANT fshxz,
    /* [in] */ VARIANT fshyz,
    /* [in] */ VARIANT fWx,
    /* [in] */ VARIANT fWy,
    /* [in] */ VARIANT fWz);


void __RPC_STUB IRiWidgets_Scale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_RotateWorld_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR bszSelection,
    /* [in] */ VARIANT fY,
    /* [in] */ VARIANT fP,
    /* [in] */ VARIANT fR,
    /* [in] */ VARIANT fWx,
    /* [in] */ VARIANT fWy,
    /* [in] */ VARIANT fWz);


void __RPC_STUB IRiWidgets_RotateWorld_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_DeactivateDefaultWidgets_Proxy( 
    IRiWidgets * This);


void __RPC_STUB IRiWidgets_DeactivateDefaultWidgets_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_ChangeKeyName_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR szNode,
    /* [in] */ BSTR szConnector);


void __RPC_STUB IRiWidgets_ChangeKeyName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_SetConListValue_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR szConnector,
    /* [in] */ BSTR szNewValue);


void __RPC_STUB IRiWidgets_SetConListValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_Transform_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR bszSelection,
    /* [in] */ VARIANT frx,
    /* [in] */ VARIANT fry,
    /* [in] */ VARIANT frz,
    /* [in] */ VARIANT fscx,
    /* [in] */ VARIANT fscy,
    /* [in] */ VARIANT fscz,
    /* [in] */ VARIANT fshxy,
    /* [in] */ VARIANT fshxz,
    /* [in] */ VARIANT fshyz,
    /* [in] */ VARIANT fWx,
    /* [in] */ VARIANT fWy,
    /* [in] */ VARIANT fWz);


void __RPC_STUB IRiWidgets_Transform_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_CreateMarkersSet_Proxy( 
    IRiWidgets * This,
    /* [retval][out] */ IDispatch **ppMarkersSet);


void __RPC_STUB IRiWidgets_CreateMarkersSet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_ActivateDefaultTool_Proxy( 
    IRiWidgets * This);


void __RPC_STUB IRiWidgets_ActivateDefaultTool_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiWidgets_ToggleWidget_Proxy( 
    IRiWidgets * This,
    /* [in] */ BSTR bszGroupId,
    /* [in] */ BSTR bszWidgetName,
    /* [in] */ BSTR bszAspectName,
    /* [in] */ BSTR bszParametersName,
    /* [in] */ BSTR bszControlledNodeName);


void __RPC_STUB IRiWidgets_ToggleWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRiWidgets_INTERFACE_DEFINED__ */


#ifndef __IRcActivateWidget_INTERFACE_DEFINED__
#define __IRcActivateWidget_INTERFACE_DEFINED__

/* interface IRcActivateWidget */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcActivateWidget;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("96E374F9-EEAB-4D37-81E7-88AC29E5D5D2")
    IRcActivateWidget : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcActivateWidgetVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcActivateWidget * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcActivateWidget * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcActivateWidget * This);
        
        END_INTERFACE
    } IRcActivateWidgetVtbl;

    interface IRcActivateWidget
    {
        CONST_VTBL struct IRcActivateWidgetVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcActivateWidget_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcActivateWidget_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcActivateWidget_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcActivateWidget_INTERFACE_DEFINED__ */


#ifndef __IRcReplaceManagedWidget_INTERFACE_DEFINED__
#define __IRcReplaceManagedWidget_INTERFACE_DEFINED__

/* interface IRcReplaceManagedWidget */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcReplaceManagedWidget;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("AAA06C8E-1A04-489f-AD86-169C46A58E04")
    IRcReplaceManagedWidget : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE GetWidgetName( 
            /* [out] */ BSTR *pWidgetName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRcReplaceManagedWidgetVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcReplaceManagedWidget * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcReplaceManagedWidget * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcReplaceManagedWidget * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetWidgetName )( 
            IRcReplaceManagedWidget * This,
            /* [out] */ BSTR *pWidgetName);
        
        END_INTERFACE
    } IRcReplaceManagedWidgetVtbl;

    interface IRcReplaceManagedWidget
    {
        CONST_VTBL struct IRcReplaceManagedWidgetVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcReplaceManagedWidget_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcReplaceManagedWidget_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcReplaceManagedWidget_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRcReplaceManagedWidget_GetWidgetName(This,pWidgetName)	\
    (This)->lpVtbl -> GetWidgetName(This,pWidgetName)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRcReplaceManagedWidget_GetWidgetName_Proxy( 
    IRcReplaceManagedWidget * This,
    /* [out] */ BSTR *pWidgetName);


void __RPC_STUB IRcReplaceManagedWidget_GetWidgetName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRcReplaceManagedWidget_INTERFACE_DEFINED__ */


#ifndef __IRcAddWidget_INTERFACE_DEFINED__
#define __IRcAddWidget_INTERFACE_DEFINED__

/* interface IRcAddWidget */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcAddWidget;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("49088BA7-CF7C-4db5-B7C5-4350ADC1F8C7")
    IRcAddWidget : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcAddWidgetVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcAddWidget * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcAddWidget * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcAddWidget * This);
        
        END_INTERFACE
    } IRcAddWidgetVtbl;

    interface IRcAddWidget
    {
        CONST_VTBL struct IRcAddWidgetVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcAddWidget_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcAddWidget_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcAddWidget_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcAddWidget_INTERFACE_DEFINED__ */


#ifndef __IRcWidgetMoveNI_INTERFACE_DEFINED__
#define __IRcWidgetMoveNI_INTERFACE_DEFINED__

/* interface IRcWidgetMoveNI */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcWidgetMoveNI;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("ADF1EF55-2F93-448E-A909-7FC2D87271E7")
    IRcWidgetMoveNI : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcWidgetMoveNIVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcWidgetMoveNI * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcWidgetMoveNI * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcWidgetMoveNI * This);
        
        END_INTERFACE
    } IRcWidgetMoveNIVtbl;

    interface IRcWidgetMoveNI
    {
        CONST_VTBL struct IRcWidgetMoveNIVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcWidgetMoveNI_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcWidgetMoveNI_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcWidgetMoveNI_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcWidgetMoveNI_INTERFACE_DEFINED__ */


#ifndef __IRcWidgetRotateNI_INTERFACE_DEFINED__
#define __IRcWidgetRotateNI_INTERFACE_DEFINED__

/* interface IRcWidgetRotateNI */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcWidgetRotateNI;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B6656D00-AD73-4A0C-B4D4-7E850DA5D2EB")
    IRcWidgetRotateNI : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcWidgetRotateNIVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcWidgetRotateNI * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcWidgetRotateNI * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcWidgetRotateNI * This);
        
        END_INTERFACE
    } IRcWidgetRotateNIVtbl;

    interface IRcWidgetRotateNI
    {
        CONST_VTBL struct IRcWidgetRotateNIVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcWidgetRotateNI_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcWidgetRotateNI_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcWidgetRotateNI_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcWidgetRotateNI_INTERFACE_DEFINED__ */


#ifndef __IRcWidgetScaleNI_INTERFACE_DEFINED__
#define __IRcWidgetScaleNI_INTERFACE_DEFINED__

/* interface IRcWidgetScaleNI */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcWidgetScaleNI;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3D915B20-B655-4877-99A2-6571354336C7")
    IRcWidgetScaleNI : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcWidgetScaleNIVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcWidgetScaleNI * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcWidgetScaleNI * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcWidgetScaleNI * This);
        
        END_INTERFACE
    } IRcWidgetScaleNIVtbl;

    interface IRcWidgetScaleNI
    {
        CONST_VTBL struct IRcWidgetScaleNIVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcWidgetScaleNI_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcWidgetScaleNI_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcWidgetScaleNI_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcWidgetScaleNI_INTERFACE_DEFINED__ */


#ifndef __IRcWidgetRotateWorldNI_INTERFACE_DEFINED__
#define __IRcWidgetRotateWorldNI_INTERFACE_DEFINED__

/* interface IRcWidgetRotateWorldNI */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcWidgetRotateWorldNI;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5D09AD89-149A-4FA9-9331-462B5E1D1456")
    IRcWidgetRotateWorldNI : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcWidgetRotateWorldNIVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcWidgetRotateWorldNI * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcWidgetRotateWorldNI * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcWidgetRotateWorldNI * This);
        
        END_INTERFACE
    } IRcWidgetRotateWorldNIVtbl;

    interface IRcWidgetRotateWorldNI
    {
        CONST_VTBL struct IRcWidgetRotateWorldNIVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcWidgetRotateWorldNI_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcWidgetRotateWorldNI_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcWidgetRotateWorldNI_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcWidgetRotateWorldNI_INTERFACE_DEFINED__ */


#ifndef __IRsReactivateable_INTERFACE_DEFINED__
#define __IRsReactivateable_INTERFACE_DEFINED__

/* interface IRsReactivateable */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsReactivateable;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2910B023-27B7-4747-95DE-223164470968")
    IRsReactivateable : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Reactivate( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsReactivateableVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsReactivateable * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsReactivateable * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsReactivateable * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Reactivate )( 
            IRsReactivateable * This);
        
        END_INTERFACE
    } IRsReactivateableVtbl;

    interface IRsReactivateable
    {
        CONST_VTBL struct IRsReactivateableVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsReactivateable_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsReactivateable_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsReactivateable_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsReactivateable_Reactivate(This)	\
    (This)->lpVtbl -> Reactivate(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsReactivateable_Reactivate_Proxy( 
    IRsReactivateable * This);


void __RPC_STUB IRsReactivateable_Reactivate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsReactivateable_INTERFACE_DEFINED__ */


#ifndef __IRcChangeKeyName_INTERFACE_DEFINED__
#define __IRcChangeKeyName_INTERFACE_DEFINED__

/* interface IRcChangeKeyName */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcChangeKeyName;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("51959FDC-8D84-405b-B611-41785288DACD")
    IRcChangeKeyName : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcChangeKeyNameVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcChangeKeyName * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcChangeKeyName * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcChangeKeyName * This);
        
        END_INTERFACE
    } IRcChangeKeyNameVtbl;

    interface IRcChangeKeyName
    {
        CONST_VTBL struct IRcChangeKeyNameVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcChangeKeyName_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcChangeKeyName_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcChangeKeyName_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcChangeKeyName_INTERFACE_DEFINED__ */


#ifndef __IRcGeneralUndoRedo_INTERFACE_DEFINED__
#define __IRcGeneralUndoRedo_INTERFACE_DEFINED__

/* interface IRcGeneralUndoRedo */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcGeneralUndoRedo;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E40B1E00-FD53-4801-B649-732B6BBDE313")
    IRcGeneralUndoRedo : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveUndo( 
            /* [in] */ IRsNode *pNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveRedo( 
            /* [in] */ IRsNode *pNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RecordUndoState( 
            /* [in] */ IRdWidgetParameters *pParams) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RecordRedoState( 
            /* [in] */ IRdWidgetParameters *pParams) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RecordSourceUndoState( 
            /* [in] */ CONID con,
            /* [in] */ IRdWidgetParameters *pParams) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RecordSourceRedoState( 
            /* [in] */ CONID con,
            /* [in] */ IRdWidgetParameters *pParams) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddConnector( 
            /* [in] */ CONID con_id) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRcGeneralUndoRedoVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcGeneralUndoRedo * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcGeneralUndoRedo * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcGeneralUndoRedo * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SaveUndo )( 
            IRcGeneralUndoRedo * This,
            /* [in] */ IRsNode *pNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SaveRedo )( 
            IRcGeneralUndoRedo * This,
            /* [in] */ IRsNode *pNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RecordUndoState )( 
            IRcGeneralUndoRedo * This,
            /* [in] */ IRdWidgetParameters *pParams);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RecordRedoState )( 
            IRcGeneralUndoRedo * This,
            /* [in] */ IRdWidgetParameters *pParams);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RecordSourceUndoState )( 
            IRcGeneralUndoRedo * This,
            /* [in] */ CONID con,
            /* [in] */ IRdWidgetParameters *pParams);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RecordSourceRedoState )( 
            IRcGeneralUndoRedo * This,
            /* [in] */ CONID con,
            /* [in] */ IRdWidgetParameters *pParams);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddConnector )( 
            IRcGeneralUndoRedo * This,
            /* [in] */ CONID con_id);
        
        END_INTERFACE
    } IRcGeneralUndoRedoVtbl;

    interface IRcGeneralUndoRedo
    {
        CONST_VTBL struct IRcGeneralUndoRedoVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcGeneralUndoRedo_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcGeneralUndoRedo_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcGeneralUndoRedo_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRcGeneralUndoRedo_SaveUndo(This,pNode)	\
    (This)->lpVtbl -> SaveUndo(This,pNode)

#define IRcGeneralUndoRedo_SaveRedo(This,pNode)	\
    (This)->lpVtbl -> SaveRedo(This,pNode)

#define IRcGeneralUndoRedo_RecordUndoState(This,pParams)	\
    (This)->lpVtbl -> RecordUndoState(This,pParams)

#define IRcGeneralUndoRedo_RecordRedoState(This,pParams)	\
    (This)->lpVtbl -> RecordRedoState(This,pParams)

#define IRcGeneralUndoRedo_RecordSourceUndoState(This,con,pParams)	\
    (This)->lpVtbl -> RecordSourceUndoState(This,con,pParams)

#define IRcGeneralUndoRedo_RecordSourceRedoState(This,con,pParams)	\
    (This)->lpVtbl -> RecordSourceRedoState(This,con,pParams)

#define IRcGeneralUndoRedo_AddConnector(This,con_id)	\
    (This)->lpVtbl -> AddConnector(This,con_id)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcGeneralUndoRedo_SaveUndo_Proxy( 
    IRcGeneralUndoRedo * This,
    /* [in] */ IRsNode *pNode);


void __RPC_STUB IRcGeneralUndoRedo_SaveUndo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcGeneralUndoRedo_SaveRedo_Proxy( 
    IRcGeneralUndoRedo * This,
    /* [in] */ IRsNode *pNode);


void __RPC_STUB IRcGeneralUndoRedo_SaveRedo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcGeneralUndoRedo_RecordUndoState_Proxy( 
    IRcGeneralUndoRedo * This,
    /* [in] */ IRdWidgetParameters *pParams);


void __RPC_STUB IRcGeneralUndoRedo_RecordUndoState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcGeneralUndoRedo_RecordRedoState_Proxy( 
    IRcGeneralUndoRedo * This,
    /* [in] */ IRdWidgetParameters *pParams);


void __RPC_STUB IRcGeneralUndoRedo_RecordRedoState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcGeneralUndoRedo_RecordSourceUndoState_Proxy( 
    IRcGeneralUndoRedo * This,
    /* [in] */ CONID con,
    /* [in] */ IRdWidgetParameters *pParams);


void __RPC_STUB IRcGeneralUndoRedo_RecordSourceUndoState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcGeneralUndoRedo_RecordSourceRedoState_Proxy( 
    IRcGeneralUndoRedo * This,
    /* [in] */ CONID con,
    /* [in] */ IRdWidgetParameters *pParams);


void __RPC_STUB IRcGeneralUndoRedo_RecordSourceRedoState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcGeneralUndoRedo_AddConnector_Proxy( 
    IRcGeneralUndoRedo * This,
    /* [in] */ CONID con_id);


void __RPC_STUB IRcGeneralUndoRedo_AddConnector_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRcGeneralUndoRedo_INTERFACE_DEFINED__ */


#ifndef __IRcSetConListValue_INTERFACE_DEFINED__
#define __IRcSetConListValue_INTERFACE_DEFINED__

/* interface IRcSetConListValue */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcSetConListValue;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5DAAE486-536B-4e50-8088-C2DC56926575")
    IRcSetConListValue : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcSetConListValueVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcSetConListValue * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcSetConListValue * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcSetConListValue * This);
        
        END_INTERFACE
    } IRcSetConListValueVtbl;

    interface IRcSetConListValue
    {
        CONST_VTBL struct IRcSetConListValueVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcSetConListValue_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcSetConListValue_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcSetConListValue_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcSetConListValue_INTERFACE_DEFINED__ */


#ifndef __IRcWidgetTransformNI_INTERFACE_DEFINED__
#define __IRcWidgetTransformNI_INTERFACE_DEFINED__

/* interface IRcWidgetTransformNI */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcWidgetTransformNI;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5542835D-C19B-43a2-880A-EEDCDD1019F3")
    IRcWidgetTransformNI : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcWidgetTransformNIVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcWidgetTransformNI * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcWidgetTransformNI * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcWidgetTransformNI * This);
        
        END_INTERFACE
    } IRcWidgetTransformNIVtbl;

    interface IRcWidgetTransformNI
    {
        CONST_VTBL struct IRcWidgetTransformNIVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcWidgetTransformNI_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcWidgetTransformNI_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcWidgetTransformNI_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcWidgetTransformNI_INTERFACE_DEFINED__ */


#ifndef __IRsConnectorEnumerator_INTERFACE_DEFINED__
#define __IRsConnectorEnumerator_INTERFACE_DEFINED__

/* interface IRsConnectorEnumerator */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsConnectorEnumerator;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7C8C6DD6-A1D8-4631-BA48-21D07BB0178E")
    IRsConnectorEnumerator : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetConnectorsCount( 
            /* [out] */ RtUlong *pCount) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetConnector( 
            /* [in] */ RtUlong uIndex,
            /* [out] */ IRsConnector **ppConnector) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddConnector( 
            /* [in] */ IRsConnector *pConnector) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddOutputConnections( 
            /* [in] */ IRsConnector *pConnector) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddInputConnections( 
            /* [in] */ IRsConnector *pConnector) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddOutputDirectConnections( 
            /* [in] */ IRsConnector *pConnector) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddInputDirectConnections( 
            /* [in] */ IRsConnector *pConnector) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsConnectorEnumeratorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsConnectorEnumerator * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsConnectorEnumerator * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsConnectorEnumerator * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetConnectorsCount )( 
            IRsConnectorEnumerator * This,
            /* [out] */ RtUlong *pCount);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetConnector )( 
            IRsConnectorEnumerator * This,
            /* [in] */ RtUlong uIndex,
            /* [out] */ IRsConnector **ppConnector);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddConnector )( 
            IRsConnectorEnumerator * This,
            /* [in] */ IRsConnector *pConnector);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddOutputConnections )( 
            IRsConnectorEnumerator * This,
            /* [in] */ IRsConnector *pConnector);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddInputConnections )( 
            IRsConnectorEnumerator * This,
            /* [in] */ IRsConnector *pConnector);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddOutputDirectConnections )( 
            IRsConnectorEnumerator * This,
            /* [in] */ IRsConnector *pConnector);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddInputDirectConnections )( 
            IRsConnectorEnumerator * This,
            /* [in] */ IRsConnector *pConnector);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRsConnectorEnumerator * This);
        
        END_INTERFACE
    } IRsConnectorEnumeratorVtbl;

    interface IRsConnectorEnumerator
    {
        CONST_VTBL struct IRsConnectorEnumeratorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsConnectorEnumerator_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsConnectorEnumerator_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsConnectorEnumerator_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsConnectorEnumerator_GetConnectorsCount(This,pCount)	\
    (This)->lpVtbl -> GetConnectorsCount(This,pCount)

#define IRsConnectorEnumerator_GetConnector(This,uIndex,ppConnector)	\
    (This)->lpVtbl -> GetConnector(This,uIndex,ppConnector)

#define IRsConnectorEnumerator_AddConnector(This,pConnector)	\
    (This)->lpVtbl -> AddConnector(This,pConnector)

#define IRsConnectorEnumerator_AddOutputConnections(This,pConnector)	\
    (This)->lpVtbl -> AddOutputConnections(This,pConnector)

#define IRsConnectorEnumerator_AddInputConnections(This,pConnector)	\
    (This)->lpVtbl -> AddInputConnections(This,pConnector)

#define IRsConnectorEnumerator_AddOutputDirectConnections(This,pConnector)	\
    (This)->lpVtbl -> AddOutputDirectConnections(This,pConnector)

#define IRsConnectorEnumerator_AddInputDirectConnections(This,pConnector)	\
    (This)->lpVtbl -> AddInputDirectConnections(This,pConnector)

#define IRsConnectorEnumerator_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsConnectorEnumerator_GetConnectorsCount_Proxy( 
    IRsConnectorEnumerator * This,
    /* [out] */ RtUlong *pCount);


void __RPC_STUB IRsConnectorEnumerator_GetConnectorsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsConnectorEnumerator_GetConnector_Proxy( 
    IRsConnectorEnumerator * This,
    /* [in] */ RtUlong uIndex,
    /* [out] */ IRsConnector **ppConnector);


void __RPC_STUB IRsConnectorEnumerator_GetConnector_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsConnectorEnumerator_AddConnector_Proxy( 
    IRsConnectorEnumerator * This,
    /* [in] */ IRsConnector *pConnector);


void __RPC_STUB IRsConnectorEnumerator_AddConnector_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsConnectorEnumerator_AddOutputConnections_Proxy( 
    IRsConnectorEnumerator * This,
    /* [in] */ IRsConnector *pConnector);


void __RPC_STUB IRsConnectorEnumerator_AddOutputConnections_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsConnectorEnumerator_AddInputConnections_Proxy( 
    IRsConnectorEnumerator * This,
    /* [in] */ IRsConnector *pConnector);


void __RPC_STUB IRsConnectorEnumerator_AddInputConnections_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsConnectorEnumerator_AddOutputDirectConnections_Proxy( 
    IRsConnectorEnumerator * This,
    /* [in] */ IRsConnector *pConnector);


void __RPC_STUB IRsConnectorEnumerator_AddOutputDirectConnections_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsConnectorEnumerator_AddInputDirectConnections_Proxy( 
    IRsConnectorEnumerator * This,
    /* [in] */ IRsConnector *pConnector);


void __RPC_STUB IRsConnectorEnumerator_AddInputDirectConnections_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsConnectorEnumerator_Clear_Proxy( 
    IRsConnectorEnumerator * This);


void __RPC_STUB IRsConnectorEnumerator_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsConnectorEnumerator_INTERFACE_DEFINED__ */


#ifndef __IRsWidgetComplexActivation_INTERFACE_DEFINED__
#define __IRsWidgetComplexActivation_INTERFACE_DEFINED__

/* interface IRsWidgetComplexActivation */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsWidgetComplexActivation;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8A6C11B4-75FE-42e3-B01E-72F5B49E7317")
    IRsWidgetComplexActivation : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE OnActivateDo( 
            /* [in] */ IRcUndoRedoGroup *pUndoRedo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE OnActivateUndo( 
            /* [in] */ IRcUndoRedoGroup *pUndoRedo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE OnDeactivateDo( 
            /* [in] */ IRcUndoRedoGroup *pUndoRedo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE OnDeactivateUndo( 
            /* [in] */ IRcUndoRedoGroup *pUndoRedo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CanActivate( 
            /* [retval][out] */ RtBool *pbCanActivate) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsWidgetComplexActivationVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsWidgetComplexActivation * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsWidgetComplexActivation * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsWidgetComplexActivation * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *OnActivateDo )( 
            IRsWidgetComplexActivation * This,
            /* [in] */ IRcUndoRedoGroup *pUndoRedo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *OnActivateUndo )( 
            IRsWidgetComplexActivation * This,
            /* [in] */ IRcUndoRedoGroup *pUndoRedo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *OnDeactivateDo )( 
            IRsWidgetComplexActivation * This,
            /* [in] */ IRcUndoRedoGroup *pUndoRedo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *OnDeactivateUndo )( 
            IRsWidgetComplexActivation * This,
            /* [in] */ IRcUndoRedoGroup *pUndoRedo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CanActivate )( 
            IRsWidgetComplexActivation * This,
            /* [retval][out] */ RtBool *pbCanActivate);
        
        END_INTERFACE
    } IRsWidgetComplexActivationVtbl;

    interface IRsWidgetComplexActivation
    {
        CONST_VTBL struct IRsWidgetComplexActivationVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsWidgetComplexActivation_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsWidgetComplexActivation_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsWidgetComplexActivation_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsWidgetComplexActivation_OnActivateDo(This,pUndoRedo)	\
    (This)->lpVtbl -> OnActivateDo(This,pUndoRedo)

#define IRsWidgetComplexActivation_OnActivateUndo(This,pUndoRedo)	\
    (This)->lpVtbl -> OnActivateUndo(This,pUndoRedo)

#define IRsWidgetComplexActivation_OnDeactivateDo(This,pUndoRedo)	\
    (This)->lpVtbl -> OnDeactivateDo(This,pUndoRedo)

#define IRsWidgetComplexActivation_OnDeactivateUndo(This,pUndoRedo)	\
    (This)->lpVtbl -> OnDeactivateUndo(This,pUndoRedo)

#define IRsWidgetComplexActivation_CanActivate(This,pbCanActivate)	\
    (This)->lpVtbl -> CanActivate(This,pbCanActivate)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetComplexActivation_OnActivateDo_Proxy( 
    IRsWidgetComplexActivation * This,
    /* [in] */ IRcUndoRedoGroup *pUndoRedo);


void __RPC_STUB IRsWidgetComplexActivation_OnActivateDo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetComplexActivation_OnActivateUndo_Proxy( 
    IRsWidgetComplexActivation * This,
    /* [in] */ IRcUndoRedoGroup *pUndoRedo);


void __RPC_STUB IRsWidgetComplexActivation_OnActivateUndo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetComplexActivation_OnDeactivateDo_Proxy( 
    IRsWidgetComplexActivation * This,
    /* [in] */ IRcUndoRedoGroup *pUndoRedo);


void __RPC_STUB IRsWidgetComplexActivation_OnDeactivateDo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetComplexActivation_OnDeactivateUndo_Proxy( 
    IRsWidgetComplexActivation * This,
    /* [in] */ IRcUndoRedoGroup *pUndoRedo);


void __RPC_STUB IRsWidgetComplexActivation_OnDeactivateUndo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetComplexActivation_CanActivate_Proxy( 
    IRsWidgetComplexActivation * This,
    /* [retval][out] */ RtBool *pbCanActivate);


void __RPC_STUB IRsWidgetComplexActivation_CanActivate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsWidgetComplexActivation_INTERFACE_DEFINED__ */


#ifndef __IRcDeactivateWidget_INTERFACE_DEFINED__
#define __IRcDeactivateWidget_INTERFACE_DEFINED__

/* interface IRcDeactivateWidget */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcDeactivateWidget;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("86F332DD-DE67-4848-B4D5-238F41B7B851")
    IRcDeactivateWidget : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Deactivate( 
            /* [in] */ BSTR bstrWidgetName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetUndoableState( 
            /* [in] */ RtBool bUndoable) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DeactivateDirect( 
            /* [in] */ IRnActiveWidget *pWidgetNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DetachWidget( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetWidget( 
            /* [in] */ IRsNode *pWidgetNode) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRcDeactivateWidgetVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcDeactivateWidget * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcDeactivateWidget * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcDeactivateWidget * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Deactivate )( 
            IRcDeactivateWidget * This,
            /* [in] */ BSTR bstrWidgetName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetUndoableState )( 
            IRcDeactivateWidget * This,
            /* [in] */ RtBool bUndoable);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DeactivateDirect )( 
            IRcDeactivateWidget * This,
            /* [in] */ IRnActiveWidget *pWidgetNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DetachWidget )( 
            IRcDeactivateWidget * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetWidget )( 
            IRcDeactivateWidget * This,
            /* [in] */ IRsNode *pWidgetNode);
        
        END_INTERFACE
    } IRcDeactivateWidgetVtbl;

    interface IRcDeactivateWidget
    {
        CONST_VTBL struct IRcDeactivateWidgetVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcDeactivateWidget_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcDeactivateWidget_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcDeactivateWidget_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRcDeactivateWidget_Deactivate(This,bstrWidgetName)	\
    (This)->lpVtbl -> Deactivate(This,bstrWidgetName)

#define IRcDeactivateWidget_SetUndoableState(This,bUndoable)	\
    (This)->lpVtbl -> SetUndoableState(This,bUndoable)

#define IRcDeactivateWidget_DeactivateDirect(This,pWidgetNode)	\
    (This)->lpVtbl -> DeactivateDirect(This,pWidgetNode)

#define IRcDeactivateWidget_DetachWidget(This)	\
    (This)->lpVtbl -> DetachWidget(This)

#define IRcDeactivateWidget_SetWidget(This,pWidgetNode)	\
    (This)->lpVtbl -> SetWidget(This,pWidgetNode)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcDeactivateWidget_Deactivate_Proxy( 
    IRcDeactivateWidget * This,
    /* [in] */ BSTR bstrWidgetName);


void __RPC_STUB IRcDeactivateWidget_Deactivate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcDeactivateWidget_SetUndoableState_Proxy( 
    IRcDeactivateWidget * This,
    /* [in] */ RtBool bUndoable);


void __RPC_STUB IRcDeactivateWidget_SetUndoableState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcDeactivateWidget_DeactivateDirect_Proxy( 
    IRcDeactivateWidget * This,
    /* [in] */ IRnActiveWidget *pWidgetNode);


void __RPC_STUB IRcDeactivateWidget_DeactivateDirect_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcDeactivateWidget_DetachWidget_Proxy( 
    IRcDeactivateWidget * This);


void __RPC_STUB IRcDeactivateWidget_DetachWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcDeactivateWidget_SetWidget_Proxy( 
    IRcDeactivateWidget * This,
    /* [in] */ IRsNode *pWidgetNode);


void __RPC_STUB IRcDeactivateWidget_SetWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRcDeactivateWidget_INTERFACE_DEFINED__ */


#ifndef __IRsWidgetVisualizationCtrl_INTERFACE_DEFINED__
#define __IRsWidgetVisualizationCtrl_INTERFACE_DEFINED__

/* interface IRsWidgetVisualizationCtrl */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsWidgetVisualizationCtrl;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("40A49AD8-66ED-4E4C-BA96-FD59D606288F")
    IRsWidgetVisualizationCtrl : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetRenderAttributes( 
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRsDataObject **ppRenderAttributes) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetMesh( 
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRdMesh **ppMesh) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetMaterial( 
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRsDataObject **ppMaterial) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetTransform( 
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRdMatrixf **ppTransform) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetTransformNode( 
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRsBaseNode **ppTransformNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetShapeRaycastParameters( 
            /* [in] */ RtFloat fDistance,
            /* [in] */ RtUlong dwObjectId,
            /* [in] */ RtPoint *pptNearestPt) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetResourcesTimestamp( 
            /* [in] */ GUID *pWidgetState,
            /* [out] */ RtUlong *puMeshTimestamp,
            /* [out] */ RtUlong *puMaterialTimestamp,
            /* [out] */ RtUlong *puRenderAttribsTimestamp) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsWidgetVisualizationCtrlVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsWidgetVisualizationCtrl * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsWidgetVisualizationCtrl * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsWidgetVisualizationCtrl * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetRenderAttributes )( 
            IRsWidgetVisualizationCtrl * This,
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRsDataObject **ppRenderAttributes);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetMesh )( 
            IRsWidgetVisualizationCtrl * This,
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRdMesh **ppMesh);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetMaterial )( 
            IRsWidgetVisualizationCtrl * This,
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRsDataObject **ppMaterial);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetTransform )( 
            IRsWidgetVisualizationCtrl * This,
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRdMatrixf **ppTransform);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetTransformNode )( 
            IRsWidgetVisualizationCtrl * This,
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRsBaseNode **ppTransformNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetShapeRaycastParameters )( 
            IRsWidgetVisualizationCtrl * This,
            /* [in] */ RtFloat fDistance,
            /* [in] */ RtUlong dwObjectId,
            /* [in] */ RtPoint *pptNearestPt);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetResourcesTimestamp )( 
            IRsWidgetVisualizationCtrl * This,
            /* [in] */ GUID *pWidgetState,
            /* [out] */ RtUlong *puMeshTimestamp,
            /* [out] */ RtUlong *puMaterialTimestamp,
            /* [out] */ RtUlong *puRenderAttribsTimestamp);
        
        END_INTERFACE
    } IRsWidgetVisualizationCtrlVtbl;

    interface IRsWidgetVisualizationCtrl
    {
        CONST_VTBL struct IRsWidgetVisualizationCtrlVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsWidgetVisualizationCtrl_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsWidgetVisualizationCtrl_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsWidgetVisualizationCtrl_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsWidgetVisualizationCtrl_GetRenderAttributes(This,pWidgetState,ppRenderAttributes)	\
    (This)->lpVtbl -> GetRenderAttributes(This,pWidgetState,ppRenderAttributes)

#define IRsWidgetVisualizationCtrl_GetMesh(This,pWidgetState,ppMesh)	\
    (This)->lpVtbl -> GetMesh(This,pWidgetState,ppMesh)

#define IRsWidgetVisualizationCtrl_GetMaterial(This,pWidgetState,ppMaterial)	\
    (This)->lpVtbl -> GetMaterial(This,pWidgetState,ppMaterial)

#define IRsWidgetVisualizationCtrl_GetTransform(This,pWidgetState,ppTransform)	\
    (This)->lpVtbl -> GetTransform(This,pWidgetState,ppTransform)

#define IRsWidgetVisualizationCtrl_GetTransformNode(This,pWidgetState,ppTransformNode)	\
    (This)->lpVtbl -> GetTransformNode(This,pWidgetState,ppTransformNode)

#define IRsWidgetVisualizationCtrl_SetShapeRaycastParameters(This,fDistance,dwObjectId,pptNearestPt)	\
    (This)->lpVtbl -> SetShapeRaycastParameters(This,fDistance,dwObjectId,pptNearestPt)

#define IRsWidgetVisualizationCtrl_GetResourcesTimestamp(This,pWidgetState,puMeshTimestamp,puMaterialTimestamp,puRenderAttribsTimestamp)	\
    (This)->lpVtbl -> GetResourcesTimestamp(This,pWidgetState,puMeshTimestamp,puMaterialTimestamp,puRenderAttribsTimestamp)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetVisualizationCtrl_GetRenderAttributes_Proxy( 
    IRsWidgetVisualizationCtrl * This,
    /* [in] */ GUID *pWidgetState,
    /* [retval][out] */ IRsDataObject **ppRenderAttributes);


void __RPC_STUB IRsWidgetVisualizationCtrl_GetRenderAttributes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetVisualizationCtrl_GetMesh_Proxy( 
    IRsWidgetVisualizationCtrl * This,
    /* [in] */ GUID *pWidgetState,
    /* [retval][out] */ IRdMesh **ppMesh);


void __RPC_STUB IRsWidgetVisualizationCtrl_GetMesh_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetVisualizationCtrl_GetMaterial_Proxy( 
    IRsWidgetVisualizationCtrl * This,
    /* [in] */ GUID *pWidgetState,
    /* [retval][out] */ IRsDataObject **ppMaterial);


void __RPC_STUB IRsWidgetVisualizationCtrl_GetMaterial_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetVisualizationCtrl_GetTransform_Proxy( 
    IRsWidgetVisualizationCtrl * This,
    /* [in] */ GUID *pWidgetState,
    /* [retval][out] */ IRdMatrixf **ppTransform);


void __RPC_STUB IRsWidgetVisualizationCtrl_GetTransform_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetVisualizationCtrl_GetTransformNode_Proxy( 
    IRsWidgetVisualizationCtrl * This,
    /* [in] */ GUID *pWidgetState,
    /* [retval][out] */ IRsBaseNode **ppTransformNode);


void __RPC_STUB IRsWidgetVisualizationCtrl_GetTransformNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetVisualizationCtrl_SetShapeRaycastParameters_Proxy( 
    IRsWidgetVisualizationCtrl * This,
    /* [in] */ RtFloat fDistance,
    /* [in] */ RtUlong dwObjectId,
    /* [in] */ RtPoint *pptNearestPt);


void __RPC_STUB IRsWidgetVisualizationCtrl_SetShapeRaycastParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetVisualizationCtrl_GetResourcesTimestamp_Proxy( 
    IRsWidgetVisualizationCtrl * This,
    /* [in] */ GUID *pWidgetState,
    /* [out] */ RtUlong *puMeshTimestamp,
    /* [out] */ RtUlong *puMaterialTimestamp,
    /* [out] */ RtUlong *puRenderAttribsTimestamp);


void __RPC_STUB IRsWidgetVisualizationCtrl_GetResourcesTimestamp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsWidgetVisualizationCtrl_INTERFACE_DEFINED__ */


#ifndef __IRdWidgetVisualization_INTERFACE_DEFINED__
#define __IRdWidgetVisualization_INTERFACE_DEFINED__

/* interface IRdWidgetVisualization */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRdWidgetVisualization;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4C70ED91-4A85-473C-A359-8ABA25ED2967")
    IRdWidgetVisualization : public IRsObject
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetMesh( 
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRdMesh **ppMesh) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetMaterial( 
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRsDataObject **ppMaterial) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetTransform( 
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRdMatrixf **ppTransform) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetTransformNode( 
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRsBaseNode **ppTransformNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetWidgetVisualization( 
            /* [in] */ IRsWidgetVisualizationCtrl *pWidgetVis) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetRenderAttributes( 
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRsDataObject **ppRenderAttributes) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetShapeRaycastParameters( 
            /* [in] */ RtFloat fDistance,
            /* [in] */ RtUlong dwObjectIndex,
            /* [in] */ RtPoint *pptNearestPt) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetResourcesTimestamp( 
            /* [in] */ GUID *pWidgetState,
            /* [out] */ RtUlong *puMeshTimestamp,
            /* [out] */ RtUlong *puMaterialTimestamp,
            /* [out] */ RtUlong *puRenderAttribsTimestamp) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdWidgetVisualizationVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdWidgetVisualization * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdWidgetVisualization * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdWidgetVisualization * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRdWidgetVisualization * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRdWidgetVisualization * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetMesh )( 
            IRdWidgetVisualization * This,
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRdMesh **ppMesh);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetMaterial )( 
            IRdWidgetVisualization * This,
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRsDataObject **ppMaterial);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetTransform )( 
            IRdWidgetVisualization * This,
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRdMatrixf **ppTransform);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetTransformNode )( 
            IRdWidgetVisualization * This,
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRsBaseNode **ppTransformNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetWidgetVisualization )( 
            IRdWidgetVisualization * This,
            /* [in] */ IRsWidgetVisualizationCtrl *pWidgetVis);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetRenderAttributes )( 
            IRdWidgetVisualization * This,
            /* [in] */ GUID *pWidgetState,
            /* [retval][out] */ IRsDataObject **ppRenderAttributes);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetShapeRaycastParameters )( 
            IRdWidgetVisualization * This,
            /* [in] */ RtFloat fDistance,
            /* [in] */ RtUlong dwObjectIndex,
            /* [in] */ RtPoint *pptNearestPt);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetResourcesTimestamp )( 
            IRdWidgetVisualization * This,
            /* [in] */ GUID *pWidgetState,
            /* [out] */ RtUlong *puMeshTimestamp,
            /* [out] */ RtUlong *puMaterialTimestamp,
            /* [out] */ RtUlong *puRenderAttribsTimestamp);
        
        END_INTERFACE
    } IRdWidgetVisualizationVtbl;

    interface IRdWidgetVisualization
    {
        CONST_VTBL struct IRdWidgetVisualizationVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdWidgetVisualization_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdWidgetVisualization_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdWidgetVisualization_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdWidgetVisualization_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRdWidgetVisualization_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#define IRdWidgetVisualization_GetMesh(This,pWidgetState,ppMesh)	\
    (This)->lpVtbl -> GetMesh(This,pWidgetState,ppMesh)

#define IRdWidgetVisualization_GetMaterial(This,pWidgetState,ppMaterial)	\
    (This)->lpVtbl -> GetMaterial(This,pWidgetState,ppMaterial)

#define IRdWidgetVisualization_GetTransform(This,pWidgetState,ppTransform)	\
    (This)->lpVtbl -> GetTransform(This,pWidgetState,ppTransform)

#define IRdWidgetVisualization_GetTransformNode(This,pWidgetState,ppTransformNode)	\
    (This)->lpVtbl -> GetTransformNode(This,pWidgetState,ppTransformNode)

#define IRdWidgetVisualization_SetWidgetVisualization(This,pWidgetVis)	\
    (This)->lpVtbl -> SetWidgetVisualization(This,pWidgetVis)

#define IRdWidgetVisualization_GetRenderAttributes(This,pWidgetState,ppRenderAttributes)	\
    (This)->lpVtbl -> GetRenderAttributes(This,pWidgetState,ppRenderAttributes)

#define IRdWidgetVisualization_SetShapeRaycastParameters(This,fDistance,dwObjectIndex,pptNearestPt)	\
    (This)->lpVtbl -> SetShapeRaycastParameters(This,fDistance,dwObjectIndex,pptNearestPt)

#define IRdWidgetVisualization_GetResourcesTimestamp(This,pWidgetState,puMeshTimestamp,puMaterialTimestamp,puRenderAttribsTimestamp)	\
    (This)->lpVtbl -> GetResourcesTimestamp(This,pWidgetState,puMeshTimestamp,puMaterialTimestamp,puRenderAttribsTimestamp)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetVisualization_GetMesh_Proxy( 
    IRdWidgetVisualization * This,
    /* [in] */ GUID *pWidgetState,
    /* [retval][out] */ IRdMesh **ppMesh);


void __RPC_STUB IRdWidgetVisualization_GetMesh_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetVisualization_GetMaterial_Proxy( 
    IRdWidgetVisualization * This,
    /* [in] */ GUID *pWidgetState,
    /* [retval][out] */ IRsDataObject **ppMaterial);


void __RPC_STUB IRdWidgetVisualization_GetMaterial_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetVisualization_GetTransform_Proxy( 
    IRdWidgetVisualization * This,
    /* [in] */ GUID *pWidgetState,
    /* [retval][out] */ IRdMatrixf **ppTransform);


void __RPC_STUB IRdWidgetVisualization_GetTransform_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetVisualization_GetTransformNode_Proxy( 
    IRdWidgetVisualization * This,
    /* [in] */ GUID *pWidgetState,
    /* [retval][out] */ IRsBaseNode **ppTransformNode);


void __RPC_STUB IRdWidgetVisualization_GetTransformNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetVisualization_SetWidgetVisualization_Proxy( 
    IRdWidgetVisualization * This,
    /* [in] */ IRsWidgetVisualizationCtrl *pWidgetVis);


void __RPC_STUB IRdWidgetVisualization_SetWidgetVisualization_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetVisualization_GetRenderAttributes_Proxy( 
    IRdWidgetVisualization * This,
    /* [in] */ GUID *pWidgetState,
    /* [retval][out] */ IRsDataObject **ppRenderAttributes);


void __RPC_STUB IRdWidgetVisualization_GetRenderAttributes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetVisualization_SetShapeRaycastParameters_Proxy( 
    IRdWidgetVisualization * This,
    /* [in] */ RtFloat fDistance,
    /* [in] */ RtUlong dwObjectIndex,
    /* [in] */ RtPoint *pptNearestPt);


void __RPC_STUB IRdWidgetVisualization_SetShapeRaycastParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetVisualization_GetResourcesTimestamp_Proxy( 
    IRdWidgetVisualization * This,
    /* [in] */ GUID *pWidgetState,
    /* [out] */ RtUlong *puMeshTimestamp,
    /* [out] */ RtUlong *puMaterialTimestamp,
    /* [out] */ RtUlong *puRenderAttribsTimestamp);


void __RPC_STUB IRdWidgetVisualization_GetResourcesTimestamp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdWidgetVisualization_INTERFACE_DEFINED__ */


#ifndef __IRdDockingPosition_INTERFACE_DEFINED__
#define __IRdDockingPosition_INTERFACE_DEFINED__

/* interface IRdDockingPosition */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRdDockingPosition;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4A5CEAF8-0917-4306-95F0-F75B3EFBB2EF")
    IRdDockingPosition : public IRsObject
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDockingPosition( 
            /* [out] */ RtVector3f *pPosition) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDockingPosition( 
            /* [in] */ IRsUnknownDocking *pDocking,
            /* [in] */ GUID portGuid) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdDockingPositionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdDockingPosition * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdDockingPosition * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdDockingPosition * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRdDockingPosition * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRdDockingPosition * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDockingPosition )( 
            IRdDockingPosition * This,
            /* [out] */ RtVector3f *pPosition);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDockingPosition )( 
            IRdDockingPosition * This,
            /* [in] */ IRsUnknownDocking *pDocking,
            /* [in] */ GUID portGuid);
        
        END_INTERFACE
    } IRdDockingPositionVtbl;

    interface IRdDockingPosition
    {
        CONST_VTBL struct IRdDockingPositionVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdDockingPosition_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdDockingPosition_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdDockingPosition_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdDockingPosition_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRdDockingPosition_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#define IRdDockingPosition_GetDockingPosition(This,pPosition)	\
    (This)->lpVtbl -> GetDockingPosition(This,pPosition)

#define IRdDockingPosition_SetDockingPosition(This,pDocking,portGuid)	\
    (This)->lpVtbl -> SetDockingPosition(This,pDocking,portGuid)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdDockingPosition_GetDockingPosition_Proxy( 
    IRdDockingPosition * This,
    /* [out] */ RtVector3f *pPosition);


void __RPC_STUB IRdDockingPosition_GetDockingPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdDockingPosition_SetDockingPosition_Proxy( 
    IRdDockingPosition * This,
    /* [in] */ IRsUnknownDocking *pDocking,
    /* [in] */ GUID portGuid);


void __RPC_STUB IRdDockingPosition_SetDockingPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdDockingPosition_INTERFACE_DEFINED__ */


#ifndef __IRdCoordinateSystem_INTERFACE_DEFINED__
#define __IRdCoordinateSystem_INTERFACE_DEFINED__

/* interface IRdCoordinateSystem */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRdCoordinateSystem;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2764BC30-C5AB-4FE2-9584-35AB531E2E4A")
    IRdCoordinateSystem : public IRsObject
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCoordinateSystem( 
            /* [in] */ IRsUnknownCoordinateSystem *pCoordSysNode,
            /* [in] */ GUID guid) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCoordinateSystem( 
            /* [out] */ IRsUnknownCoordinateSystem **ppCoordSysNode,
            /* [out] */ GUID *guid) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetTransformationMatrix( 
            /* [out] */ RtMatrixf *pMatrix) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCoordinateSystemScaling( 
            /* [out] */ RtVector4f *pScalePlane) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCoordinateSystemViewDependence( 
            /* [out] */ RtBool *pbDependent) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdCoordinateSystemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdCoordinateSystem * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdCoordinateSystem * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdCoordinateSystem * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRdCoordinateSystem * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRdCoordinateSystem * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCoordinateSystem )( 
            IRdCoordinateSystem * This,
            /* [in] */ IRsUnknownCoordinateSystem *pCoordSysNode,
            /* [in] */ GUID guid);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCoordinateSystem )( 
            IRdCoordinateSystem * This,
            /* [out] */ IRsUnknownCoordinateSystem **ppCoordSysNode,
            /* [out] */ GUID *guid);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetTransformationMatrix )( 
            IRdCoordinateSystem * This,
            /* [out] */ RtMatrixf *pMatrix);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCoordinateSystemScaling )( 
            IRdCoordinateSystem * This,
            /* [out] */ RtVector4f *pScalePlane);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCoordinateSystemViewDependence )( 
            IRdCoordinateSystem * This,
            /* [out] */ RtBool *pbDependent);
        
        END_INTERFACE
    } IRdCoordinateSystemVtbl;

    interface IRdCoordinateSystem
    {
        CONST_VTBL struct IRdCoordinateSystemVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdCoordinateSystem_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdCoordinateSystem_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdCoordinateSystem_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdCoordinateSystem_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRdCoordinateSystem_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#define IRdCoordinateSystem_SetCoordinateSystem(This,pCoordSysNode,guid)	\
    (This)->lpVtbl -> SetCoordinateSystem(This,pCoordSysNode,guid)

#define IRdCoordinateSystem_GetCoordinateSystem(This,ppCoordSysNode,guid)	\
    (This)->lpVtbl -> GetCoordinateSystem(This,ppCoordSysNode,guid)

#define IRdCoordinateSystem_GetTransformationMatrix(This,pMatrix)	\
    (This)->lpVtbl -> GetTransformationMatrix(This,pMatrix)

#define IRdCoordinateSystem_GetCoordinateSystemScaling(This,pScalePlane)	\
    (This)->lpVtbl -> GetCoordinateSystemScaling(This,pScalePlane)

#define IRdCoordinateSystem_GetCoordinateSystemViewDependence(This,pbDependent)	\
    (This)->lpVtbl -> GetCoordinateSystemViewDependence(This,pbDependent)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCoordinateSystem_SetCoordinateSystem_Proxy( 
    IRdCoordinateSystem * This,
    /* [in] */ IRsUnknownCoordinateSystem *pCoordSysNode,
    /* [in] */ GUID guid);


void __RPC_STUB IRdCoordinateSystem_SetCoordinateSystem_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCoordinateSystem_GetCoordinateSystem_Proxy( 
    IRdCoordinateSystem * This,
    /* [out] */ IRsUnknownCoordinateSystem **ppCoordSysNode,
    /* [out] */ GUID *guid);


void __RPC_STUB IRdCoordinateSystem_GetCoordinateSystem_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCoordinateSystem_GetTransformationMatrix_Proxy( 
    IRdCoordinateSystem * This,
    /* [out] */ RtMatrixf *pMatrix);


void __RPC_STUB IRdCoordinateSystem_GetTransformationMatrix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCoordinateSystem_GetCoordinateSystemScaling_Proxy( 
    IRdCoordinateSystem * This,
    /* [out] */ RtVector4f *pScalePlane);


void __RPC_STUB IRdCoordinateSystem_GetCoordinateSystemScaling_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCoordinateSystem_GetCoordinateSystemViewDependence_Proxy( 
    IRdCoordinateSystem * This,
    /* [out] */ RtBool *pbDependent);


void __RPC_STUB IRdCoordinateSystem_GetCoordinateSystemViewDependence_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdCoordinateSystem_INTERFACE_DEFINED__ */


#ifndef __IRdWidgetAction_INTERFACE_DEFINED__
#define __IRdWidgetAction_INTERFACE_DEFINED__

/* interface IRdWidgetAction */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRdWidgetAction;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F960B7D4-4810-4367-8217-A33AE54D1A55")
    IRdWidgetAction : public IRsObject
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRdWidgetActionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdWidgetAction * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdWidgetAction * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdWidgetAction * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRdWidgetAction * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRdWidgetAction * This,
            /* [retval][out] */ BSTR *pVal);
        
        END_INTERFACE
    } IRdWidgetActionVtbl;

    interface IRdWidgetAction
    {
        CONST_VTBL struct IRdWidgetActionVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdWidgetAction_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdWidgetAction_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdWidgetAction_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdWidgetAction_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRdWidgetAction_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRdWidgetAction_INTERFACE_DEFINED__ */


#ifndef __IRsUnknownGesture_INTERFACE_DEFINED__
#define __IRsUnknownGesture_INTERFACE_DEFINED__

/* interface IRsUnknownGesture */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsUnknownGesture;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("033615D0-90CE-444e-9200-F145D517E14E")
    IRsUnknownGesture : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetActivationStatus( 
            /* [retval][out] */ RtBool *pActive) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetUpdateStatus( 
            /* [retval][out] */ RtBool *pRequireUpdate) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Activate( 
            /* [in] */ struct RtWidgetToolEvent *pEvent) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ProcessMouseEvent( 
            /* [in] */ struct RtWidgetToolEvent *pEvent) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE TriggerCommands( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Deactivate( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsUnknownGestureVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsUnknownGesture * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsUnknownGesture * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsUnknownGesture * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetActivationStatus )( 
            IRsUnknownGesture * This,
            /* [retval][out] */ RtBool *pActive);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetUpdateStatus )( 
            IRsUnknownGesture * This,
            /* [retval][out] */ RtBool *pRequireUpdate);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Activate )( 
            IRsUnknownGesture * This,
            /* [in] */ struct RtWidgetToolEvent *pEvent);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ProcessMouseEvent )( 
            IRsUnknownGesture * This,
            /* [in] */ struct RtWidgetToolEvent *pEvent);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *TriggerCommands )( 
            IRsUnknownGesture * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Deactivate )( 
            IRsUnknownGesture * This);
        
        END_INTERFACE
    } IRsUnknownGestureVtbl;

    interface IRsUnknownGesture
    {
        CONST_VTBL struct IRsUnknownGestureVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsUnknownGesture_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsUnknownGesture_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsUnknownGesture_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsUnknownGesture_GetActivationStatus(This,pActive)	\
    (This)->lpVtbl -> GetActivationStatus(This,pActive)

#define IRsUnknownGesture_GetUpdateStatus(This,pRequireUpdate)	\
    (This)->lpVtbl -> GetUpdateStatus(This,pRequireUpdate)

#define IRsUnknownGesture_Activate(This,pEvent)	\
    (This)->lpVtbl -> Activate(This,pEvent)

#define IRsUnknownGesture_ProcessMouseEvent(This,pEvent)	\
    (This)->lpVtbl -> ProcessMouseEvent(This,pEvent)

#define IRsUnknownGesture_TriggerCommands(This)	\
    (This)->lpVtbl -> TriggerCommands(This)

#define IRsUnknownGesture_Deactivate(This)	\
    (This)->lpVtbl -> Deactivate(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsUnknownGesture_GetActivationStatus_Proxy( 
    IRsUnknownGesture * This,
    /* [retval][out] */ RtBool *pActive);


void __RPC_STUB IRsUnknownGesture_GetActivationStatus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsUnknownGesture_GetUpdateStatus_Proxy( 
    IRsUnknownGesture * This,
    /* [retval][out] */ RtBool *pRequireUpdate);


void __RPC_STUB IRsUnknownGesture_GetUpdateStatus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsUnknownGesture_Activate_Proxy( 
    IRsUnknownGesture * This,
    /* [in] */ struct RtWidgetToolEvent *pEvent);


void __RPC_STUB IRsUnknownGesture_Activate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsUnknownGesture_ProcessMouseEvent_Proxy( 
    IRsUnknownGesture * This,
    /* [in] */ struct RtWidgetToolEvent *pEvent);


void __RPC_STUB IRsUnknownGesture_ProcessMouseEvent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsUnknownGesture_TriggerCommands_Proxy( 
    IRsUnknownGesture * This);


void __RPC_STUB IRsUnknownGesture_TriggerCommands_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsUnknownGesture_Deactivate_Proxy( 
    IRsUnknownGesture * This);


void __RPC_STUB IRsUnknownGesture_Deactivate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsUnknownGesture_INTERFACE_DEFINED__ */


#ifndef __IRsEncapsulatedWidgetTool_INTERFACE_DEFINED__
#define __IRsEncapsulatedWidgetTool_INTERFACE_DEFINED__

/* interface IRsEncapsulatedWidgetTool */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsEncapsulatedWidgetTool;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("EF099144-3CEC-4dc7-801D-4C50B047D340")
    IRsEncapsulatedWidgetTool : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE GetWidgetToolEncapsulator( 
            /* [in] */ IRnActiveWidget **ppWidget) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsEncapsulatedWidgetToolVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsEncapsulatedWidgetTool * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsEncapsulatedWidgetTool * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsEncapsulatedWidgetTool * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetWidgetToolEncapsulator )( 
            IRsEncapsulatedWidgetTool * This,
            /* [in] */ IRnActiveWidget **ppWidget);
        
        END_INTERFACE
    } IRsEncapsulatedWidgetToolVtbl;

    interface IRsEncapsulatedWidgetTool
    {
        CONST_VTBL struct IRsEncapsulatedWidgetToolVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsEncapsulatedWidgetTool_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsEncapsulatedWidgetTool_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsEncapsulatedWidgetTool_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsEncapsulatedWidgetTool_GetWidgetToolEncapsulator(This,ppWidget)	\
    (This)->lpVtbl -> GetWidgetToolEncapsulator(This,ppWidget)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRsEncapsulatedWidgetTool_GetWidgetToolEncapsulator_Proxy( 
    IRsEncapsulatedWidgetTool * This,
    /* [in] */ IRnActiveWidget **ppWidget);


void __RPC_STUB IRsEncapsulatedWidgetTool_GetWidgetToolEncapsulator_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsEncapsulatedWidgetTool_INTERFACE_DEFINED__ */


#ifndef __IRnActiveWidgetController_INTERFACE_DEFINED__
#define __IRnActiveWidgetController_INTERFACE_DEFINED__

/* interface IRnActiveWidgetController */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnActiveWidgetController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("57C1C2A8-8AB3-405C-9B72-088382E1CF71")
    IRnActiveWidgetController : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnActiveWidgetControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnActiveWidgetController * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnActiveWidgetController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnActiveWidgetController * This);
        
        END_INTERFACE
    } IRnActiveWidgetControllerVtbl;

    interface IRnActiveWidgetController
    {
        CONST_VTBL struct IRnActiveWidgetControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnActiveWidgetController_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnActiveWidgetController_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnActiveWidgetController_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnActiveWidgetController_INTERFACE_DEFINED__ */


#ifndef __IRsWidgetActivationFilter_INTERFACE_DEFINED__
#define __IRsWidgetActivationFilter_INTERFACE_DEFINED__

/* interface IRsWidgetActivationFilter */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsWidgetActivationFilter;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1EE4C229-7C62-411a-BE92-98EF324586CD")
    IRsWidgetActivationFilter : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IsActive( 
            /* [retval][out] */ RtBool *pbActive) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsWidgetActivationFilterVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsWidgetActivationFilter * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsWidgetActivationFilter * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsWidgetActivationFilter * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IsActive )( 
            IRsWidgetActivationFilter * This,
            /* [retval][out] */ RtBool *pbActive);
        
        END_INTERFACE
    } IRsWidgetActivationFilterVtbl;

    interface IRsWidgetActivationFilter
    {
        CONST_VTBL struct IRsWidgetActivationFilterVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsWidgetActivationFilter_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsWidgetActivationFilter_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsWidgetActivationFilter_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsWidgetActivationFilter_IsActive(This,pbActive)	\
    (This)->lpVtbl -> IsActive(This,pbActive)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetActivationFilter_IsActive_Proxy( 
    IRsWidgetActivationFilter * This,
    /* [retval][out] */ RtBool *pbActive);


void __RPC_STUB IRsWidgetActivationFilter_IsActive_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsWidgetActivationFilter_INTERFACE_DEFINED__ */


#ifndef __IRnBackgroundWidgetController_INTERFACE_DEFINED__
#define __IRnBackgroundWidgetController_INTERFACE_DEFINED__

/* interface IRnBackgroundWidgetController */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnBackgroundWidgetController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("73D6B68C-01BD-4e13-8C83-F3C9217B3845")
    IRnBackgroundWidgetController : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnBackgroundWidgetControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnBackgroundWidgetController * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnBackgroundWidgetController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnBackgroundWidgetController * This);
        
        END_INTERFACE
    } IRnBackgroundWidgetControllerVtbl;

    interface IRnBackgroundWidgetController
    {
        CONST_VTBL struct IRnBackgroundWidgetControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnBackgroundWidgetController_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnBackgroundWidgetController_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnBackgroundWidgetController_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnBackgroundWidgetController_INTERFACE_DEFINED__ */


#ifndef __IRnGesture_INTERFACE_DEFINED__
#define __IRnGesture_INTERFACE_DEFINED__

/* interface IRnGesture */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnGesture;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("77BEB202-1992-49E0-ABD5-7D17EAA267EF")
    IRnGesture : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnGestureVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnGesture * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnGesture * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnGesture * This);
        
        END_INTERFACE
    } IRnGestureVtbl;

    interface IRnGesture
    {
        CONST_VTBL struct IRnGestureVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnGesture_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnGesture_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnGesture_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnGesture_INTERFACE_DEFINED__ */


#ifndef __IRnSceneWidgetController_INTERFACE_DEFINED__
#define __IRnSceneWidgetController_INTERFACE_DEFINED__

/* interface IRnSceneWidgetController */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnSceneWidgetController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("AC6318F2-0F5A-4943-964D-F9C85217692B")
    IRnSceneWidgetController : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnSceneWidgetControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnSceneWidgetController * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnSceneWidgetController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnSceneWidgetController * This);
        
        END_INTERFACE
    } IRnSceneWidgetControllerVtbl;

    interface IRnSceneWidgetController
    {
        CONST_VTBL struct IRnSceneWidgetControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnSceneWidgetController_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnSceneWidgetController_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnSceneWidgetController_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnSceneWidgetController_INTERFACE_DEFINED__ */


#ifndef __IRnStaticWidgetController_INTERFACE_DEFINED__
#define __IRnStaticWidgetController_INTERFACE_DEFINED__

/* interface IRnStaticWidgetController */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnStaticWidgetController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0563842E-15E0-4AC8-A8A1-3CD91A84266F")
    IRnStaticWidgetController : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnStaticWidgetControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnStaticWidgetController * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnStaticWidgetController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnStaticWidgetController * This);
        
        END_INTERFACE
    } IRnStaticWidgetControllerVtbl;

    interface IRnStaticWidgetController
    {
        CONST_VTBL struct IRnStaticWidgetControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnStaticWidgetController_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnStaticWidgetController_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnStaticWidgetController_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnStaticWidgetController_INTERFACE_DEFINED__ */


#ifndef __IRdWidgetComponent_INTERFACE_DEFINED__
#define __IRdWidgetComponent_INTERFACE_DEFINED__

/* interface IRdWidgetComponent */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRdWidgetComponent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1170958D-B55C-465F-97C2-9CAAF29B9BEA")
    IRdWidgetComponent : public IRsObject
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRdWidgetComponentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdWidgetComponent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdWidgetComponent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdWidgetComponent * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRdWidgetComponent * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRdWidgetComponent * This,
            /* [retval][out] */ BSTR *pVal);
        
        END_INTERFACE
    } IRdWidgetComponentVtbl;

    interface IRdWidgetComponent
    {
        CONST_VTBL struct IRdWidgetComponentVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdWidgetComponent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdWidgetComponent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdWidgetComponent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdWidgetComponent_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRdWidgetComponent_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRdWidgetComponent_INTERFACE_DEFINED__ */


#ifndef __IRdWidgetActivationRequest_INTERFACE_DEFINED__
#define __IRdWidgetActivationRequest_INTERFACE_DEFINED__

/* interface IRdWidgetActivationRequest */
/* [unique][helpstring][dual][uuid][object] */ 


EXTERN_C const IID IID_IRdWidgetActivationRequest;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9B70ECFE-9912-4BA5-AF69-54F9FECE05B7")
    IRdWidgetActivationRequest : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetTargetNodesCount( 
            /* [retval][out] */ RtUlong *pCount) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetTargetNodeName( 
            /* [in] */ RtUlong pIndex,
            /* [retval][out] */ BSTR *pControlledNodeName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddTargetNode( 
            /* [in] */ BSTR bControlledNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveTargetNode( 
            /* [in] */ BSTR bstrControlledNode) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdWidgetActivationRequestVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdWidgetActivationRequest * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdWidgetActivationRequest * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdWidgetActivationRequest * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRdWidgetActivationRequest * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRdWidgetActivationRequest * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRdWidgetActivationRequest * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRdWidgetActivationRequest * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetTargetNodesCount )( 
            IRdWidgetActivationRequest * This,
            /* [retval][out] */ RtUlong *pCount);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetTargetNodeName )( 
            IRdWidgetActivationRequest * This,
            /* [in] */ RtUlong pIndex,
            /* [retval][out] */ BSTR *pControlledNodeName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddTargetNode )( 
            IRdWidgetActivationRequest * This,
            /* [in] */ BSTR bControlledNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveTargetNode )( 
            IRdWidgetActivationRequest * This,
            /* [in] */ BSTR bstrControlledNode);
        
        END_INTERFACE
    } IRdWidgetActivationRequestVtbl;

    interface IRdWidgetActivationRequest
    {
        CONST_VTBL struct IRdWidgetActivationRequestVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdWidgetActivationRequest_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdWidgetActivationRequest_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdWidgetActivationRequest_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdWidgetActivationRequest_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRdWidgetActivationRequest_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRdWidgetActivationRequest_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRdWidgetActivationRequest_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRdWidgetActivationRequest_GetTargetNodesCount(This,pCount)	\
    (This)->lpVtbl -> GetTargetNodesCount(This,pCount)

#define IRdWidgetActivationRequest_GetTargetNodeName(This,pIndex,pControlledNodeName)	\
    (This)->lpVtbl -> GetTargetNodeName(This,pIndex,pControlledNodeName)

#define IRdWidgetActivationRequest_AddTargetNode(This,bControlledNode)	\
    (This)->lpVtbl -> AddTargetNode(This,bControlledNode)

#define IRdWidgetActivationRequest_RemoveTargetNode(This,bstrControlledNode)	\
    (This)->lpVtbl -> RemoveTargetNode(This,bstrControlledNode)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetActivationRequest_GetTargetNodesCount_Proxy( 
    IRdWidgetActivationRequest * This,
    /* [retval][out] */ RtUlong *pCount);


void __RPC_STUB IRdWidgetActivationRequest_GetTargetNodesCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetActivationRequest_GetTargetNodeName_Proxy( 
    IRdWidgetActivationRequest * This,
    /* [in] */ RtUlong pIndex,
    /* [retval][out] */ BSTR *pControlledNodeName);


void __RPC_STUB IRdWidgetActivationRequest_GetTargetNodeName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetActivationRequest_AddTargetNode_Proxy( 
    IRdWidgetActivationRequest * This,
    /* [in] */ BSTR bControlledNode);


void __RPC_STUB IRdWidgetActivationRequest_AddTargetNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetActivationRequest_RemoveTargetNode_Proxy( 
    IRdWidgetActivationRequest * This,
    /* [in] */ BSTR bstrControlledNode);


void __RPC_STUB IRdWidgetActivationRequest_RemoveTargetNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdWidgetActivationRequest_INTERFACE_DEFINED__ */


#ifndef __IRdWidgetMatchParameters_INTERFACE_DEFINED__
#define __IRdWidgetMatchParameters_INTERFACE_DEFINED__

/* interface IRdWidgetMatchParameters */
/* [unique][helpstring][dual][uuid][object] */ 


EXTERN_C const IID IID_IRdWidgetMatchParameters;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2785B634-6D85-41B0-9DA8-DD12BDA35377")
    IRdWidgetMatchParameters : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMatchWeight( 
            /* [in] */ RtFloat fProb) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetInitialAspect( 
            /* [in] */ BSTR bAspect) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetParametersName( 
            /* [in] */ BSTR bParameters) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetMatchWeight( 
            /* [retval][out] */ RtFloat *pfProb) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetInitialAspect( 
            /* [retval][out] */ BSTR *pbAspect) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetParametersName( 
            /* [retval][out] */ BSTR *pbParameters) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdWidgetMatchParametersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdWidgetMatchParameters * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdWidgetMatchParameters * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdWidgetMatchParameters * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRdWidgetMatchParameters * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRdWidgetMatchParameters * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRdWidgetMatchParameters * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRdWidgetMatchParameters * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetMatchWeight )( 
            IRdWidgetMatchParameters * This,
            /* [in] */ RtFloat fProb);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetInitialAspect )( 
            IRdWidgetMatchParameters * This,
            /* [in] */ BSTR bAspect);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetParametersName )( 
            IRdWidgetMatchParameters * This,
            /* [in] */ BSTR bParameters);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetMatchWeight )( 
            IRdWidgetMatchParameters * This,
            /* [retval][out] */ RtFloat *pfProb);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetInitialAspect )( 
            IRdWidgetMatchParameters * This,
            /* [retval][out] */ BSTR *pbAspect);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetParametersName )( 
            IRdWidgetMatchParameters * This,
            /* [retval][out] */ BSTR *pbParameters);
        
        END_INTERFACE
    } IRdWidgetMatchParametersVtbl;

    interface IRdWidgetMatchParameters
    {
        CONST_VTBL struct IRdWidgetMatchParametersVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdWidgetMatchParameters_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdWidgetMatchParameters_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdWidgetMatchParameters_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdWidgetMatchParameters_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRdWidgetMatchParameters_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRdWidgetMatchParameters_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRdWidgetMatchParameters_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRdWidgetMatchParameters_SetMatchWeight(This,fProb)	\
    (This)->lpVtbl -> SetMatchWeight(This,fProb)

#define IRdWidgetMatchParameters_SetInitialAspect(This,bAspect)	\
    (This)->lpVtbl -> SetInitialAspect(This,bAspect)

#define IRdWidgetMatchParameters_SetParametersName(This,bParameters)	\
    (This)->lpVtbl -> SetParametersName(This,bParameters)

#define IRdWidgetMatchParameters_GetMatchWeight(This,pfProb)	\
    (This)->lpVtbl -> GetMatchWeight(This,pfProb)

#define IRdWidgetMatchParameters_GetInitialAspect(This,pbAspect)	\
    (This)->lpVtbl -> GetInitialAspect(This,pbAspect)

#define IRdWidgetMatchParameters_GetParametersName(This,pbParameters)	\
    (This)->lpVtbl -> GetParametersName(This,pbParameters)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetMatchParameters_SetMatchWeight_Proxy( 
    IRdWidgetMatchParameters * This,
    /* [in] */ RtFloat fProb);


void __RPC_STUB IRdWidgetMatchParameters_SetMatchWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetMatchParameters_SetInitialAspect_Proxy( 
    IRdWidgetMatchParameters * This,
    /* [in] */ BSTR bAspect);


void __RPC_STUB IRdWidgetMatchParameters_SetInitialAspect_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetMatchParameters_SetParametersName_Proxy( 
    IRdWidgetMatchParameters * This,
    /* [in] */ BSTR bParameters);


void __RPC_STUB IRdWidgetMatchParameters_SetParametersName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetMatchParameters_GetMatchWeight_Proxy( 
    IRdWidgetMatchParameters * This,
    /* [retval][out] */ RtFloat *pfProb);


void __RPC_STUB IRdWidgetMatchParameters_GetMatchWeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetMatchParameters_GetInitialAspect_Proxy( 
    IRdWidgetMatchParameters * This,
    /* [retval][out] */ BSTR *pbAspect);


void __RPC_STUB IRdWidgetMatchParameters_GetInitialAspect_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdWidgetMatchParameters_GetParametersName_Proxy( 
    IRdWidgetMatchParameters * This,
    /* [retval][out] */ BSTR *pbParameters);


void __RPC_STUB IRdWidgetMatchParameters_GetParametersName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdWidgetMatchParameters_INTERFACE_DEFINED__ */


#ifndef __IRcReactivateActiveWidgets_INTERFACE_DEFINED__
#define __IRcReactivateActiveWidgets_INTERFACE_DEFINED__

/* interface IRcReactivateActiveWidgets */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcReactivateActiveWidgets;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("827D4D26-0FD0-4301-B9C3-8EB36F9ABD69")
    IRcReactivateActiveWidgets : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE SetWidgetSubsystem( 
            /* [in] */ IRnWidgetSubsystem *spBase) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetWidgetToUpdate( 
            /* [in] */ BSTR bWidgetPrototype) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRcReactivateActiveWidgetsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcReactivateActiveWidgets * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcReactivateActiveWidgets * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcReactivateActiveWidgets * This);
        
        HRESULT ( STDMETHODCALLTYPE *SetWidgetSubsystem )( 
            IRcReactivateActiveWidgets * This,
            /* [in] */ IRnWidgetSubsystem *spBase);
        
        HRESULT ( STDMETHODCALLTYPE *SetWidgetToUpdate )( 
            IRcReactivateActiveWidgets * This,
            /* [in] */ BSTR bWidgetPrototype);
        
        END_INTERFACE
    } IRcReactivateActiveWidgetsVtbl;

    interface IRcReactivateActiveWidgets
    {
        CONST_VTBL struct IRcReactivateActiveWidgetsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcReactivateActiveWidgets_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcReactivateActiveWidgets_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcReactivateActiveWidgets_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRcReactivateActiveWidgets_SetWidgetSubsystem(This,spBase)	\
    (This)->lpVtbl -> SetWidgetSubsystem(This,spBase)

#define IRcReactivateActiveWidgets_SetWidgetToUpdate(This,bWidgetPrototype)	\
    (This)->lpVtbl -> SetWidgetToUpdate(This,bWidgetPrototype)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRcReactivateActiveWidgets_SetWidgetSubsystem_Proxy( 
    IRcReactivateActiveWidgets * This,
    /* [in] */ IRnWidgetSubsystem *spBase);


void __RPC_STUB IRcReactivateActiveWidgets_SetWidgetSubsystem_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRcReactivateActiveWidgets_SetWidgetToUpdate_Proxy( 
    IRcReactivateActiveWidgets * This,
    /* [in] */ BSTR bWidgetPrototype);


void __RPC_STUB IRcReactivateActiveWidgets_SetWidgetToUpdate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRcReactivateActiveWidgets_INTERFACE_DEFINED__ */


#ifndef __IRcInternalSelectionSync_INTERFACE_DEFINED__
#define __IRcInternalSelectionSync_INTERFACE_DEFINED__

/* interface IRcInternalSelectionSync */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcInternalSelectionSync;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0B76306D-A3EF-4E64-9472-F689F1A52F29")
    IRcInternalSelectionSync : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE AddOldSelectedNode( 
            /* [in] */ BSTR szNode) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AddNewSelectedNode( 
            /* [in] */ BSTR szNode) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRcInternalSelectionSyncVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcInternalSelectionSync * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcInternalSelectionSync * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcInternalSelectionSync * This);
        
        HRESULT ( STDMETHODCALLTYPE *AddOldSelectedNode )( 
            IRcInternalSelectionSync * This,
            /* [in] */ BSTR szNode);
        
        HRESULT ( STDMETHODCALLTYPE *AddNewSelectedNode )( 
            IRcInternalSelectionSync * This,
            /* [in] */ BSTR szNode);
        
        END_INTERFACE
    } IRcInternalSelectionSyncVtbl;

    interface IRcInternalSelectionSync
    {
        CONST_VTBL struct IRcInternalSelectionSyncVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcInternalSelectionSync_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcInternalSelectionSync_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcInternalSelectionSync_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRcInternalSelectionSync_AddOldSelectedNode(This,szNode)	\
    (This)->lpVtbl -> AddOldSelectedNode(This,szNode)

#define IRcInternalSelectionSync_AddNewSelectedNode(This,szNode)	\
    (This)->lpVtbl -> AddNewSelectedNode(This,szNode)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRcInternalSelectionSync_AddOldSelectedNode_Proxy( 
    IRcInternalSelectionSync * This,
    /* [in] */ BSTR szNode);


void __RPC_STUB IRcInternalSelectionSync_AddOldSelectedNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRcInternalSelectionSync_AddNewSelectedNode_Proxy( 
    IRcInternalSelectionSync * This,
    /* [in] */ BSTR szNode);


void __RPC_STUB IRcInternalSelectionSync_AddNewSelectedNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRcInternalSelectionSync_INTERFACE_DEFINED__ */


#ifndef __IRsWidgetStateSysMsg_INTERFACE_DEFINED__
#define __IRsWidgetStateSysMsg_INTERFACE_DEFINED__

/* interface IRsWidgetStateSysMsg */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsWidgetStateSysMsg;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A5ABCE90-90DB-4EC4-9E2F-B29073CC100B")
    IRsWidgetStateSysMsg : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE GetPrototypeName( 
            /* [out] */ BSTR *pszName) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetActiveWidget( 
            /* [out] */ IRnActiveWidget **pWidget) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetWidgetActive( 
            /* [out] */ RtBool *pbActive) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetPrototypeName( 
            /* [in] */ BSTR szName) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetActiveWidget( 
            /* [in] */ IRnActiveWidget *pWidget) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetWidgetActive( 
            /* [in] */ RtBool bActive) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsWidgetStateSysMsgVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsWidgetStateSysMsg * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsWidgetStateSysMsg * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsWidgetStateSysMsg * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetPrototypeName )( 
            IRsWidgetStateSysMsg * This,
            /* [out] */ BSTR *pszName);
        
        HRESULT ( STDMETHODCALLTYPE *GetActiveWidget )( 
            IRsWidgetStateSysMsg * This,
            /* [out] */ IRnActiveWidget **pWidget);
        
        HRESULT ( STDMETHODCALLTYPE *GetWidgetActive )( 
            IRsWidgetStateSysMsg * This,
            /* [out] */ RtBool *pbActive);
        
        HRESULT ( STDMETHODCALLTYPE *SetPrototypeName )( 
            IRsWidgetStateSysMsg * This,
            /* [in] */ BSTR szName);
        
        HRESULT ( STDMETHODCALLTYPE *SetActiveWidget )( 
            IRsWidgetStateSysMsg * This,
            /* [in] */ IRnActiveWidget *pWidget);
        
        HRESULT ( STDMETHODCALLTYPE *SetWidgetActive )( 
            IRsWidgetStateSysMsg * This,
            /* [in] */ RtBool bActive);
        
        END_INTERFACE
    } IRsWidgetStateSysMsgVtbl;

    interface IRsWidgetStateSysMsg
    {
        CONST_VTBL struct IRsWidgetStateSysMsgVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsWidgetStateSysMsg_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsWidgetStateSysMsg_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsWidgetStateSysMsg_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsWidgetStateSysMsg_GetPrototypeName(This,pszName)	\
    (This)->lpVtbl -> GetPrototypeName(This,pszName)

#define IRsWidgetStateSysMsg_GetActiveWidget(This,pWidget)	\
    (This)->lpVtbl -> GetActiveWidget(This,pWidget)

#define IRsWidgetStateSysMsg_GetWidgetActive(This,pbActive)	\
    (This)->lpVtbl -> GetWidgetActive(This,pbActive)

#define IRsWidgetStateSysMsg_SetPrototypeName(This,szName)	\
    (This)->lpVtbl -> SetPrototypeName(This,szName)

#define IRsWidgetStateSysMsg_SetActiveWidget(This,pWidget)	\
    (This)->lpVtbl -> SetActiveWidget(This,pWidget)

#define IRsWidgetStateSysMsg_SetWidgetActive(This,bActive)	\
    (This)->lpVtbl -> SetWidgetActive(This,bActive)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRsWidgetStateSysMsg_GetPrototypeName_Proxy( 
    IRsWidgetStateSysMsg * This,
    /* [out] */ BSTR *pszName);


void __RPC_STUB IRsWidgetStateSysMsg_GetPrototypeName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetStateSysMsg_GetActiveWidget_Proxy( 
    IRsWidgetStateSysMsg * This,
    /* [out] */ IRnActiveWidget **pWidget);


void __RPC_STUB IRsWidgetStateSysMsg_GetActiveWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetStateSysMsg_GetWidgetActive_Proxy( 
    IRsWidgetStateSysMsg * This,
    /* [out] */ RtBool *pbActive);


void __RPC_STUB IRsWidgetStateSysMsg_GetWidgetActive_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetStateSysMsg_SetPrototypeName_Proxy( 
    IRsWidgetStateSysMsg * This,
    /* [in] */ BSTR szName);


void __RPC_STUB IRsWidgetStateSysMsg_SetPrototypeName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetStateSysMsg_SetActiveWidget_Proxy( 
    IRsWidgetStateSysMsg * This,
    /* [in] */ IRnActiveWidget *pWidget);


void __RPC_STUB IRsWidgetStateSysMsg_SetActiveWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRsWidgetStateSysMsg_SetWidgetActive_Proxy( 
    IRsWidgetStateSysMsg * This,
    /* [in] */ RtBool bActive);


void __RPC_STUB IRsWidgetStateSysMsg_SetWidgetActive_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsWidgetStateSysMsg_INTERFACE_DEFINED__ */


#ifndef __IRsWidgetsCmdFactory_INTERFACE_DEFINED__
#define __IRsWidgetsCmdFactory_INTERFACE_DEFINED__

/* interface IRsWidgetsCmdFactory */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsWidgetsCmdFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4998AFAB-53F4-4142-9273-CB1DF1766F95")
    IRsWidgetsCmdFactory : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRsWidgetsCmdFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsWidgetsCmdFactory * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsWidgetsCmdFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsWidgetsCmdFactory * This);
        
        END_INTERFACE
    } IRsWidgetsCmdFactoryVtbl;

    interface IRsWidgetsCmdFactory
    {
        CONST_VTBL struct IRsWidgetsCmdFactoryVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsWidgetsCmdFactory_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsWidgetsCmdFactory_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsWidgetsCmdFactory_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRsWidgetsCmdFactory_INTERFACE_DEFINED__ */


#ifndef __IRsWidgetsNodeFactory_INTERFACE_DEFINED__
#define __IRsWidgetsNodeFactory_INTERFACE_DEFINED__

/* interface IRsWidgetsNodeFactory */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsWidgetsNodeFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FCBE2B8A-68B5-410f-9A03-E076101D5BA2")
    IRsWidgetsNodeFactory : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRsWidgetsNodeFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsWidgetsNodeFactory * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsWidgetsNodeFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsWidgetsNodeFactory * This);
        
        END_INTERFACE
    } IRsWidgetsNodeFactoryVtbl;

    interface IRsWidgetsNodeFactory
    {
        CONST_VTBL struct IRsWidgetsNodeFactoryVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsWidgetsNodeFactory_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsWidgetsNodeFactory_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsWidgetsNodeFactory_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRsWidgetsNodeFactory_INTERFACE_DEFINED__ */


#ifndef __IRsWidgetDetector_INTERFACE_DEFINED__
#define __IRsWidgetDetector_INTERFACE_DEFINED__

/* interface IRsWidgetDetector */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsWidgetDetector;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1D9AE001-CD7E-4ce8-8D9C-9638035A3584")
    IRsWidgetDetector : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRsWidgetDetectorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsWidgetDetector * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsWidgetDetector * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsWidgetDetector * This);
        
        END_INTERFACE
    } IRsWidgetDetectorVtbl;

    interface IRsWidgetDetector
    {
        CONST_VTBL struct IRsWidgetDetectorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsWidgetDetector_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsWidgetDetector_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsWidgetDetector_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRsWidgetDetector_INTERFACE_DEFINED__ */


/* interface __MIDL_itf__Widgets_2260 */
/* [local] */ 

struct RtScreenDockingState
    {
    RtFloat m_position_x;
    RtFloat m_position_y;
    RtFloat m_offset_x;
    RtFloat m_offset_y;
    RtFloat m_distance;
    GUID m_winid;
    } ;


extern RPC_IF_HANDLE __MIDL_itf__Widgets_2260_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf__Widgets_2260_v0_0_s_ifspec;

#ifndef __IRnScreenDocking_INTERFACE_DEFINED__
#define __IRnScreenDocking_INTERFACE_DEFINED__

/* interface IRnScreenDocking */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnScreenDocking;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("AE184736-30D1-4590-B0EC-315A4B116D3C")
    IRnScreenDocking : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDockingState( 
            /* [in] */ GUID guid,
            /* [out] */ struct RtScreenDockingState *pScreenDockingState) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDockingState( 
            /* [in] */ struct RtScreenDockingState *pScreenDockingState) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRnScreenDockingVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnScreenDocking * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnScreenDocking * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnScreenDocking * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDockingState )( 
            IRnScreenDocking * This,
            /* [in] */ GUID guid,
            /* [out] */ struct RtScreenDockingState *pScreenDockingState);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDockingState )( 
            IRnScreenDocking * This,
            /* [in] */ struct RtScreenDockingState *pScreenDockingState);
        
        END_INTERFACE
    } IRnScreenDockingVtbl;

    interface IRnScreenDocking
    {
        CONST_VTBL struct IRnScreenDockingVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnScreenDocking_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnScreenDocking_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnScreenDocking_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRnScreenDocking_GetDockingState(This,guid,pScreenDockingState)	\
    (This)->lpVtbl -> GetDockingState(This,guid,pScreenDockingState)

#define IRnScreenDocking_SetDockingState(This,pScreenDockingState)	\
    (This)->lpVtbl -> SetDockingState(This,pScreenDockingState)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnScreenDocking_GetDockingState_Proxy( 
    IRnScreenDocking * This,
    /* [in] */ GUID guid,
    /* [out] */ struct RtScreenDockingState *pScreenDockingState);


void __RPC_STUB IRnScreenDocking_GetDockingState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRnScreenDocking_SetDockingState_Proxy( 
    IRnScreenDocking * This,
    /* [in] */ struct RtScreenDockingState *pScreenDockingState);


void __RPC_STUB IRnScreenDocking_SetDockingState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRnScreenDocking_INTERFACE_DEFINED__ */


#ifndef __IRnAlt_INTERFACE_DEFINED__
#define __IRnAlt_INTERFACE_DEFINED__

/* interface IRnAlt */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnAlt;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4BC7CDF0-F102-4B83-ABB8-82AB8EA0212B")
    IRnAlt : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnAltVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnAlt * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnAlt * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnAlt * This);
        
        END_INTERFACE
    } IRnAltVtbl;

    interface IRnAlt
    {
        CONST_VTBL struct IRnAltVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnAlt_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnAlt_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnAlt_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnAlt_INTERFACE_DEFINED__ */


#ifndef __IRnCtrl_INTERFACE_DEFINED__
#define __IRnCtrl_INTERFACE_DEFINED__

/* interface IRnCtrl */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnCtrl;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("51DBF493-883A-4187-818C-35ADF34ACB36")
    IRnCtrl : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnCtrlVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnCtrl * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnCtrl * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnCtrl * This);
        
        END_INTERFACE
    } IRnCtrlVtbl;

    interface IRnCtrl
    {
        CONST_VTBL struct IRnCtrlVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnCtrl_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnCtrl_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnCtrl_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnCtrl_INTERFACE_DEFINED__ */


#ifndef __IRnKey_INTERFACE_DEFINED__
#define __IRnKey_INTERFACE_DEFINED__

/* interface IRnKey */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnKey;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3E5A3BFC-A014-4bb3-9581-683F0539FE00")
    IRnKey : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnKeyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnKey * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnKey * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnKey * This);
        
        END_INTERFACE
    } IRnKeyVtbl;

    interface IRnKey
    {
        CONST_VTBL struct IRnKeyVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnKey_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnKey_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnKey_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnKey_INTERFACE_DEFINED__ */


#ifndef __IRnOneFromFourSelector_INTERFACE_DEFINED__
#define __IRnOneFromFourSelector_INTERFACE_DEFINED__

/* interface IRnOneFromFourSelector */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnOneFromFourSelector;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("87DB0986-19F4-44F9-A21C-6A318AF69411")
    IRnOneFromFourSelector : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnOneFromFourSelectorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnOneFromFourSelector * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnOneFromFourSelector * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnOneFromFourSelector * This);
        
        END_INTERFACE
    } IRnOneFromFourSelectorVtbl;

    interface IRnOneFromFourSelector
    {
        CONST_VTBL struct IRnOneFromFourSelectorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnOneFromFourSelector_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnOneFromFourSelector_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnOneFromFourSelector_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnOneFromFourSelector_INTERFACE_DEFINED__ */


#ifndef __IRnOneFromThreeSelector_INTERFACE_DEFINED__
#define __IRnOneFromThreeSelector_INTERFACE_DEFINED__

/* interface IRnOneFromThreeSelector */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnOneFromThreeSelector;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0BD9C1C4-8A2F-4B8D-9DD9-C92E1D63273B")
    IRnOneFromThreeSelector : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnOneFromThreeSelectorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnOneFromThreeSelector * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnOneFromThreeSelector * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnOneFromThreeSelector * This);
        
        END_INTERFACE
    } IRnOneFromThreeSelectorVtbl;

    interface IRnOneFromThreeSelector
    {
        CONST_VTBL struct IRnOneFromThreeSelectorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnOneFromThreeSelector_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnOneFromThreeSelector_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnOneFromThreeSelector_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnOneFromThreeSelector_INTERFACE_DEFINED__ */


#ifndef __IRnShift_INTERFACE_DEFINED__
#define __IRnShift_INTERFACE_DEFINED__

/* interface IRnShift */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnShift;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("80FB2BBC-FC19-4202-85D4-FCCC0267FCAB")
    IRnShift : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnShiftVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnShift * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnShift * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnShift * This);
        
        END_INTERFACE
    } IRnShiftVtbl;

    interface IRnShift
    {
        CONST_VTBL struct IRnShiftVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnShift_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnShift_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnShift_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnShift_INTERFACE_DEFINED__ */


#ifndef __IRnWheel_INTERFACE_DEFINED__
#define __IRnWheel_INTERFACE_DEFINED__

/* interface IRnWheel */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnWheel;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5F9A2E78-786D-42ed-B99F-79B82824AE37")
    IRnWheel : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnWheelVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnWheel * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnWheel * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnWheel * This);
        
        END_INTERFACE
    } IRnWheelVtbl;

    interface IRnWheel
    {
        CONST_VTBL struct IRnWheelVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnWheel_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnWheel_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnWheel_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnWheel_INTERFACE_DEFINED__ */


#ifndef __IRnLClick_INTERFACE_DEFINED__
#define __IRnLClick_INTERFACE_DEFINED__

/* interface IRnLClick */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnLClick;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6D1E9B82-30EE-4dcf-BA75-7F725EC2424A")
    IRnLClick : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnLClickVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnLClick * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnLClick * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnLClick * This);
        
        END_INTERFACE
    } IRnLClickVtbl;

    interface IRnLClick
    {
        CONST_VTBL struct IRnLClickVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnLClick_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnLClick_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnLClick_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnLClick_INTERFACE_DEFINED__ */


#ifndef __IRnLDblClick_INTERFACE_DEFINED__
#define __IRnLDblClick_INTERFACE_DEFINED__

/* interface IRnLDblClick */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnLDblClick;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5684A860-4D04-47d7-BC66-BFDEAEE7473F")
    IRnLDblClick : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnLDblClickVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnLDblClick * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnLDblClick * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnLDblClick * This);
        
        END_INTERFACE
    } IRnLDblClickVtbl;

    interface IRnLDblClick
    {
        CONST_VTBL struct IRnLDblClickVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnLDblClick_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnLDblClick_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnLDblClick_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnLDblClick_INTERFACE_DEFINED__ */


#ifndef __IRnLDrag_INTERFACE_DEFINED__
#define __IRnLDrag_INTERFACE_DEFINED__

/* interface IRnLDrag */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnLDrag;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("EBF7E480-A944-4FD2-9AB6-B399C945B600")
    IRnLDrag : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnLDragVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnLDrag * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnLDrag * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnLDrag * This);
        
        END_INTERFACE
    } IRnLDragVtbl;

    interface IRnLDrag
    {
        CONST_VTBL struct IRnLDragVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnLDrag_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnLDrag_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnLDrag_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnLDrag_INTERFACE_DEFINED__ */


#ifndef __IRnLState_INTERFACE_DEFINED__
#define __IRnLState_INTERFACE_DEFINED__

/* interface IRnLState */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnLState;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7C5EAAC6-BA6D-41a0-969E-FF8865A2DFCD")
    IRnLState : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnLStateVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnLState * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnLState * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnLState * This);
        
        END_INTERFACE
    } IRnLStateVtbl;

    interface IRnLState
    {
        CONST_VTBL struct IRnLStateVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnLState_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnLState_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnLState_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnLState_INTERFACE_DEFINED__ */


#ifndef __IRnRClick_INTERFACE_DEFINED__
#define __IRnRClick_INTERFACE_DEFINED__

/* interface IRnRClick */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnRClick;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DAAAAAF3-D232-4ff3-AD77-6A250F7BB467")
    IRnRClick : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnRClickVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnRClick * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnRClick * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnRClick * This);
        
        END_INTERFACE
    } IRnRClickVtbl;

    interface IRnRClick
    {
        CONST_VTBL struct IRnRClickVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnRClick_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnRClick_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnRClick_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnRClick_INTERFACE_DEFINED__ */


#ifndef __IRnRDblClick_INTERFACE_DEFINED__
#define __IRnRDblClick_INTERFACE_DEFINED__

/* interface IRnRDblClick */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnRDblClick;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6DB1CBBC-5615-419f-8611-1F9DA0B670C1")
    IRnRDblClick : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnRDblClickVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnRDblClick * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnRDblClick * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnRDblClick * This);
        
        END_INTERFACE
    } IRnRDblClickVtbl;

    interface IRnRDblClick
    {
        CONST_VTBL struct IRnRDblClickVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnRDblClick_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnRDblClick_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnRDblClick_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnRDblClick_INTERFACE_DEFINED__ */


#ifndef __IRnRDrag_INTERFACE_DEFINED__
#define __IRnRDrag_INTERFACE_DEFINED__

/* interface IRnRDrag */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnRDrag;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1CC719A5-8A98-4B1F-A9A2-F9676BEFFDD0")
    IRnRDrag : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnRDragVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnRDrag * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnRDrag * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnRDrag * This);
        
        END_INTERFACE
    } IRnRDragVtbl;

    interface IRnRDrag
    {
        CONST_VTBL struct IRnRDragVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnRDrag_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnRDrag_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnRDrag_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnRDrag_INTERFACE_DEFINED__ */


#ifndef __IRnRState_INTERFACE_DEFINED__
#define __IRnRState_INTERFACE_DEFINED__

/* interface IRnRState */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnRState;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D95A5DE6-4F57-4d7f-8BF0-D45CE956FA04")
    IRnRState : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnRStateVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnRState * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnRState * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnRState * This);
        
        END_INTERFACE
    } IRnRStateVtbl;

    interface IRnRState
    {
        CONST_VTBL struct IRnRStateVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnRState_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnRState_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnRState_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnRState_INTERFACE_DEFINED__ */


#ifndef __IRnMClick_INTERFACE_DEFINED__
#define __IRnMClick_INTERFACE_DEFINED__

/* interface IRnMClick */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnMClick;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A0539178-3E5A-474a-9A30-2033EEFBEB59")
    IRnMClick : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnMClickVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnMClick * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnMClick * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnMClick * This);
        
        END_INTERFACE
    } IRnMClickVtbl;

    interface IRnMClick
    {
        CONST_VTBL struct IRnMClickVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnMClick_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnMClick_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnMClick_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnMClick_INTERFACE_DEFINED__ */


#ifndef __IRnMDblClick_INTERFACE_DEFINED__
#define __IRnMDblClick_INTERFACE_DEFINED__

/* interface IRnMDblClick */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnMDblClick;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3D580B86-EFA7-4952-BF7A-9F7D62F2680B")
    IRnMDblClick : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnMDblClickVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnMDblClick * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnMDblClick * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnMDblClick * This);
        
        END_INTERFACE
    } IRnMDblClickVtbl;

    interface IRnMDblClick
    {
        CONST_VTBL struct IRnMDblClickVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnMDblClick_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnMDblClick_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnMDblClick_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnMDblClick_INTERFACE_DEFINED__ */


#ifndef __IRnMDrag_INTERFACE_DEFINED__
#define __IRnMDrag_INTERFACE_DEFINED__

/* interface IRnMDrag */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnMDrag;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B41FA33D-8DA7-4968-BA21-9F3757C195AB")
    IRnMDrag : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnMDragVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnMDrag * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnMDrag * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnMDrag * This);
        
        END_INTERFACE
    } IRnMDragVtbl;

    interface IRnMDrag
    {
        CONST_VTBL struct IRnMDragVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnMDrag_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnMDrag_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnMDrag_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnMDrag_INTERFACE_DEFINED__ */


#ifndef __IRnMState_INTERFACE_DEFINED__
#define __IRnMState_INTERFACE_DEFINED__

/* interface IRnMState */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnMState;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E86E3554-E161-4446-9D1E-C17494E4D158")
    IRnMState : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnMStateVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnMState * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnMState * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnMState * This);
        
        END_INTERFACE
    } IRnMStateVtbl;

    interface IRnMState
    {
        CONST_VTBL struct IRnMStateVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnMState_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnMState_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnMState_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnMState_INTERFACE_DEFINED__ */


#ifndef __IRcActivateUserWidget_INTERFACE_DEFINED__
#define __IRcActivateUserWidget_INTERFACE_DEFINED__

/* interface IRcActivateUserWidget */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcActivateUserWidget;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("133596C7-F1AA-4326-8A29-69052458F3FB")
    IRcActivateUserWidget : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcActivateUserWidgetVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcActivateUserWidget * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcActivateUserWidget * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcActivateUserWidget * This);
        
        END_INTERFACE
    } IRcActivateUserWidgetVtbl;

    interface IRcActivateUserWidget
    {
        CONST_VTBL struct IRcActivateUserWidgetVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcActivateUserWidget_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcActivateUserWidget_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcActivateUserWidget_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcActivateUserWidget_INTERFACE_DEFINED__ */


#ifndef __IRcChangeAspect_INTERFACE_DEFINED__
#define __IRcChangeAspect_INTERFACE_DEFINED__

/* interface IRcChangeAspect */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcChangeAspect;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6474AF6C-10DE-4FDF-98E2-83CFE13E8E9E")
    IRcChangeAspect : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcChangeAspectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcChangeAspect * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcChangeAspect * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcChangeAspect * This);
        
        END_INTERFACE
    } IRcChangeAspectVtbl;

    interface IRcChangeAspect
    {
        CONST_VTBL struct IRcChangeAspectVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcChangeAspect_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcChangeAspect_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcChangeAspect_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcChangeAspect_INTERFACE_DEFINED__ */


#ifndef __IRcChangeAspectPopup_INTERFACE_DEFINED__
#define __IRcChangeAspectPopup_INTERFACE_DEFINED__

/* interface IRcChangeAspectPopup */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcChangeAspectPopup;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7A464B6B-8366-43BA-A0EF-B09787D32968")
    IRcChangeAspectPopup : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcChangeAspectPopupVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcChangeAspectPopup * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcChangeAspectPopup * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcChangeAspectPopup * This);
        
        END_INTERFACE
    } IRcChangeAspectPopupVtbl;

    interface IRcChangeAspectPopup
    {
        CONST_VTBL struct IRcChangeAspectPopupVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcChangeAspectPopup_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcChangeAspectPopup_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcChangeAspectPopup_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcChangeAspectPopup_INTERFACE_DEFINED__ */


#ifndef __IRcCloseManagedWidgets_INTERFACE_DEFINED__
#define __IRcCloseManagedWidgets_INTERFACE_DEFINED__

/* interface IRcCloseManagedWidgets */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcCloseManagedWidgets;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("053A754A-7D99-4753-9DBB-C6FDB342C946")
    IRcCloseManagedWidgets : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcCloseManagedWidgetsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcCloseManagedWidgets * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcCloseManagedWidgets * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcCloseManagedWidgets * This);
        
        END_INTERFACE
    } IRcCloseManagedWidgetsVtbl;

    interface IRcCloseManagedWidgets
    {
        CONST_VTBL struct IRcCloseManagedWidgetsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcCloseManagedWidgets_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcCloseManagedWidgets_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcCloseManagedWidgets_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcCloseManagedWidgets_INTERFACE_DEFINED__ */


#ifndef __IRcCloseWidget_INTERFACE_DEFINED__
#define __IRcCloseWidget_INTERFACE_DEFINED__

/* interface IRcCloseWidget */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcCloseWidget;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5D490361-3608-45C3-847A-CFD333D6351A")
    IRcCloseWidget : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcCloseWidgetVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcCloseWidget * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcCloseWidget * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcCloseWidget * This);
        
        END_INTERFACE
    } IRcCloseWidgetVtbl;

    interface IRcCloseWidget
    {
        CONST_VTBL struct IRcCloseWidgetVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcCloseWidget_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcCloseWidget_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcCloseWidget_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcCloseWidget_INTERFACE_DEFINED__ */


#ifndef __IRcOpenPanelView_INTERFACE_DEFINED__
#define __IRcOpenPanelView_INTERFACE_DEFINED__

/* interface IRcOpenPanelView */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcOpenPanelView;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1E967288-1E5C-456e-913B-CB3FAB71BC90")
    IRcOpenPanelView : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcOpenPanelViewVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcOpenPanelView * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcOpenPanelView * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcOpenPanelView * This);
        
        END_INTERFACE
    } IRcOpenPanelViewVtbl;

    interface IRcOpenPanelView
    {
        CONST_VTBL struct IRcOpenPanelViewVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcOpenPanelView_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcOpenPanelView_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcOpenPanelView_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcOpenPanelView_INTERFACE_DEFINED__ */


#ifndef __IRcSimpleScriptCommand_INTERFACE_DEFINED__
#define __IRcSimpleScriptCommand_INTERFACE_DEFINED__

/* interface IRcSimpleScriptCommand */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcSimpleScriptCommand;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5B5E8641-ED84-4C9C-9199-9ADB877E9D38")
    IRcSimpleScriptCommand : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcSimpleScriptCommandVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcSimpleScriptCommand * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcSimpleScriptCommand * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcSimpleScriptCommand * This);
        
        END_INTERFACE
    } IRcSimpleScriptCommandVtbl;

    interface IRcSimpleScriptCommand
    {
        CONST_VTBL struct IRcSimpleScriptCommandVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcSimpleScriptCommand_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcSimpleScriptCommand_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcSimpleScriptCommand_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcSimpleScriptCommand_INTERFACE_DEFINED__ */


#ifndef __IRcWidgetOpeningSelect_INTERFACE_DEFINED__
#define __IRcWidgetOpeningSelect_INTERFACE_DEFINED__

/* interface IRcWidgetOpeningSelect */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcWidgetOpeningSelect;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7E43D9EE-A7BC-4da8-ABD9-9D4644FBA3C3")
    IRcWidgetOpeningSelect : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcWidgetOpeningSelectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcWidgetOpeningSelect * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcWidgetOpeningSelect * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcWidgetOpeningSelect * This);
        
        END_INTERFACE
    } IRcWidgetOpeningSelectVtbl;

    interface IRcWidgetOpeningSelect
    {
        CONST_VTBL struct IRcWidgetOpeningSelectVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcWidgetOpeningSelect_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcWidgetOpeningSelect_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcWidgetOpeningSelect_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcWidgetOpeningSelect_INTERFACE_DEFINED__ */


#ifndef __IRcWidgetsBlockingSelect_INTERFACE_DEFINED__
#define __IRcWidgetsBlockingSelect_INTERFACE_DEFINED__

/* interface IRcWidgetsBlockingSelect */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcWidgetsBlockingSelect;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FE952F40-8D58-4616-913D-F24588162468")
    IRcWidgetsBlockingSelect : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcWidgetsBlockingSelectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcWidgetsBlockingSelect * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcWidgetsBlockingSelect * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcWidgetsBlockingSelect * This);
        
        END_INTERFACE
    } IRcWidgetsBlockingSelectVtbl;

    interface IRcWidgetsBlockingSelect
    {
        CONST_VTBL struct IRcWidgetsBlockingSelectVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcWidgetsBlockingSelect_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcWidgetsBlockingSelect_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcWidgetsBlockingSelect_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcWidgetsBlockingSelect_INTERFACE_DEFINED__ */


#ifndef __IRcDirectTransformUndoRedo_INTERFACE_DEFINED__
#define __IRcDirectTransformUndoRedo_INTERFACE_DEFINED__

/* interface IRcDirectTransformUndoRedo */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcDirectTransformUndoRedo;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1BF078EA-0F4B-420d-A8AD-D26F1EAE628D")
    IRcDirectTransformUndoRedo : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveUndoTransformation( 
            /* [in] */ IRsNode *pNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveRedoTransformation( 
            /* [in] */ IRsNode *pNode) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RecordUndoState( 
            /* [in] */ IRdWidgetParameters *pParams) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RecordRedoState( 
            /* [in] */ IRdWidgetParameters *pParams) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRcDirectTransformUndoRedoVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcDirectTransformUndoRedo * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcDirectTransformUndoRedo * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcDirectTransformUndoRedo * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SaveUndoTransformation )( 
            IRcDirectTransformUndoRedo * This,
            /* [in] */ IRsNode *pNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SaveRedoTransformation )( 
            IRcDirectTransformUndoRedo * This,
            /* [in] */ IRsNode *pNode);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RecordUndoState )( 
            IRcDirectTransformUndoRedo * This,
            /* [in] */ IRdWidgetParameters *pParams);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RecordRedoState )( 
            IRcDirectTransformUndoRedo * This,
            /* [in] */ IRdWidgetParameters *pParams);
        
        END_INTERFACE
    } IRcDirectTransformUndoRedoVtbl;

    interface IRcDirectTransformUndoRedo
    {
        CONST_VTBL struct IRcDirectTransformUndoRedoVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcDirectTransformUndoRedo_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcDirectTransformUndoRedo_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcDirectTransformUndoRedo_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRcDirectTransformUndoRedo_SaveUndoTransformation(This,pNode)	\
    (This)->lpVtbl -> SaveUndoTransformation(This,pNode)

#define IRcDirectTransformUndoRedo_SaveRedoTransformation(This,pNode)	\
    (This)->lpVtbl -> SaveRedoTransformation(This,pNode)

#define IRcDirectTransformUndoRedo_RecordUndoState(This,pParams)	\
    (This)->lpVtbl -> RecordUndoState(This,pParams)

#define IRcDirectTransformUndoRedo_RecordRedoState(This,pParams)	\
    (This)->lpVtbl -> RecordRedoState(This,pParams)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcDirectTransformUndoRedo_SaveUndoTransformation_Proxy( 
    IRcDirectTransformUndoRedo * This,
    /* [in] */ IRsNode *pNode);


void __RPC_STUB IRcDirectTransformUndoRedo_SaveUndoTransformation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcDirectTransformUndoRedo_SaveRedoTransformation_Proxy( 
    IRcDirectTransformUndoRedo * This,
    /* [in] */ IRsNode *pNode);


void __RPC_STUB IRcDirectTransformUndoRedo_SaveRedoTransformation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcDirectTransformUndoRedo_RecordUndoState_Proxy( 
    IRcDirectTransformUndoRedo * This,
    /* [in] */ IRdWidgetParameters *pParams);


void __RPC_STUB IRcDirectTransformUndoRedo_RecordUndoState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcDirectTransformUndoRedo_RecordRedoState_Proxy( 
    IRcDirectTransformUndoRedo * This,
    /* [in] */ IRdWidgetParameters *pParams);


void __RPC_STUB IRcDirectTransformUndoRedo_RecordRedoState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRcDirectTransformUndoRedo_INTERFACE_DEFINED__ */


#ifndef __IRcFloatUndoRedo_INTERFACE_DEFINED__
#define __IRcFloatUndoRedo_INTERFACE_DEFINED__

/* interface IRcFloatUndoRedo */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcFloatUndoRedo;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("999111BB-003E-4E80-99E1-C67FBBD6E026")
    IRcFloatUndoRedo : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetConId( 
            /* [in] */ CONID *pConID) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RecordUndoState( 
            /* [in] */ IRdWidgetParameters *pParams) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RecordRedoState( 
            /* [in] */ IRdWidgetParameters *pParams) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRcFloatUndoRedoVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcFloatUndoRedo * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcFloatUndoRedo * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcFloatUndoRedo * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetConId )( 
            IRcFloatUndoRedo * This,
            /* [in] */ CONID *pConID);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RecordUndoState )( 
            IRcFloatUndoRedo * This,
            /* [in] */ IRdWidgetParameters *pParams);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RecordRedoState )( 
            IRcFloatUndoRedo * This,
            /* [in] */ IRdWidgetParameters *pParams);
        
        END_INTERFACE
    } IRcFloatUndoRedoVtbl;

    interface IRcFloatUndoRedo
    {
        CONST_VTBL struct IRcFloatUndoRedoVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcFloatUndoRedo_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcFloatUndoRedo_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcFloatUndoRedo_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRcFloatUndoRedo_SetConId(This,pConID)	\
    (This)->lpVtbl -> SetConId(This,pConID)

#define IRcFloatUndoRedo_RecordUndoState(This,pParams)	\
    (This)->lpVtbl -> RecordUndoState(This,pParams)

#define IRcFloatUndoRedo_RecordRedoState(This,pParams)	\
    (This)->lpVtbl -> RecordRedoState(This,pParams)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcFloatUndoRedo_SetConId_Proxy( 
    IRcFloatUndoRedo * This,
    /* [in] */ CONID *pConID);


void __RPC_STUB IRcFloatUndoRedo_SetConId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcFloatUndoRedo_RecordUndoState_Proxy( 
    IRcFloatUndoRedo * This,
    /* [in] */ IRdWidgetParameters *pParams);


void __RPC_STUB IRcFloatUndoRedo_RecordUndoState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcFloatUndoRedo_RecordRedoState_Proxy( 
    IRcFloatUndoRedo * This,
    /* [in] */ IRdWidgetParameters *pParams);


void __RPC_STUB IRcFloatUndoRedo_RecordRedoState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRcFloatUndoRedo_INTERFACE_DEFINED__ */


#ifndef __IRcReactivator_INTERFACE_DEFINED__
#define __IRcReactivator_INTERFACE_DEFINED__

/* interface IRcReactivator */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcReactivator;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1EB0A363-4227-4BB9-A446-89417FBC5A73")
    IRcReactivator : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCallback( 
            /* [in] */ IRsReactivateable *pCallback) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRcReactivatorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcReactivator * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcReactivator * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcReactivator * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCallback )( 
            IRcReactivator * This,
            /* [in] */ IRsReactivateable *pCallback);
        
        END_INTERFACE
    } IRcReactivatorVtbl;

    interface IRcReactivator
    {
        CONST_VTBL struct IRcReactivatorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcReactivator_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcReactivator_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcReactivator_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRcReactivator_SetCallback(This,pCallback)	\
    (This)->lpVtbl -> SetCallback(This,pCallback)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcReactivator_SetCallback_Proxy( 
    IRcReactivator * This,
    /* [in] */ IRsReactivateable *pCallback);


void __RPC_STUB IRcReactivator_SetCallback_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRcReactivator_INTERFACE_DEFINED__ */


#ifndef __IRcWidgetTransformUndoRedo_INTERFACE_DEFINED__
#define __IRcWidgetTransformUndoRedo_INTERFACE_DEFINED__

/* interface IRcWidgetTransformUndoRedo */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcWidgetTransformUndoRedo;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("472F0AC5-DB7F-40C9-AC98-EC8652346C2A")
    IRcWidgetTransformUndoRedo : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetWidget( 
            /* [in] */ IRnActiveWidget *pWidget) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveUndoTransformation( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveRedoTransformation( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRcWidgetTransformUndoRedoVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcWidgetTransformUndoRedo * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcWidgetTransformUndoRedo * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcWidgetTransformUndoRedo * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetWidget )( 
            IRcWidgetTransformUndoRedo * This,
            /* [in] */ IRnActiveWidget *pWidget);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SaveUndoTransformation )( 
            IRcWidgetTransformUndoRedo * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SaveRedoTransformation )( 
            IRcWidgetTransformUndoRedo * This);
        
        END_INTERFACE
    } IRcWidgetTransformUndoRedoVtbl;

    interface IRcWidgetTransformUndoRedo
    {
        CONST_VTBL struct IRcWidgetTransformUndoRedoVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcWidgetTransformUndoRedo_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcWidgetTransformUndoRedo_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcWidgetTransformUndoRedo_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRcWidgetTransformUndoRedo_SetWidget(This,pWidget)	\
    (This)->lpVtbl -> SetWidget(This,pWidget)

#define IRcWidgetTransformUndoRedo_SaveUndoTransformation(This)	\
    (This)->lpVtbl -> SaveUndoTransformation(This)

#define IRcWidgetTransformUndoRedo_SaveRedoTransformation(This)	\
    (This)->lpVtbl -> SaveRedoTransformation(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcWidgetTransformUndoRedo_SetWidget_Proxy( 
    IRcWidgetTransformUndoRedo * This,
    /* [in] */ IRnActiveWidget *pWidget);


void __RPC_STUB IRcWidgetTransformUndoRedo_SetWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcWidgetTransformUndoRedo_SaveUndoTransformation_Proxy( 
    IRcWidgetTransformUndoRedo * This);


void __RPC_STUB IRcWidgetTransformUndoRedo_SaveUndoTransformation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcWidgetTransformUndoRedo_SaveRedoTransformation_Proxy( 
    IRcWidgetTransformUndoRedo * This);


void __RPC_STUB IRcWidgetTransformUndoRedo_SaveRedoTransformation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRcWidgetTransformUndoRedo_INTERFACE_DEFINED__ */


#ifndef __IRd3DToolbarParams_INTERFACE_DEFINED__
#define __IRd3DToolbarParams_INTERFACE_DEFINED__

/* interface IRd3DToolbarParams */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRd3DToolbarParams;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9395275E-6AE1-4A2B-B4A7-F5CC3C6B469A")
    IRd3DToolbarParams : public IRsObject
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE SetGuid( 
            /* [in] */ GUID guid) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetGuid( 
            /* [out] */ GUID *pGuid) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRd3DToolbarParamsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRd3DToolbarParams * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRd3DToolbarParams * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRd3DToolbarParams * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRd3DToolbarParams * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRd3DToolbarParams * This,
            /* [retval][out] */ BSTR *pVal);
        
        HRESULT ( STDMETHODCALLTYPE *SetGuid )( 
            IRd3DToolbarParams * This,
            /* [in] */ GUID guid);
        
        HRESULT ( STDMETHODCALLTYPE *GetGuid )( 
            IRd3DToolbarParams * This,
            /* [out] */ GUID *pGuid);
        
        END_INTERFACE
    } IRd3DToolbarParamsVtbl;

    interface IRd3DToolbarParams
    {
        CONST_VTBL struct IRd3DToolbarParamsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRd3DToolbarParams_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRd3DToolbarParams_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRd3DToolbarParams_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRd3DToolbarParams_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRd3DToolbarParams_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#define IRd3DToolbarParams_SetGuid(This,guid)	\
    (This)->lpVtbl -> SetGuid(This,guid)

#define IRd3DToolbarParams_GetGuid(This,pGuid)	\
    (This)->lpVtbl -> GetGuid(This,pGuid)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRd3DToolbarParams_SetGuid_Proxy( 
    IRd3DToolbarParams * This,
    /* [in] */ GUID guid);


void __RPC_STUB IRd3DToolbarParams_SetGuid_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRd3DToolbarParams_GetGuid_Proxy( 
    IRd3DToolbarParams * This,
    /* [out] */ GUID *pGuid);


void __RPC_STUB IRd3DToolbarParams_GetGuid_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRd3DToolbarParams_INTERFACE_DEFINED__ */


#ifndef __IRnCoordinateSystem_INTERFACE_DEFINED__
#define __IRnCoordinateSystem_INTERFACE_DEFINED__

/* interface IRnCoordinateSystem */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnCoordinateSystem;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B07BA723-0642-43E9-A9E5-13C3456F0AFD")
    IRnCoordinateSystem : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnCoordinateSystemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnCoordinateSystem * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnCoordinateSystem * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnCoordinateSystem * This);
        
        END_INTERFACE
    } IRnCoordinateSystemVtbl;

    interface IRnCoordinateSystem
    {
        CONST_VTBL struct IRnCoordinateSystemVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnCoordinateSystem_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnCoordinateSystem_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnCoordinateSystem_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnCoordinateSystem_INTERFACE_DEFINED__ */


#ifndef __IRnPerspCompCoordinates_INTERFACE_DEFINED__
#define __IRnPerspCompCoordinates_INTERFACE_DEFINED__

/* interface IRnPerspCompCoordinates */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnPerspCompCoordinates;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("ED8EB9AD-160A-4DF4-BE8D-1DB5D0225DFD")
    IRnPerspCompCoordinates : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnPerspCompCoordinatesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnPerspCompCoordinates * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnPerspCompCoordinates * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnPerspCompCoordinates * This);
        
        END_INTERFACE
    } IRnPerspCompCoordinatesVtbl;

    interface IRnPerspCompCoordinates
    {
        CONST_VTBL struct IRnPerspCompCoordinatesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnPerspCompCoordinates_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnPerspCompCoordinates_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnPerspCompCoordinates_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnPerspCompCoordinates_INTERFACE_DEFINED__ */


#ifndef __IRn2DCoordinateSystem_INTERFACE_DEFINED__
#define __IRn2DCoordinateSystem_INTERFACE_DEFINED__

/* interface IRn2DCoordinateSystem */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRn2DCoordinateSystem;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F18716E3-DBB0-4a2d-B3C6-F863CA79BACB")
    IRn2DCoordinateSystem : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRn2DCoordinateSystemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRn2DCoordinateSystem * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRn2DCoordinateSystem * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRn2DCoordinateSystem * This);
        
        END_INTERFACE
    } IRn2DCoordinateSystemVtbl;

    interface IRn2DCoordinateSystem
    {
        CONST_VTBL struct IRn2DCoordinateSystemVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRn2DCoordinateSystem_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRn2DCoordinateSystem_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRn2DCoordinateSystem_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRn2DCoordinateSystem_INTERFACE_DEFINED__ */


#ifndef __IRnBBoxDocking_INTERFACE_DEFINED__
#define __IRnBBoxDocking_INTERFACE_DEFINED__

/* interface IRnBBoxDocking */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnBBoxDocking;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F8751249-8BDA-4B62-A74F-8122072623D6")
    IRnBBoxDocking : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnBBoxDockingVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnBBoxDocking * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnBBoxDocking * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnBBoxDocking * This);
        
        END_INTERFACE
    } IRnBBoxDockingVtbl;

    interface IRnBBoxDocking
    {
        CONST_VTBL struct IRnBBoxDockingVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnBBoxDocking_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnBBoxDocking_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnBBoxDocking_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnBBoxDocking_INTERFACE_DEFINED__ */


#ifndef __IRnRectDocking_INTERFACE_DEFINED__
#define __IRnRectDocking_INTERFACE_DEFINED__

/* interface IRnRectDocking */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnRectDocking;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FDE5F2B5-46FB-4e88-B8E2-893CF03172F6")
    IRnRectDocking : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnRectDockingVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnRectDocking * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnRectDocking * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnRectDocking * This);
        
        END_INTERFACE
    } IRnRectDockingVtbl;

    interface IRnRectDocking
    {
        CONST_VTBL struct IRnRectDockingVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnRectDocking_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnRectDocking_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnRectDocking_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnRectDocking_INTERFACE_DEFINED__ */


#ifndef __IRnOffsetDocking_INTERFACE_DEFINED__
#define __IRnOffsetDocking_INTERFACE_DEFINED__

/* interface IRnOffsetDocking */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnOffsetDocking;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C1FB0C98-FF27-4CB8-9893-9A250B4A480C")
    IRnOffsetDocking : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnOffsetDockingVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnOffsetDocking * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnOffsetDocking * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnOffsetDocking * This);
        
        END_INTERFACE
    } IRnOffsetDockingVtbl;

    interface IRnOffsetDocking
    {
        CONST_VTBL struct IRnOffsetDockingVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnOffsetDocking_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnOffsetDocking_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnOffsetDocking_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnOffsetDocking_INTERFACE_DEFINED__ */


#ifndef __IRnWorldOrigin_INTERFACE_DEFINED__
#define __IRnWorldOrigin_INTERFACE_DEFINED__

/* interface IRnWorldOrigin */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnWorldOrigin;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8F887019-0545-4C20-9C4D-7D9229F9F9A0")
    IRnWorldOrigin : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnWorldOriginVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnWorldOrigin * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnWorldOrigin * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnWorldOrigin * This);
        
        END_INTERFACE
    } IRnWorldOriginVtbl;

    interface IRnWorldOrigin
    {
        CONST_VTBL struct IRnWorldOriginVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnWorldOrigin_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnWorldOrigin_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnWorldOrigin_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnWorldOrigin_INTERFACE_DEFINED__ */


#ifndef __IRnAnchorOriginDocking_INTERFACE_DEFINED__
#define __IRnAnchorOriginDocking_INTERFACE_DEFINED__

/* interface IRnAnchorOriginDocking */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnAnchorOriginDocking;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6DFA9682-8425-4EB9-91CC-CF77E51666AC")
    IRnAnchorOriginDocking : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnAnchorOriginDockingVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnAnchorOriginDocking * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnAnchorOriginDocking * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnAnchorOriginDocking * This);
        
        END_INTERFACE
    } IRnAnchorOriginDockingVtbl;

    interface IRnAnchorOriginDocking
    {
        CONST_VTBL struct IRnAnchorOriginDockingVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnAnchorOriginDocking_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnAnchorOriginDocking_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnAnchorOriginDocking_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnAnchorOriginDocking_INTERFACE_DEFINED__ */


#ifndef __IRnSelectionCenter_INTERFACE_DEFINED__
#define __IRnSelectionCenter_INTERFACE_DEFINED__

/* interface IRnSelectionCenter */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnSelectionCenter;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("156DB467-0264-43F5-9ABA-22879EF5CEEB")
    IRnSelectionCenter : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnSelectionCenterVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnSelectionCenter * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnSelectionCenter * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnSelectionCenter * This);
        
        END_INTERFACE
    } IRnSelectionCenterVtbl;

    interface IRnSelectionCenter
    {
        CONST_VTBL struct IRnSelectionCenterVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnSelectionCenter_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnSelectionCenter_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnSelectionCenter_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnSelectionCenter_INTERFACE_DEFINED__ */


#ifndef __IRnSelectionBBoxDocking_INTERFACE_DEFINED__
#define __IRnSelectionBBoxDocking_INTERFACE_DEFINED__

/* interface IRnSelectionBBoxDocking */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnSelectionBBoxDocking;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("01A45008-CE4A-4160-9127-DC60AD5F11ED")
    IRnSelectionBBoxDocking : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnSelectionBBoxDockingVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnSelectionBBoxDocking * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnSelectionBBoxDocking * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnSelectionBBoxDocking * This);
        
        END_INTERFACE
    } IRnSelectionBBoxDockingVtbl;

    interface IRnSelectionBBoxDocking
    {
        CONST_VTBL struct IRnSelectionBBoxDockingVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnSelectionBBoxDocking_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnSelectionBBoxDocking_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnSelectionBBoxDocking_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnSelectionBBoxDocking_INTERFACE_DEFINED__ */


#ifndef __IRnScreenMove_INTERFACE_DEFINED__
#define __IRnScreenMove_INTERFACE_DEFINED__

/* interface IRnScreenMove */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnScreenMove;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8F876EB6-2982-4751-B430-8C57B5ED3503")
    IRnScreenMove : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnScreenMoveVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnScreenMove * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnScreenMove * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnScreenMove * This);
        
        END_INTERFACE
    } IRnScreenMoveVtbl;

    interface IRnScreenMove
    {
        CONST_VTBL struct IRnScreenMoveVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnScreenMove_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnScreenMove_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnScreenMove_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnScreenMove_INTERFACE_DEFINED__ */


#ifndef __IRnRotate_INTERFACE_DEFINED__
#define __IRnRotate_INTERFACE_DEFINED__

/* interface IRnRotate */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnRotate;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E4E19077-6D6A-4B38-8F9A-07C5BCA3F81C")
    IRnRotate : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnRotateVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnRotate * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnRotate * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnRotate * This);
        
        END_INTERFACE
    } IRnRotateVtbl;

    interface IRnRotate
    {
        CONST_VTBL struct IRnRotateVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnRotate_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnRotate_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnRotate_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnRotate_INTERFACE_DEFINED__ */


#ifndef __IRnLinearRotate_INTERFACE_DEFINED__
#define __IRnLinearRotate_INTERFACE_DEFINED__

/* interface IRnLinearRotate */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnLinearRotate;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0D889194-27F9-4283-8FC3-B6CEC839C9FB")
    IRnLinearRotate : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnLinearRotateVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnLinearRotate * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnLinearRotate * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnLinearRotate * This);
        
        END_INTERFACE
    } IRnLinearRotateVtbl;

    interface IRnLinearRotate
    {
        CONST_VTBL struct IRnLinearRotateVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnLinearRotate_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnLinearRotate_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnLinearRotate_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnLinearRotate_INTERFACE_DEFINED__ */


#ifndef __IRnLinearRotateWorld_INTERFACE_DEFINED__
#define __IRnLinearRotateWorld_INTERFACE_DEFINED__

/* interface IRnLinearRotateWorld */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnLinearRotateWorld;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0684DCE7-0E9A-413F-A04F-7C3FE276748E")
    IRnLinearRotateWorld : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnLinearRotateWorldVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnLinearRotateWorld * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnLinearRotateWorld * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnLinearRotateWorld * This);
        
        END_INTERFACE
    } IRnLinearRotateWorldVtbl;

    interface IRnLinearRotateWorld
    {
        CONST_VTBL struct IRnLinearRotateWorldVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnLinearRotateWorld_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnLinearRotateWorld_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnLinearRotateWorld_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnLinearRotateWorld_INTERFACE_DEFINED__ */


#ifndef __IRnAxisSwap_INTERFACE_DEFINED__
#define __IRnAxisSwap_INTERFACE_DEFINED__

/* interface IRnAxisSwap */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnAxisSwap;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("16AE788E-D9C6-4AC3-8AEB-3F6E03A1828D")
    IRnAxisSwap : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnAxisSwapVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnAxisSwap * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnAxisSwap * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnAxisSwap * This);
        
        END_INTERFACE
    } IRnAxisSwapVtbl;

    interface IRnAxisSwap
    {
        CONST_VTBL struct IRnAxisSwapVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnAxisSwap_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnAxisSwap_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnAxisSwap_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnAxisSwap_INTERFACE_DEFINED__ */


#ifndef __IRnCsReplace_INTERFACE_DEFINED__
#define __IRnCsReplace_INTERFACE_DEFINED__

/* interface IRnCsReplace */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnCsReplace;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("027B29A2-091D-46F6-A1DD-4FBC0155E6B5")
    IRnCsReplace : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnCsReplaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnCsReplace * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnCsReplace * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnCsReplace * This);
        
        END_INTERFACE
    } IRnCsReplaceVtbl;

    interface IRnCsReplace
    {
        CONST_VTBL struct IRnCsReplaceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnCsReplace_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnCsReplace_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnCsReplace_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnCsReplace_INTERFACE_DEFINED__ */


#ifndef __IRnAxisRotate_INTERFACE_DEFINED__
#define __IRnAxisRotate_INTERFACE_DEFINED__

/* interface IRnAxisRotate */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnAxisRotate;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("CFA1DC75-BE08-444C-96BB-2E689A5871CC")
    IRnAxisRotate : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnAxisRotateVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnAxisRotate * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnAxisRotate * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnAxisRotate * This);
        
        END_INTERFACE
    } IRnAxisRotateVtbl;

    interface IRnAxisRotate
    {
        CONST_VTBL struct IRnAxisRotateVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnAxisRotate_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnAxisRotate_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnAxisRotate_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnAxisRotate_INTERFACE_DEFINED__ */


#ifndef __IRnAxesAlignZ_INTERFACE_DEFINED__
#define __IRnAxesAlignZ_INTERFACE_DEFINED__

/* interface IRnAxesAlignZ */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnAxesAlignZ;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("CCD532B8-4A09-4A3E-9CBC-F493AABE56FC")
    IRnAxesAlignZ : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnAxesAlignZVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnAxesAlignZ * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnAxesAlignZ * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnAxesAlignZ * This);
        
        END_INTERFACE
    } IRnAxesAlignZVtbl;

    interface IRnAxesAlignZ
    {
        CONST_VTBL struct IRnAxesAlignZVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnAxesAlignZ_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnAxesAlignZ_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnAxesAlignZ_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnAxesAlignZ_INTERFACE_DEFINED__ */


#ifndef __IRnAutomaticActivation_INTERFACE_DEFINED__
#define __IRnAutomaticActivation_INTERFACE_DEFINED__

/* interface IRnAutomaticActivation */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnAutomaticActivation;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FF252F2C-803D-468C-ADEB-1D24D8950E4D")
    IRnAutomaticActivation : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnAutomaticActivationVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnAutomaticActivation * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnAutomaticActivation * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnAutomaticActivation * This);
        
        END_INTERFACE
    } IRnAutomaticActivationVtbl;

    interface IRnAutomaticActivation
    {
        CONST_VTBL struct IRnAutomaticActivationVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnAutomaticActivation_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnAutomaticActivation_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnAutomaticActivation_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnAutomaticActivation_INTERFACE_DEFINED__ */


#ifndef __IRnInputConSensor_INTERFACE_DEFINED__
#define __IRnInputConSensor_INTERFACE_DEFINED__

/* interface IRnInputConSensor */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnInputConSensor;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("23998E02-4CD1-4B54-B4A1-0F07414D4870")
    IRnInputConSensor : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnInputConSensorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnInputConSensor * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnInputConSensor * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnInputConSensor * This);
        
        END_INTERFACE
    } IRnInputConSensorVtbl;

    interface IRnInputConSensor
    {
        CONST_VTBL struct IRnInputConSensorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnInputConSensor_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnInputConSensor_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnInputConSensor_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnInputConSensor_INTERFACE_DEFINED__ */


#ifndef __IRnOutputConSensor_INTERFACE_DEFINED__
#define __IRnOutputConSensor_INTERFACE_DEFINED__

/* interface IRnOutputConSensor */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnOutputConSensor;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3B031F71-7D1D-48A7-AF7A-215566BCF08D")
    IRnOutputConSensor : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnOutputConSensorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnOutputConSensor * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnOutputConSensor * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnOutputConSensor * This);
        
        END_INTERFACE
    } IRnOutputConSensorVtbl;

    interface IRnOutputConSensor
    {
        CONST_VTBL struct IRnOutputConSensorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnOutputConSensor_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnOutputConSensor_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnOutputConSensor_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnOutputConSensor_INTERFACE_DEFINED__ */


#ifndef __IRnMultipleOr_INTERFACE_DEFINED__
#define __IRnMultipleOr_INTERFACE_DEFINED__

/* interface IRnMultipleOr */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnMultipleOr;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("59022627-2E4E-4370-B613-C3EF3E82218D")
    IRnMultipleOr : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnMultipleOrVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnMultipleOr * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnMultipleOr * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnMultipleOr * This);
        
        END_INTERFACE
    } IRnMultipleOrVtbl;

    interface IRnMultipleOr
    {
        CONST_VTBL struct IRnMultipleOrVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnMultipleOr_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnMultipleOr_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnMultipleOr_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnMultipleOr_INTERFACE_DEFINED__ */


#ifndef __IRnMultipleXor_INTERFACE_DEFINED__
#define __IRnMultipleXor_INTERFACE_DEFINED__

/* interface IRnMultipleXor */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnMultipleXor;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A30D0151-F3D0-48B0-BC6C-07881AAD6964")
    IRnMultipleXor : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnMultipleXorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnMultipleXor * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnMultipleXor * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnMultipleXor * This);
        
        END_INTERFACE
    } IRnMultipleXorVtbl;

    interface IRnMultipleXor
    {
        CONST_VTBL struct IRnMultipleXorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnMultipleXor_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnMultipleXor_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnMultipleXor_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnMultipleXor_INTERFACE_DEFINED__ */


#ifndef __IRnMultipleAnd_INTERFACE_DEFINED__
#define __IRnMultipleAnd_INTERFACE_DEFINED__

/* interface IRnMultipleAnd */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnMultipleAnd;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FDB62566-4129-4524-BA52-298137CBFFA6")
    IRnMultipleAnd : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnMultipleAndVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnMultipleAnd * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnMultipleAnd * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnMultipleAnd * This);
        
        END_INTERFACE
    } IRnMultipleAndVtbl;

    interface IRnMultipleAnd
    {
        CONST_VTBL struct IRnMultipleAndVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnMultipleAnd_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnMultipleAnd_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnMultipleAnd_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnMultipleAnd_INTERFACE_DEFINED__ */


#ifndef __IRnVisualizationCtrl_INTERFACE_DEFINED__
#define __IRnVisualizationCtrl_INTERFACE_DEFINED__

/* interface IRnVisualizationCtrl */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnVisualizationCtrl;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("CA26CE9E-7D38-4E1D-9C8D-A8348063718E")
    IRnVisualizationCtrl : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnVisualizationCtrlVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnVisualizationCtrl * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnVisualizationCtrl * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnVisualizationCtrl * This);
        
        END_INTERFACE
    } IRnVisualizationCtrlVtbl;

    interface IRnVisualizationCtrl
    {
        CONST_VTBL struct IRnVisualizationCtrlVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnVisualizationCtrl_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnVisualizationCtrl_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnVisualizationCtrl_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnVisualizationCtrl_INTERFACE_DEFINED__ */


#ifndef __IRnSimpleVisualizationCtrl_INTERFACE_DEFINED__
#define __IRnSimpleVisualizationCtrl_INTERFACE_DEFINED__

/* interface IRnSimpleVisualizationCtrl */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnSimpleVisualizationCtrl;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1B25B45F-9C14-4B66-A7C4-F5106C3B1DEE")
    IRnSimpleVisualizationCtrl : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnSimpleVisualizationCtrlVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnSimpleVisualizationCtrl * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnSimpleVisualizationCtrl * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnSimpleVisualizationCtrl * This);
        
        END_INTERFACE
    } IRnSimpleVisualizationCtrlVtbl;

    interface IRnSimpleVisualizationCtrl
    {
        CONST_VTBL struct IRnSimpleVisualizationCtrlVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnSimpleVisualizationCtrl_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnSimpleVisualizationCtrl_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnSimpleVisualizationCtrl_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnSimpleVisualizationCtrl_INTERFACE_DEFINED__ */


#ifndef __IRnMove_INTERFACE_DEFINED__
#define __IRnMove_INTERFACE_DEFINED__

/* interface IRnMove */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnMove;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("048D2B3C-601E-4B47-93B2-7C2FA1DD6DDE")
    IRnMove : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnMoveVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnMove * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnMove * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnMove * This);
        
        END_INTERFACE
    } IRnMoveVtbl;

    interface IRnMove
    {
        CONST_VTBL struct IRnMoveVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnMove_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnMove_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnMove_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnMove_INTERFACE_DEFINED__ */


#ifndef __IRnLinearMove_INTERFACE_DEFINED__
#define __IRnLinearMove_INTERFACE_DEFINED__

/* interface IRnLinearMove */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnLinearMove;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("635E30AB-9D91-4E06-8533-F91DDDCFEE8E")
    IRnLinearMove : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnLinearMoveVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnLinearMove * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnLinearMove * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnLinearMove * This);
        
        END_INTERFACE
    } IRnLinearMoveVtbl;

    interface IRnLinearMove
    {
        CONST_VTBL struct IRnLinearMoveVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnLinearMove_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnLinearMove_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnLinearMove_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnLinearMove_INTERFACE_DEFINED__ */


#ifndef __IRnLinearScale_INTERFACE_DEFINED__
#define __IRnLinearScale_INTERFACE_DEFINED__

/* interface IRnLinearScale */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnLinearScale;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F2A564AB-6A43-4D76-9C66-8D7A84406F49")
    IRnLinearScale : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnLinearScaleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnLinearScale * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnLinearScale * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnLinearScale * This);
        
        END_INTERFACE
    } IRnLinearScaleVtbl;

    interface IRnLinearScale
    {
        CONST_VTBL struct IRnLinearScaleVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnLinearScale_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnLinearScale_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnLinearScale_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnLinearScale_INTERFACE_DEFINED__ */


#ifndef __IRnMoveWidget_INTERFACE_DEFINED__
#define __IRnMoveWidget_INTERFACE_DEFINED__

/* interface IRnMoveWidget */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnMoveWidget;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("48376475-87BA-43DD-B3E8-12D4845EDF80")
    IRnMoveWidget : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnMoveWidgetVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnMoveWidget * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnMoveWidget * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnMoveWidget * This);
        
        END_INTERFACE
    } IRnMoveWidgetVtbl;

    interface IRnMoveWidget
    {
        CONST_VTBL struct IRnMoveWidgetVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnMoveWidget_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnMoveWidget_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnMoveWidget_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnMoveWidget_INTERFACE_DEFINED__ */


#ifndef __IRnLinearSlider_INTERFACE_DEFINED__
#define __IRnLinearSlider_INTERFACE_DEFINED__

/* interface IRnLinearSlider */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnLinearSlider;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8E9815A2-E13E-4611-929E-250FEB7C6DCB")
    IRnLinearSlider : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnLinearSliderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnLinearSlider * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnLinearSlider * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnLinearSlider * This);
        
        END_INTERFACE
    } IRnLinearSliderVtbl;

    interface IRnLinearSlider
    {
        CONST_VTBL struct IRnLinearSliderVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnLinearSlider_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnLinearSlider_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnLinearSlider_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnLinearSlider_INTERFACE_DEFINED__ */


#ifndef __IRnSimpleSlider_INTERFACE_DEFINED__
#define __IRnSimpleSlider_INTERFACE_DEFINED__

/* interface IRnSimpleSlider */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnSimpleSlider;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E51B7DF2-4C7B-417d-AB25-66D9CE4CEE9E")
    IRnSimpleSlider : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnSimpleSliderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnSimpleSlider * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnSimpleSlider * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnSimpleSlider * This);
        
        END_INTERFACE
    } IRnSimpleSliderVtbl;

    interface IRnSimpleSlider
    {
        CONST_VTBL struct IRnSimpleSliderVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnSimpleSlider_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnSimpleSlider_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnSimpleSlider_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnSimpleSlider_INTERFACE_DEFINED__ */


#ifndef __IRnCameraWalk_INTERFACE_DEFINED__
#define __IRnCameraWalk_INTERFACE_DEFINED__

/* interface IRnCameraWalk */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnCameraWalk;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D92B858E-3DF0-4810-92B5-BAB9487FE8D9")
    IRnCameraWalk : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnCameraWalkVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnCameraWalk * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnCameraWalk * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnCameraWalk * This);
        
        END_INTERFACE
    } IRnCameraWalkVtbl;

    interface IRnCameraWalk
    {
        CONST_VTBL struct IRnCameraWalkVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnCameraWalk_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnCameraWalk_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnCameraWalk_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnCameraWalk_INTERFACE_DEFINED__ */


#ifndef __IRnCameraLookAround_INTERFACE_DEFINED__
#define __IRnCameraLookAround_INTERFACE_DEFINED__

/* interface IRnCameraLookAround */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnCameraLookAround;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4EA944A5-E742-4112-8AA3-DE1A97632F04")
    IRnCameraLookAround : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnCameraLookAroundVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnCameraLookAround * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnCameraLookAround * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnCameraLookAround * This);
        
        END_INTERFACE
    } IRnCameraLookAroundVtbl;

    interface IRnCameraLookAround
    {
        CONST_VTBL struct IRnCameraLookAroundVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnCameraLookAround_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnCameraLookAround_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnCameraLookAround_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnCameraLookAround_INTERFACE_DEFINED__ */


#ifndef __IRnCameraNavigate_INTERFACE_DEFINED__
#define __IRnCameraNavigate_INTERFACE_DEFINED__

/* interface IRnCameraNavigate */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnCameraNavigate;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("02058425-970C-407A-8D75-2DA5C45F83AA")
    IRnCameraNavigate : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnCameraNavigateVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnCameraNavigate * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnCameraNavigate * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnCameraNavigate * This);
        
        END_INTERFACE
    } IRnCameraNavigateVtbl;

    interface IRnCameraNavigate
    {
        CONST_VTBL struct IRnCameraNavigateVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnCameraNavigate_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnCameraNavigate_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnCameraNavigate_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnCameraNavigate_INTERFACE_DEFINED__ */


#ifndef __IRnCameraChangeFov_INTERFACE_DEFINED__
#define __IRnCameraChangeFov_INTERFACE_DEFINED__

/* interface IRnCameraChangeFov */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnCameraChangeFov;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6DCEA354-DCEB-4A84-9580-6ABCFC347786")
    IRnCameraChangeFov : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnCameraChangeFovVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnCameraChangeFov * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnCameraChangeFov * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnCameraChangeFov * This);
        
        END_INTERFACE
    } IRnCameraChangeFovVtbl;

    interface IRnCameraChangeFov
    {
        CONST_VTBL struct IRnCameraChangeFovVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnCameraChangeFov_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnCameraChangeFov_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnCameraChangeFov_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnCameraChangeFov_INTERFACE_DEFINED__ */


#ifndef __IRnAnchorBSphere_INTERFACE_DEFINED__
#define __IRnAnchorBSphere_INTERFACE_DEFINED__

/* interface IRnAnchorBSphere */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnAnchorBSphere;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2273CC2E-0142-41E6-930E-A62BFB005C98")
    IRnAnchorBSphere : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnAnchorBSphereVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnAnchorBSphere * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnAnchorBSphere * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnAnchorBSphere * This);
        
        END_INTERFACE
    } IRnAnchorBSphereVtbl;

    interface IRnAnchorBSphere
    {
        CONST_VTBL struct IRnAnchorBSphereVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnAnchorBSphere_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnAnchorBSphere_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnAnchorBSphere_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnAnchorBSphere_INTERFACE_DEFINED__ */


#ifndef __IRnUpdateEyeCamera_INTERFACE_DEFINED__
#define __IRnUpdateEyeCamera_INTERFACE_DEFINED__

/* interface IRnUpdateEyeCamera */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnUpdateEyeCamera;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2EE34938-76A0-4637-847E-1051FF928E65")
    IRnUpdateEyeCamera : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnUpdateEyeCameraVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnUpdateEyeCamera * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnUpdateEyeCamera * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnUpdateEyeCamera * This);
        
        END_INTERFACE
    } IRnUpdateEyeCameraVtbl;

    interface IRnUpdateEyeCamera
    {
        CONST_VTBL struct IRnUpdateEyeCameraVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnUpdateEyeCamera_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnUpdateEyeCamera_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnUpdateEyeCamera_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnUpdateEyeCamera_INTERFACE_DEFINED__ */


#ifndef __IRnWidgetToolbar_INTERFACE_DEFINED__
#define __IRnWidgetToolbar_INTERFACE_DEFINED__

/* interface IRnWidgetToolbar */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnWidgetToolbar;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2A76000D-C195-4E63-86FF-BC40AC2DCA33")
    IRnWidgetToolbar : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnWidgetToolbarVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnWidgetToolbar * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnWidgetToolbar * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnWidgetToolbar * This);
        
        END_INTERFACE
    } IRnWidgetToolbarVtbl;

    interface IRnWidgetToolbar
    {
        CONST_VTBL struct IRnWidgetToolbarVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnWidgetToolbar_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnWidgetToolbar_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnWidgetToolbar_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnWidgetToolbar_INTERFACE_DEFINED__ */


#ifndef __IRn3DToolbar_INTERFACE_DEFINED__
#define __IRn3DToolbar_INTERFACE_DEFINED__

/* interface IRn3DToolbar */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRn3DToolbar;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("EF262FE4-B5F3-4501-BE0D-193A052C00A8")
    IRn3DToolbar : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRn3DToolbarVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRn3DToolbar * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRn3DToolbar * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRn3DToolbar * This);
        
        END_INTERFACE
    } IRn3DToolbarVtbl;

    interface IRn3DToolbar
    {
        CONST_VTBL struct IRn3DToolbarVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRn3DToolbar_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRn3DToolbar_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRn3DToolbar_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRn3DToolbar_INTERFACE_DEFINED__ */


#ifndef __IRn3DButton_INTERFACE_DEFINED__
#define __IRn3DButton_INTERFACE_DEFINED__

/* interface IRn3DButton */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRn3DButton;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0DF19D47-FEFB-4B41-9713-51EEF732420A")
    IRn3DButton : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRn3DButtonVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRn3DButton * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRn3DButton * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRn3DButton * This);
        
        END_INTERFACE
    } IRn3DButtonVtbl;

    interface IRn3DButton
    {
        CONST_VTBL struct IRn3DButtonVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRn3DButton_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRn3DButton_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRn3DButton_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRn3DButton_INTERFACE_DEFINED__ */


#ifndef __IRnSynchronizeWithSelection_INTERFACE_DEFINED__
#define __IRnSynchronizeWithSelection_INTERFACE_DEFINED__

/* interface IRnSynchronizeWithSelection */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnSynchronizeWithSelection;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D304B26B-03C8-4E2A-8237-2AED2C3966A7")
    IRnSynchronizeWithSelection : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnSynchronizeWithSelectionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnSynchronizeWithSelection * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnSynchronizeWithSelection * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnSynchronizeWithSelection * This);
        
        END_INTERFACE
    } IRnSynchronizeWithSelectionVtbl;

    interface IRnSynchronizeWithSelection
    {
        CONST_VTBL struct IRnSynchronizeWithSelectionVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnSynchronizeWithSelection_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnSynchronizeWithSelection_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnSynchronizeWithSelection_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnSynchronizeWithSelection_INTERFACE_DEFINED__ */


#ifndef __IRnPrefCoordinateSystem_INTERFACE_DEFINED__
#define __IRnPrefCoordinateSystem_INTERFACE_DEFINED__

/* interface IRnPrefCoordinateSystem */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnPrefCoordinateSystem;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("822F6A1A-89AE-43aa-A61A-F17E43800ED3")
    IRnPrefCoordinateSystem : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnPrefCoordinateSystemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnPrefCoordinateSystem * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnPrefCoordinateSystem * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnPrefCoordinateSystem * This);
        
        END_INTERFACE
    } IRnPrefCoordinateSystemVtbl;

    interface IRnPrefCoordinateSystem
    {
        CONST_VTBL struct IRnPrefCoordinateSystemVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnPrefCoordinateSystem_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnPrefCoordinateSystem_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnPrefCoordinateSystem_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnPrefCoordinateSystem_INTERFACE_DEFINED__ */


#ifndef __IRnPrefPerspCoordinateSystem_INTERFACE_DEFINED__
#define __IRnPrefPerspCoordinateSystem_INTERFACE_DEFINED__

/* interface IRnPrefPerspCoordinateSystem */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnPrefPerspCoordinateSystem;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C1601B06-6F88-47d8-9635-365B2F722AE5")
    IRnPrefPerspCoordinateSystem : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnPrefPerspCoordinateSystemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnPrefPerspCoordinateSystem * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnPrefPerspCoordinateSystem * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnPrefPerspCoordinateSystem * This);
        
        END_INTERFACE
    } IRnPrefPerspCoordinateSystemVtbl;

    interface IRnPrefPerspCoordinateSystem
    {
        CONST_VTBL struct IRnPrefPerspCoordinateSystemVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnPrefPerspCoordinateSystem_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnPrefPerspCoordinateSystem_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnPrefPerspCoordinateSystem_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnPrefPerspCoordinateSystem_INTERFACE_DEFINED__ */


#ifndef __IRnSelectObject_INTERFACE_DEFINED__
#define __IRnSelectObject_INTERFACE_DEFINED__

/* interface IRnSelectObject */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnSelectObject;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9A112B89-850D-48E4-98B6-71A3849E0C32")
    IRnSelectObject : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnSelectObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnSelectObject * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnSelectObject * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnSelectObject * This);
        
        END_INTERFACE
    } IRnSelectObjectVtbl;

    interface IRnSelectObject
    {
        CONST_VTBL struct IRnSelectObjectVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnSelectObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnSelectObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnSelectObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnSelectObject_INTERFACE_DEFINED__ */


#ifndef __IRnToggleSelect_INTERFACE_DEFINED__
#define __IRnToggleSelect_INTERFACE_DEFINED__

/* interface IRnToggleSelect */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnToggleSelect;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("08BB6BA5-7141-47A5-A15D-CF1D22A0F148")
    IRnToggleSelect : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnToggleSelectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnToggleSelect * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnToggleSelect * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnToggleSelect * This);
        
        END_INTERFACE
    } IRnToggleSelectVtbl;

    interface IRnToggleSelect
    {
        CONST_VTBL struct IRnToggleSelectVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnToggleSelect_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnToggleSelect_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnToggleSelect_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnToggleSelect_INTERFACE_DEFINED__ */


#ifndef __IRnDragAndDropTool_INTERFACE_DEFINED__
#define __IRnDragAndDropTool_INTERFACE_DEFINED__

/* interface IRnDragAndDropTool */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnDragAndDropTool;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("17908D78-7933-4c96-A2D5-057FD78A923E")
    IRnDragAndDropTool : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnDragAndDropToolVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnDragAndDropTool * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnDragAndDropTool * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnDragAndDropTool * This);
        
        END_INTERFACE
    } IRnDragAndDropToolVtbl;

    interface IRnDragAndDropTool
    {
        CONST_VTBL struct IRnDragAndDropToolVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnDragAndDropTool_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnDragAndDropTool_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnDragAndDropTool_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnDragAndDropTool_INTERFACE_DEFINED__ */


#ifndef __IRnCameraRoll_INTERFACE_DEFINED__
#define __IRnCameraRoll_INTERFACE_DEFINED__

/* interface IRnCameraRoll */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnCameraRoll;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("559F1322-8DD3-4644-9121-0209D96C5104")
    IRnCameraRoll : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnCameraRollVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnCameraRoll * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnCameraRoll * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnCameraRoll * This);
        
        END_INTERFACE
    } IRnCameraRollVtbl;

    interface IRnCameraRoll
    {
        CONST_VTBL struct IRnCameraRollVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnCameraRoll_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnCameraRoll_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnCameraRoll_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnCameraRoll_INTERFACE_DEFINED__ */


#ifndef __IRnSelectionBBox_INTERFACE_DEFINED__
#define __IRnSelectionBBox_INTERFACE_DEFINED__

/* interface IRnSelectionBBox */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnSelectionBBox;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("CFB30371-2B6E-47E6-AF5C-0F2C1F8C714C")
    IRnSelectionBBox : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnSelectionBBoxVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnSelectionBBox * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnSelectionBBox * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnSelectionBBox * This);
        
        END_INTERFACE
    } IRnSelectionBBoxVtbl;

    interface IRnSelectionBBox
    {
        CONST_VTBL struct IRnSelectionBBoxVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnSelectionBBox_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnSelectionBBox_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnSelectionBBox_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnSelectionBBox_INTERFACE_DEFINED__ */


#ifndef __IRnAnchorBBoxDocking_INTERFACE_DEFINED__
#define __IRnAnchorBBoxDocking_INTERFACE_DEFINED__

/* interface IRnAnchorBBoxDocking */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnAnchorBBoxDocking;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6494EF3D-3E97-42a5-8A62-D8C5B4DD5161")
    IRnAnchorBBoxDocking : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnAnchorBBoxDockingVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnAnchorBBoxDocking * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnAnchorBBoxDocking * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnAnchorBBoxDocking * This);
        
        END_INTERFACE
    } IRnAnchorBBoxDockingVtbl;

    interface IRnAnchorBBoxDocking
    {
        CONST_VTBL struct IRnAnchorBBoxDockingVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnAnchorBBoxDocking_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnAnchorBBoxDocking_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnAnchorBBoxDocking_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnAnchorBBoxDocking_INTERFACE_DEFINED__ */


#ifndef __IRnCenterDocking_INTERFACE_DEFINED__
#define __IRnCenterDocking_INTERFACE_DEFINED__

/* interface IRnCenterDocking */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnCenterDocking;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C416B3A5-9BD6-453b-AAA7-C98DCE80B772")
    IRnCenterDocking : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnCenterDockingVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnCenterDocking * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnCenterDocking * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnCenterDocking * This);
        
        END_INTERFACE
    } IRnCenterDockingVtbl;

    interface IRnCenterDocking
    {
        CONST_VTBL struct IRnCenterDockingVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnCenterDocking_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnCenterDocking_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnCenterDocking_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnCenterDocking_INTERFACE_DEFINED__ */


#ifndef __IRnHighliteEvaluator_INTERFACE_DEFINED__
#define __IRnHighliteEvaluator_INTERFACE_DEFINED__

/* interface IRnHighliteEvaluator */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnHighliteEvaluator;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("395BEAD7-4F51-4958-9390-E752992B60E2")
    IRnHighliteEvaluator : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnHighliteEvaluatorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnHighliteEvaluator * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnHighliteEvaluator * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnHighliteEvaluator * This);
        
        END_INTERFACE
    } IRnHighliteEvaluatorVtbl;

    interface IRnHighliteEvaluator
    {
        CONST_VTBL struct IRnHighliteEvaluatorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnHighliteEvaluator_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnHighliteEvaluator_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnHighliteEvaluator_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnHighliteEvaluator_INTERFACE_DEFINED__ */


#ifndef __IRnWidgetLink_INTERFACE_DEFINED__
#define __IRnWidgetLink_INTERFACE_DEFINED__

/* interface IRnWidgetLink */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnWidgetLink;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1A5426B5-AF93-40BC-A076-3F9B355D3D1A")
    IRnWidgetLink : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnWidgetLinkVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnWidgetLink * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnWidgetLink * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnWidgetLink * This);
        
        END_INTERFACE
    } IRnWidgetLinkVtbl;

    interface IRnWidgetLink
    {
        CONST_VTBL struct IRnWidgetLinkVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnWidgetLink_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnWidgetLink_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnWidgetLink_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnWidgetLink_INTERFACE_DEFINED__ */


#ifndef __IRnOpenSettingsPanel_INTERFACE_DEFINED__
#define __IRnOpenSettingsPanel_INTERFACE_DEFINED__

/* interface IRnOpenSettingsPanel */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnOpenSettingsPanel;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1FC0791C-02C8-4006-9F15-36B21CADF9C5")
    IRnOpenSettingsPanel : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnOpenSettingsPanelVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnOpenSettingsPanel * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnOpenSettingsPanel * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnOpenSettingsPanel * This);
        
        END_INTERFACE
    } IRnOpenSettingsPanelVtbl;

    interface IRnOpenSettingsPanel
    {
        CONST_VTBL struct IRnOpenSettingsPanelVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnOpenSettingsPanel_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnOpenSettingsPanel_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnOpenSettingsPanel_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnOpenSettingsPanel_INTERFACE_DEFINED__ */


#ifndef __IRnActionSequence_INTERFACE_DEFINED__
#define __IRnActionSequence_INTERFACE_DEFINED__

/* interface IRnActionSequence */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnActionSequence;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0DBD34FD-1183-4AE3-BD7D-9B6217616808")
    IRnActionSequence : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnActionSequenceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnActionSequence * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnActionSequence * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnActionSequence * This);
        
        END_INTERFACE
    } IRnActionSequenceVtbl;

    interface IRnActionSequence
    {
        CONST_VTBL struct IRnActionSequenceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnActionSequence_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnActionSequence_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnActionSequence_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnActionSequence_INTERFACE_DEFINED__ */


#ifndef __IRnContinuousSequence_INTERFACE_DEFINED__
#define __IRnContinuousSequence_INTERFACE_DEFINED__

/* interface IRnContinuousSequence */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnContinuousSequence;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3EE35A48-5459-4dfe-87EE-480EBFE9CB7B")
    IRnContinuousSequence : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnContinuousSequenceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnContinuousSequence * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnContinuousSequence * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnContinuousSequence * This);
        
        END_INTERFACE
    } IRnContinuousSequenceVtbl;

    interface IRnContinuousSequence
    {
        CONST_VTBL struct IRnContinuousSequenceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnContinuousSequence_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnContinuousSequence_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnContinuousSequence_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnContinuousSequence_INTERFACE_DEFINED__ */


#ifndef __IRnCameraType_INTERFACE_DEFINED__
#define __IRnCameraType_INTERFACE_DEFINED__

/* interface IRnCameraType */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnCameraType;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("43601363-1A35-4544-AC78-48E47F567043")
    IRnCameraType : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnCameraTypeVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnCameraType * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnCameraType * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnCameraType * This);
        
        END_INTERFACE
    } IRnCameraTypeVtbl;

    interface IRnCameraType
    {
        CONST_VTBL struct IRnCameraTypeVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnCameraType_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnCameraType_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnCameraType_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnCameraType_INTERFACE_DEFINED__ */


#ifndef __IRnCameraActive_INTERFACE_DEFINED__
#define __IRnCameraActive_INTERFACE_DEFINED__

/* interface IRnCameraActive */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnCameraActive;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B20176E6-6AC0-47e6-B469-3BFB03FDE256")
    IRnCameraActive : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnCameraActiveVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnCameraActive * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnCameraActive * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnCameraActive * This);
        
        END_INTERFACE
    } IRnCameraActiveVtbl;

    interface IRnCameraActive
    {
        CONST_VTBL struct IRnCameraActiveVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnCameraActive_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnCameraActive_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnCameraActive_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnCameraActive_INTERFACE_DEFINED__ */


#ifndef __IRnObjectWidgetHide_INTERFACE_DEFINED__
#define __IRnObjectWidgetHide_INTERFACE_DEFINED__

/* interface IRnObjectWidgetHide */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnObjectWidgetHide;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2C7075B3-7865-4b2d-8E9C-8C3736280E58")
    IRnObjectWidgetHide : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnObjectWidgetHideVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnObjectWidgetHide * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnObjectWidgetHide * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnObjectWidgetHide * This);
        
        END_INTERFACE
    } IRnObjectWidgetHideVtbl;

    interface IRnObjectWidgetHide
    {
        CONST_VTBL struct IRnObjectWidgetHideVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnObjectWidgetHide_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnObjectWidgetHide_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnObjectWidgetHide_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnObjectWidgetHide_INTERFACE_DEFINED__ */


#ifndef __IRnObjectHide_INTERFACE_DEFINED__
#define __IRnObjectHide_INTERFACE_DEFINED__

/* interface IRnObjectHide */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnObjectHide;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7A8542C4-032B-44E8-B680-23B87FBDCD3D")
    IRnObjectHide : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE SetStatus( 
            /* [in] */ RtBool bShow) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRnObjectHideVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnObjectHide * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnObjectHide * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnObjectHide * This);
        
        HRESULT ( STDMETHODCALLTYPE *SetStatus )( 
            IRnObjectHide * This,
            /* [in] */ RtBool bShow);
        
        END_INTERFACE
    } IRnObjectHideVtbl;

    interface IRnObjectHide
    {
        CONST_VTBL struct IRnObjectHideVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnObjectHide_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnObjectHide_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnObjectHide_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRnObjectHide_SetStatus(This,bShow)	\
    (This)->lpVtbl -> SetStatus(This,bShow)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRnObjectHide_SetStatus_Proxy( 
    IRnObjectHide * This,
    /* [in] */ RtBool bShow);


void __RPC_STUB IRnObjectHide_SetStatus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRnObjectHide_INTERFACE_DEFINED__ */


#ifndef __IRnLinearConstrMove_INTERFACE_DEFINED__
#define __IRnLinearConstrMove_INTERFACE_DEFINED__

/* interface IRnLinearConstrMove */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnLinearConstrMove;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("635E30AB-0E91-4E06-8533-F91DDDCFEE8E")
    IRnLinearConstrMove : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnLinearConstrMoveVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnLinearConstrMove * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnLinearConstrMove * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnLinearConstrMove * This);
        
        END_INTERFACE
    } IRnLinearConstrMoveVtbl;

    interface IRnLinearConstrMove
    {
        CONST_VTBL struct IRnLinearConstrMoveVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnLinearConstrMove_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnLinearConstrMove_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnLinearConstrMove_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnLinearConstrMove_INTERFACE_DEFINED__ */


#ifndef __IRnCoordinateSystemDenormalized_INTERFACE_DEFINED__
#define __IRnCoordinateSystemDenormalized_INTERFACE_DEFINED__

/* interface IRnCoordinateSystemDenormalized */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnCoordinateSystemDenormalized;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E5E5D161-B549-4195-9220-6562D8748C0E")
    IRnCoordinateSystemDenormalized : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnCoordinateSystemDenormalizedVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnCoordinateSystemDenormalized * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnCoordinateSystemDenormalized * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnCoordinateSystemDenormalized * This);
        
        END_INTERFACE
    } IRnCoordinateSystemDenormalizedVtbl;

    interface IRnCoordinateSystemDenormalized
    {
        CONST_VTBL struct IRnCoordinateSystemDenormalizedVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnCoordinateSystemDenormalized_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnCoordinateSystemDenormalized_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnCoordinateSystemDenormalized_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnCoordinateSystemDenormalized_INTERFACE_DEFINED__ */


#ifndef __IRnInputValueSensor_INTERFACE_DEFINED__
#define __IRnInputValueSensor_INTERFACE_DEFINED__

/* interface IRnInputValueSensor */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnInputValueSensor;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DE1E13BC-C42D-4bdd-9C1E-DA671D054EDC")
    IRnInputValueSensor : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnInputValueSensorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnInputValueSensor * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnInputValueSensor * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnInputValueSensor * This);
        
        END_INTERFACE
    } IRnInputValueSensorVtbl;

    interface IRnInputValueSensor
    {
        CONST_VTBL struct IRnInputValueSensorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnInputValueSensor_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnInputValueSensor_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnInputValueSensor_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnInputValueSensor_INTERFACE_DEFINED__ */


#ifndef __IRnAnchorCustomBoxDocking_INTERFACE_DEFINED__
#define __IRnAnchorCustomBoxDocking_INTERFACE_DEFINED__

/* interface IRnAnchorCustomBoxDocking */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnAnchorCustomBoxDocking;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B53EF024-04AA-4ff4-9DB1-313D40D0B708")
    IRnAnchorCustomBoxDocking : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnAnchorCustomBoxDockingVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnAnchorCustomBoxDocking * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnAnchorCustomBoxDocking * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnAnchorCustomBoxDocking * This);
        
        END_INTERFACE
    } IRnAnchorCustomBoxDockingVtbl;

    interface IRnAnchorCustomBoxDocking
    {
        CONST_VTBL struct IRnAnchorCustomBoxDockingVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnAnchorCustomBoxDocking_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnAnchorCustomBoxDocking_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnAnchorCustomBoxDocking_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnAnchorCustomBoxDocking_INTERFACE_DEFINED__ */


#ifndef __IRnScaleCompensator_INTERFACE_DEFINED__
#define __IRnScaleCompensator_INTERFACE_DEFINED__

/* interface IRnScaleCompensator */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnScaleCompensator;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4AA215C8-C0DA-4ebf-A5A7-34A9D1F49B8E")
    IRnScaleCompensator : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnScaleCompensatorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnScaleCompensator * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnScaleCompensator * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnScaleCompensator * This);
        
        END_INTERFACE
    } IRnScaleCompensatorVtbl;

    interface IRnScaleCompensator
    {
        CONST_VTBL struct IRnScaleCompensatorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnScaleCompensator_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnScaleCompensator_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnScaleCompensator_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnScaleCompensator_INTERFACE_DEFINED__ */


#ifndef __IRnWidgetShortcut_INTERFACE_DEFINED__
#define __IRnWidgetShortcut_INTERFACE_DEFINED__

/* interface IRnWidgetShortcut */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnWidgetShortcut;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("917297F1-CF01-4C31-84D6-8B5E8641E25D")
    IRnWidgetShortcut : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnWidgetShortcutVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnWidgetShortcut * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnWidgetShortcut * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnWidgetShortcut * This);
        
        END_INTERFACE
    } IRnWidgetShortcutVtbl;

    interface IRnWidgetShortcut
    {
        CONST_VTBL struct IRnWidgetShortcutVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnWidgetShortcut_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnWidgetShortcut_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnWidgetShortcut_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnWidgetShortcut_INTERFACE_DEFINED__ */


#ifndef __IRnAxisAlignedCoordSys_INTERFACE_DEFINED__
#define __IRnAxisAlignedCoordSys_INTERFACE_DEFINED__

/* interface IRnAxisAlignedCoordSys */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnAxisAlignedCoordSys;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("29C50A39-1B38-4cd4-85C7-61E977D9365F")
    IRnAxisAlignedCoordSys : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnAxisAlignedCoordSysVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnAxisAlignedCoordSys * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnAxisAlignedCoordSys * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnAxisAlignedCoordSys * This);
        
        END_INTERFACE
    } IRnAxisAlignedCoordSysVtbl;

    interface IRnAxisAlignedCoordSys
    {
        CONST_VTBL struct IRnAxisAlignedCoordSysVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnAxisAlignedCoordSys_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnAxisAlignedCoordSys_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnAxisAlignedCoordSys_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnAxisAlignedCoordSys_INTERFACE_DEFINED__ */


#ifndef __IRnMarkerVisualization_INTERFACE_DEFINED__
#define __IRnMarkerVisualization_INTERFACE_DEFINED__

/* interface IRnMarkerVisualization */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnMarkerVisualization;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DC153DA5-E351-4AD0-80A2-7E77FC52B165")
    IRnMarkerVisualization : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE SetVisualizationMesh( 
            /* [in] */ GUID gSnapGroupId,
            /* [in] */ IRdMesh *spMesh) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ResetVisualizationMesh( 
            /* [in] */ GUID gSnapGroupId) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRnMarkerVisualizationVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnMarkerVisualization * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnMarkerVisualization * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnMarkerVisualization * This);
        
        HRESULT ( STDMETHODCALLTYPE *SetVisualizationMesh )( 
            IRnMarkerVisualization * This,
            /* [in] */ GUID gSnapGroupId,
            /* [in] */ IRdMesh *spMesh);
        
        HRESULT ( STDMETHODCALLTYPE *ResetVisualizationMesh )( 
            IRnMarkerVisualization * This,
            /* [in] */ GUID gSnapGroupId);
        
        END_INTERFACE
    } IRnMarkerVisualizationVtbl;

    interface IRnMarkerVisualization
    {
        CONST_VTBL struct IRnMarkerVisualizationVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnMarkerVisualization_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnMarkerVisualization_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnMarkerVisualization_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRnMarkerVisualization_SetVisualizationMesh(This,gSnapGroupId,spMesh)	\
    (This)->lpVtbl -> SetVisualizationMesh(This,gSnapGroupId,spMesh)

#define IRnMarkerVisualization_ResetVisualizationMesh(This,gSnapGroupId)	\
    (This)->lpVtbl -> ResetVisualizationMesh(This,gSnapGroupId)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IRnMarkerVisualization_SetVisualizationMesh_Proxy( 
    IRnMarkerVisualization * This,
    /* [in] */ GUID gSnapGroupId,
    /* [in] */ IRdMesh *spMesh);


void __RPC_STUB IRnMarkerVisualization_SetVisualizationMesh_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IRnMarkerVisualization_ResetVisualizationMesh_Proxy( 
    IRnMarkerVisualization * This,
    /* [in] */ GUID gSnapGroupId);


void __RPC_STUB IRnMarkerVisualization_ResetVisualizationMesh_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRnMarkerVisualization_INTERFACE_DEFINED__ */


#ifndef __IRnRectZoom_INTERFACE_DEFINED__
#define __IRnRectZoom_INTERFACE_DEFINED__

/* interface IRnRectZoom */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnRectZoom;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1BB3DCEA-9AD3-40CF-911D-91ED1A3B4A9C")
    IRnRectZoom : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnRectZoomVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnRectZoom * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnRectZoom * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnRectZoom * This);
        
        END_INTERFACE
    } IRnRectZoomVtbl;

    interface IRnRectZoom
    {
        CONST_VTBL struct IRnRectZoomVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnRectZoom_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnRectZoom_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnRectZoom_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnRectZoom_INTERFACE_DEFINED__ */


#ifndef __IRnAnchorCoordinateSystem_INTERFACE_DEFINED__
#define __IRnAnchorCoordinateSystem_INTERFACE_DEFINED__

/* interface IRnAnchorCoordinateSystem */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnAnchorCoordinateSystem;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5BBC0F53-0E89-4355-966B-0B50CFEF8808")
    IRnAnchorCoordinateSystem : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnAnchorCoordinateSystemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnAnchorCoordinateSystem * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnAnchorCoordinateSystem * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnAnchorCoordinateSystem * This);
        
        END_INTERFACE
    } IRnAnchorCoordinateSystemVtbl;

    interface IRnAnchorCoordinateSystem
    {
        CONST_VTBL struct IRnAnchorCoordinateSystemVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnAnchorCoordinateSystem_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnAnchorCoordinateSystem_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnAnchorCoordinateSystem_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnAnchorCoordinateSystem_INTERFACE_DEFINED__ */


#ifndef __IRnWheelSlider_INTERFACE_DEFINED__
#define __IRnWheelSlider_INTERFACE_DEFINED__

/* interface IRnWheelSlider */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnWheelSlider;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0CF08203-B1BA-4a60-B002-BCC457F72B20")
    IRnWheelSlider : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnWheelSliderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnWheelSlider * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnWheelSlider * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnWheelSlider * This);
        
        END_INTERFACE
    } IRnWheelSliderVtbl;

    interface IRnWheelSlider
    {
        CONST_VTBL struct IRnWheelSliderVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnWheelSlider_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnWheelSlider_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnWheelSlider_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnWheelSlider_INTERFACE_DEFINED__ */


#ifndef __IRnToggleListValue_INTERFACE_DEFINED__
#define __IRnToggleListValue_INTERFACE_DEFINED__

/* interface IRnToggleListValue */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnToggleListValue;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A1FFBC57-835F-4327-BC97-CAC03134D6A9")
    IRnToggleListValue : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnToggleListValueVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnToggleListValue * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnToggleListValue * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnToggleListValue * This);
        
        END_INTERFACE
    } IRnToggleListValueVtbl;

    interface IRnToggleListValue
    {
        CONST_VTBL struct IRnToggleListValueVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnToggleListValue_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnToggleListValue_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnToggleListValue_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnToggleListValue_INTERFACE_DEFINED__ */


#ifndef __IRnAxisSlider_INTERFACE_DEFINED__
#define __IRnAxisSlider_INTERFACE_DEFINED__

/* interface IRnAxisSlider */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnAxisSlider;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("226B2952-9B38-4107-9BE9-853B36F4B7DD")
    IRnAxisSlider : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnAxisSliderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnAxisSlider * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnAxisSlider * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnAxisSlider * This);
        
        END_INTERFACE
    } IRnAxisSliderVtbl;

    interface IRnAxisSlider
    {
        CONST_VTBL struct IRnAxisSliderVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnAxisSlider_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnAxisSlider_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnAxisSlider_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnAxisSlider_INTERFACE_DEFINED__ */


#ifndef __IRnInvertValue_INTERFACE_DEFINED__
#define __IRnInvertValue_INTERFACE_DEFINED__

/* interface IRnInvertValue */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnInvertValue;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("454258B7-E81A-4dbb-8C55-FF5DDD1BB271")
    IRnInvertValue : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnInvertValueVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnInvertValue * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnInvertValue * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnInvertValue * This);
        
        END_INTERFACE
    } IRnInvertValueVtbl;

    interface IRnInvertValue
    {
        CONST_VTBL struct IRnInvertValueVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnInvertValue_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnInvertValue_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnInvertValue_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnInvertValue_INTERFACE_DEFINED__ */


#ifndef __IRnOfflineRenderArea_INTERFACE_DEFINED__
#define __IRnOfflineRenderArea_INTERFACE_DEFINED__

/* interface IRnOfflineRenderArea */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnOfflineRenderArea;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E84E2E5B-07BA-4D95-B34D-13CF080D578C")
    IRnOfflineRenderArea : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnOfflineRenderAreaVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnOfflineRenderArea * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnOfflineRenderArea * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnOfflineRenderArea * This);
        
        END_INTERFACE
    } IRnOfflineRenderAreaVtbl;

    interface IRnOfflineRenderArea
    {
        CONST_VTBL struct IRnOfflineRenderAreaVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnOfflineRenderArea_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnOfflineRenderArea_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnOfflineRenderArea_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnOfflineRenderArea_INTERFACE_DEFINED__ */


#ifndef __IRsWidgetProceduralSurface_INTERFACE_DEFINED__
#define __IRsWidgetProceduralSurface_INTERFACE_DEFINED__

/* interface IRsWidgetProceduralSurface */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsWidgetProceduralSurface;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("38C16E94-51E7-43c6-B503-0B0C88A9A1A0")
    IRsWidgetProceduralSurface : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetRaycastParameters( 
            /* [in] */ RtFloat fDistance,
            /* [in] */ RtUlong dwObjectId,
            /* [in] */ RtPoint *ptNearestPt) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsWidgetProceduralSurfaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsWidgetProceduralSurface * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsWidgetProceduralSurface * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsWidgetProceduralSurface * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetRaycastParameters )( 
            IRsWidgetProceduralSurface * This,
            /* [in] */ RtFloat fDistance,
            /* [in] */ RtUlong dwObjectId,
            /* [in] */ RtPoint *ptNearestPt);
        
        END_INTERFACE
    } IRsWidgetProceduralSurfaceVtbl;

    interface IRsWidgetProceduralSurface
    {
        CONST_VTBL struct IRsWidgetProceduralSurfaceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsWidgetProceduralSurface_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsWidgetProceduralSurface_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsWidgetProceduralSurface_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsWidgetProceduralSurface_SetRaycastParameters(This,fDistance,dwObjectId,ptNearestPt)	\
    (This)->lpVtbl -> SetRaycastParameters(This,fDistance,dwObjectId,ptNearestPt)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRsWidgetProceduralSurface_SetRaycastParameters_Proxy( 
    IRsWidgetProceduralSurface * This,
    /* [in] */ RtFloat fDistance,
    /* [in] */ RtUlong dwObjectId,
    /* [in] */ RtPoint *ptNearestPt);


void __RPC_STUB IRsWidgetProceduralSurface_SetRaycastParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsWidgetProceduralSurface_INTERFACE_DEFINED__ */


#ifndef __IRnControlCage_INTERFACE_DEFINED__
#define __IRnControlCage_INTERFACE_DEFINED__

/* interface IRnControlCage */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnControlCage;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("934E2914-E507-4d92-A0B8-7D76B2DC494E")
    IRnControlCage : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnControlCageVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnControlCage * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnControlCage * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnControlCage * This);
        
        END_INTERFACE
    } IRnControlCageVtbl;

    interface IRnControlCage
    {
        CONST_VTBL struct IRnControlCageVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnControlCage_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnControlCage_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnControlCage_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnControlCage_INTERFACE_DEFINED__ */


#ifndef __IRcTargetChangedSync_INTERFACE_DEFINED__
#define __IRcTargetChangedSync_INTERFACE_DEFINED__

/* interface IRcTargetChangedSync */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcTargetChangedSync;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2712631C-7D04-44C3-BF62-FDE12B84101A")
    IRcTargetChangedSync : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetActiveWidget( 
            /* [in] */ IRsBaseNode *pNode) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRcTargetChangedSyncVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcTargetChangedSync * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcTargetChangedSync * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcTargetChangedSync * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetActiveWidget )( 
            IRcTargetChangedSync * This,
            /* [in] */ IRsBaseNode *pNode);
        
        END_INTERFACE
    } IRcTargetChangedSyncVtbl;

    interface IRcTargetChangedSync
    {
        CONST_VTBL struct IRcTargetChangedSyncVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcTargetChangedSync_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcTargetChangedSync_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcTargetChangedSync_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRcTargetChangedSync_SetActiveWidget(This,pNode)	\
    (This)->lpVtbl -> SetActiveWidget(This,pNode)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRcTargetChangedSync_SetActiveWidget_Proxy( 
    IRcTargetChangedSync * This,
    /* [in] */ IRsBaseNode *pNode);


void __RPC_STUB IRcTargetChangedSync_SetActiveWidget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRcTargetChangedSync_INTERFACE_DEFINED__ */


#ifndef __IRcUpdateWidget_INTERFACE_DEFINED__
#define __IRcUpdateWidget_INTERFACE_DEFINED__

/* interface IRcUpdateWidget */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcUpdateWidget;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2EB3D236-3557-4E6F-8E90-D2AA8AF6E82F")
    IRcUpdateWidget : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcUpdateWidgetVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcUpdateWidget * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcUpdateWidget * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcUpdateWidget * This);
        
        END_INTERFACE
    } IRcUpdateWidgetVtbl;

    interface IRcUpdateWidget
    {
        CONST_VTBL struct IRcUpdateWidgetVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcUpdateWidget_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcUpdateWidget_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcUpdateWidget_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcUpdateWidget_INTERFACE_DEFINED__ */


#ifndef __IRnActivationScript_INTERFACE_DEFINED__
#define __IRnActivationScript_INTERFACE_DEFINED__

/* interface IRnActivationScript */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnActivationScript;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B19F4B0F-CB7F-408c-A0A7-FF681326D215")
    IRnActivationScript : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnActivationScriptVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnActivationScript * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnActivationScript * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnActivationScript * This);
        
        END_INTERFACE
    } IRnActivationScriptVtbl;

    interface IRnActivationScript
    {
        CONST_VTBL struct IRnActivationScriptVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnActivationScript_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnActivationScript_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnActivationScript_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnActivationScript_INTERFACE_DEFINED__ */



#ifndef __Widgets_LIBRARY_DEFINED__
#define __Widgets_LIBRARY_DEFINED__

/* library Widgets */
/* [helpstring][uuid][version] */ 


EXTERN_C const IID LIBID_Widgets;

EXTERN_C const CLSID CLSID_CRdWidgetParameters;

#ifdef __cplusplus

class DECLSPEC_UUID("AA6182B3-5377-434b-892E-07BE2AF6D512")
CRdWidgetParameters;
#endif

EXTERN_C const CLSID CLSID_CRnWidgetSubsystem;

#ifdef __cplusplus

class DECLSPEC_UUID("96FFFA73-D372-4489-80BB-C0DB9550D29D")
CRnWidgetSubsystem;
#endif

EXTERN_C const CLSID CLSID_CRfMarkerVisualization;

#ifdef __cplusplus

class DECLSPEC_UUID("4490180F-A431-46a7-B7A1-BA79FC5CB5E3")
CRfMarkerVisualization;
#endif

EXTERN_C const CLSID CLSID_CRpWidgets;

#ifdef __cplusplus

class DECLSPEC_UUID("9AAAE17C-E21B-4ece-9928-01F06785F533")
CRpWidgets;
#endif

EXTERN_C const CLSID CLSID_CRiWidgets;

#ifdef __cplusplus

class DECLSPEC_UUID("1BFEA736-62F6-4e05-BCB9-33458EFB8505")
CRiWidgets;
#endif

EXTERN_C const CLSID CLSID_CRdWidgetActivationRequest;

#ifdef __cplusplus

class DECLSPEC_UUID("58C92110-4E20-4ac9-BFC3-BE85446611CD")
CRdWidgetActivationRequest;
#endif

EXTERN_C const CLSID CLSID_CRdWidgetMatchParameters;

#ifdef __cplusplus

class DECLSPEC_UUID("5FF581A3-8944-4AAA-AFCE-504CB91B8A90")
CRdWidgetMatchParameters;
#endif
#endif /* __Widgets_LIBRARY_DEFINED__ */

/* Additional Prototypes for ALL interfaces */

unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long *, unsigned long            , BSTR * ); 
unsigned char * __RPC_USER  BSTR_UserMarshal(  unsigned long *, unsigned char *, BSTR * ); 
unsigned char * __RPC_USER  BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * ); 
void                      __RPC_USER  BSTR_UserFree(     unsigned long *, BSTR * ); 

unsigned long             __RPC_USER  VARIANT_UserSize(     unsigned long *, unsigned long            , VARIANT * ); 
unsigned char * __RPC_USER  VARIANT_UserMarshal(  unsigned long *, unsigned char *, VARIANT * ); 
unsigned char * __RPC_USER  VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * ); 
void                      __RPC_USER  VARIANT_UserFree(     unsigned long *, VARIANT * ); 

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


