30#ifndef vtkRemoteSession_h
31#define vtkRemoteSession_h
34#include "vtkWebAssemblySessionModule.h"
38#include <emscripten/val.h>
40VTK_ABI_NAMESPACE_BEGIN
76 emscripten::val
GetState(vtkTypeUInt32
object);
81 void Set(vtkTypeUInt32
object, emscripten::val properties);
86 emscripten::val
Get(vtkTypeUInt32
object);
131 emscripten::val
Invoke(vtkTypeUInt32
object, const
std::
string& methodName, emscripten::val args);
159 bool SetSize(vtkTypeUInt32
object,
int width,
int height);
205 vtkTypeUInt32
object, const
std::
string& eventName, emscripten::val jsFunction);
213 bool UnObserve(vtkTypeUInt32
object,
unsigned long tag);
227 void Import(const
std::
string& stateFileName, const
std::
string& blobFileName);
emscripten::val GetAllDependencies(vtkTypeUInt32 object)
Retrieves all dependencies of a VTK object.
bool SetSize(vtkTypeUInt32 object, int width, int height)
Sets the size of a VTK object.
bool UnRegisterBlob(const std::string &hash)
Unregisters a binary blob from the session.
bool Render(vtkTypeUInt32 object)
Renders a VTK object.
bool RegisterState(emscripten::val state)
Registers a state with the session.
emscripten::val GetBlob(const std::string &hash)
Retrieves a binary blob by its hash.
bool UnObserve(vtkTypeUInt32 object, unsigned long tag)
Removes an observer from a VTK object.
void PrintSceneManagerInformation()
Prints information about the scene manager.
void SetInvokerLogVerbosity(const std::string &verbosityLevel)
Sets the verbosity level for the invoker log.
std::size_t GetTotalBlobMemoryUsage()
Retrieves the total memory usage of all blobs.
~vtkRemoteSession()
Destructor for vtkRemoteSession cleans up the session.
emscripten::val GetState(vtkTypeUInt32 object)
Retrieves the state associated with a VTK object handle.
void SetDeserializerLogVerbosity(const std::string &verbosityLevel)
Sets the verbosity level for the deserializer log.
void Set(vtkTypeUInt32 object, emscripten::val properties)
Set properties of a VTKObject.
bool StartEventLoop(vtkTypeUInt32 object)
Starts an event loop for a VTK object.
void Export(const std::string &fileName)
Exports states into fileName.states.json and blobs into fileName.blobs.json.
void PruneUnusedStates()
Removes unused states from the session.
std::size_t GetTotalVTKDataObjectMemoryUsage()
Retrieves the total memory usage of all VTK data objects.
vtkRemoteSession()
Constructor for vtkRemoteSession initializes the session.
bool ResetCamera(vtkTypeUInt32 object)
Resets the camera for a VTK object.
void UpdateObjectsFromStates()
Updates all VTK objects from their corresponding states.
void Clear()
Clears all states, objects, and blobs from the session.
void UnSkipProperty(const std::string &className, const std::string &propertyName)
Unskips a previously skipped property.
emscripten::val Invoke(vtkTypeUInt32 object, const std::string &methodName, emscripten::val args)
Invokes a method on a VTK object.
unsigned long Observe(vtkTypeUInt32 object, const std::string &eventName, emscripten::val jsFunction)
Observes an event on a VTK object.
void UpdateObjectFromState(emscripten::val state)
Updates a VTK object from a given state.
void PruneUnusedObjects()
Removes unused VTK objects from the session.
void Import(const std::string &stateFileName, const std::string &blobFileName)
Imports states and blobs from files.
void UpdateStatesFromObjects()
Updates all states from their corresponding VTK objects.
void SetSerializerLogVerbosity(const std::string &verbosityLevel)
Sets the verbosity level for the serializer log.
void UpdateStateFromObject(vtkTypeUInt32 object)
Updates the state from a given VTK object.
void SkipProperty(const std::string &className, const std::string &propertyName)
Skips a property during serialization or deserialization.
bool StopEventLoop(vtkTypeUInt32 object)
Stops an event loop for a VTK object.
emscripten::val Get(vtkTypeUInt32 object)
Get all properties of a VTKObject.
bool UnRegisterState(vtkTypeUInt32 object)
Unregisters a state associated with a VTK object handle.
bool BindRenderWindow(vtkTypeUInt32 object, const std::string canvasSelector)
Binds a render window to a VTK object.
void PruneUnusedBlobs()
Removes unused blobs from the session.
void SetObjectManagerLogVerbosity(const std::string &verbosityLevel)
Sets the verbosity level for the object manager log.
bool RegisterBlob(const std::string &hash, emscripten::val jsArray)
Registers a binary blob with the session.
#define VTK_DEPRECATED_IN_9_5_0(reason)
struct vtkSessionImpl * vtkSession
struct vtkSessionImpl * vtkSession