This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.
TITLE:: FluidManipulationClient
summary:: A base case for FluidManipulation classes
categories:: FluidManipulation
DESCRIPTION::
A utility base class for FluidManipulation classes, that deals with common functionality (wrapping a link::Classes/Synth:: in the instance, etc.)
Not intended to be used directly.
CLASSMETHODS::
PRIVATE:: nonBlocking
METHOD:: new
Language-side constructor. Internally, this creates a new synth around an instance of the sub-class being constructed, and maintains a variable pointing to the synth, so that it can be communicated with.
ARGUMENT:: server
The link::Classes/Server:: this instance is running on
ARGUMENT:: ... args
Arguments specific to the sub-class at hand
returns:: A new instance
INSTANCEMETHODS::
private:: pr_sendMsg
METHOD:: synth
Fluid Manipulation client objects are server-side entities, wrapped in a Node to manage communication between language and object. For this, a link::Classes/Synth:: is needed, as the representation of a server node.
returns:: the instance's link::Classes/Synth::
METHOD:: server
The link::Classes/Server:: that our instance's object is running on
returns:: a link::Classes/Server::
METHOD:: read
Read the object's data from a JSON file on disk, replacing the current contents.
METHOD:: write
Write the object's data to disk as a JSON file.
METHOD:: size
Report the number of items currently in the object's data.
METHOD:: cols
Report the dimensionality of the object's data. If action is nil, will default to posting result.
METHOD:: dump
Get the contents of the object's data as a Dictionary (note: uses a temporary file under the hood);
METHOD:: load
Fill the object with the contents of a dictionary, replacing its current contents (note: uses a temporary file under the hood).