3ds Max C++ API Reference
IImmediateInteractiveRenderingClient Class Referenceabstract

Immediate client is to get notifications as soon as they happen (by opposite to OnDemand client) More...

#include <InteractiveRenderingAPI_Subscription.h>

+ Inheritance diagram for IImmediateInteractiveRenderingClient:

Public Member Functions

virtual ~IImmediateInteractiveRenderingClient ()
 Destructor. More...
 
virtual bool MonitorActiveShadeView (IInteractiveRenderingCallback &callback, void *userData)=0
 Monitor the active view whatever it is : a camera, a viewport or a light. More...
 
virtual bool StopMonitoringActiveView (IInteractiveRenderingCallback &callback, void *userData)=0
 Stop monitoring active view. More...
 
- Public Member Functions inherited from IInteractiveRenderingClient
virtual ~IInteractiveRenderingClient ()
 Destructor. More...
 
virtual int VersionNumber () const =0
 returns the version number of the notification client More...
 
virtual void DebugPrintToFile (FILE *theFile) const =0
 Print what's monitored inside the client (debugging purpose) More...
 
- Public Member Functions inherited from IImmediateNotificationClient
virtual ~IImmediateNotificationClient ()
 
virtual bool MonitorNode (INode &node, NotifierType type, size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Destructor. More...
 
virtual bool MonitorMaterial (Mtl &mtl, size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Monitor this material events. More...
 
virtual bool MonitorTexmap (Texmap &texmap, size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Monitor this Texmap events. More...
 
virtual bool MonitorReferenceTarget (ReferenceTarget &refTarg, size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Monitor events on a generic reference target. More...
 
virtual bool MonitorViewport (int viewID, size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Monitor viewport events such as transform matrix changes (when you move the camera viewport while it's a viewport and not a Max camera) More...
 
virtual bool MonitorRenderEnvironment (size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Monitor render environment events (Tone operator for example) More...
 
virtual bool MonitorRenderSettings (size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Monitor render settings events (lock/unlock view for example) More...
 
virtual bool MonitorScene (size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Monitor scene events such as node added, file reset, file load, File import etc. More...
 
virtual bool StopMonitoringNode (INode &pNode, size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Stop monitoring this node Unregisters a previously registered notification callback. More...
 
virtual bool StopMonitoringMaterial (Mtl &pMtl, size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Stop monitoring this material Unregisters a previously registered notification callback. More...
 
virtual bool StopMonitoringTexmap (Texmap &pTexmap, size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Stop monitoring this texmap Unregisters a previously registered notification callback. More...
 
virtual bool StopMonitoringReferenceTarget (ReferenceTarget &refTarg, size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Stop monitoring a reference target Unregisters a previously registered notification callback. More...
 
virtual bool StopMonitoringViewport (int viewID, size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Stop monitoring this viewport Unregisters a previously registered notification callback. More...
 
virtual bool StopMonitoringRenderEnvironment (size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Stop monitoring render environment Unregisters a previously registered notification callback. More...
 
virtual bool StopMonitoringRenderSettings (size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Stop monitoring render settings Unregisters a previously registered notification callback. More...
 
virtual bool StopMonitoringScene (size_t monitoredEvents, INotificationCallback &callback, void *userData)=0
 Stop monitoring scene Unregisters a previously registered notification callback. More...
 
- Public Member Functions inherited from INotificationClient
virtual ~INotificationClient ()
 
virtual int VersionNumber () const =0
 Destructor. More...
 
virtual void EnableNotifications (bool enable)=0
 Enable notifications. More...
 
virtual bool NotificationsEnabled (void) const =0
 Check if notifications are enabled or disabled. More...
 
virtual void DebugPrintToFile (FILE *theFile) const =0
 Print what's monitored inside the client (debugging purpose) More...
 

Detailed Description

Immediate client is to get notifications as soon as they happen (by opposite to OnDemand client)

Constructor & Destructor Documentation

◆ ~IImmediateInteractiveRenderingClient()

virtual ~IImmediateInteractiveRenderingClient ( )
inlinevirtual

Destructor.

Member Function Documentation

◆ MonitorActiveShadeView()

virtual bool MonitorActiveShadeView ( IInteractiveRenderingCallback callback,
void userData 
)
pure virtual

Monitor the active view whatever it is : a camera, a viewport or a light.

This takes care of the lock/unlock view workflow for active shade. Also when the active view is changed to another view, you are called back and the new view is monitored automatically With this monitoring, you will events from notifierType : NotifierType_View and IViewEvent events

Parameters
callbackThe interface used to notify of new events.
userDataAn arbitrary pointer which is passed back, with the event, through INotificationCallback.
Returns
true if the active view is now monitored, false there was a problem

◆ StopMonitoringActiveView()

virtual bool StopMonitoringActiveView ( IInteractiveRenderingCallback callback,
void userData 
)
pure virtual

Stop monitoring active view.

Parameters
callbackThe notification callback passed to the Monitor method.
userDataThe user data passed to the Monitor method.
Returns
true if the active view is no longer monitored now, false if there was a problem