Module uim.codec.format.UIM_3_1_0_pb2
=====================================
Generated protocol buffer code.

Classes
-------

`BrushPrototype(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `COORDX_FIELD_NUMBER`
    :

    `COORDY_FIELD_NUMBER`
    :

    `COORDZ_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    `INDICES_FIELD_NUMBER`
    :

    `SHAPEURI_FIELD_NUMBER`
    :

    `SIZE_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `coordX`
    :   Getter for coordX.

    `coordY`
    :   Getter for coordY.

    `coordZ`
    :   Getter for coordZ.

    `indices`
    :   Getter for indices.

    `shapeURI`
    :   Getter for shapeURI.

    `size`
    :   Getter for size.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`Brushes(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `RASTERBRUSHES_FIELD_NUMBER`
    :

    `VECTORBRUSHES_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `rasterBrushes`
    :   Getter for rasterBrushes.

    `vectorBrushes`
    :   Getter for vectorBrushes.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`ChannelData(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `SENSORCHANNELID_FIELD_NUMBER`
    :

    `VALUES_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `sensorChannelID`
    :   Getter for sensorChannelID.

    `values`
    :   Getter for values.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`Environment(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `ID_FIELD_NUMBER`
    :

    `PROPERTIES_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `id`
    :   Getter for id.

    `properties`
    :   Getter for properties.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`InkData(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `BRUSHURIS_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    `PROPERTIES_FIELD_NUMBER`
    :

    `RENDERMODEURIS_FIELD_NUMBER`
    :

    `STROKES_FIELD_NUMBER`
    :

    `TRANSFORM_FIELD_NUMBER`
    :

    `UNITSCALEFACTOR_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `brushURIs`
    :   Getter for brushURIs.

    `properties`
    :   Getter for properties.

    `renderModeURIs`
    :   Getter for renderModeURIs.

    `strokes`
    :   Getter for strokes.

    `transform`
    :   Getter for transform.

    `unitScaleFactor`
    :   Getter for unitScaleFactor.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`InkInputProvider(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `ID_FIELD_NUMBER`
    :

    `PROPERTIES_FIELD_NUMBER`
    :

    `TYPE_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `id`
    :   Getter for id.

    `properties`
    :   Getter for properties.

    `type`
    :   Getter for type.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`InkOperation(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `ADD_FIELD_NUMBER`
    :

    `Add`
    :   Abstract base class for protocol messages.
        
        Protocol message classes are almost always generated by the protocol
        compiler.  These generated types subclass Message and implement the methods
        shown below.

    `COMPOSE_FIELD_NUMBER`
    :

    `Compose`
    :   Abstract base class for protocol messages.
        
        Protocol message classes are almost always generated by the protocol
        compiler.  These generated types subclass Message and implement the methods
        shown below.

    `DESCRIPTOR`
    :

    `REMOVE_FIELD_NUMBER`
    :

    `Remove`
    :   Abstract base class for protocol messages.
        
        Protocol message classes are almost always generated by the protocol
        compiler.  These generated types subclass Message and implement the methods
        shown below.

    `SELECT_FIELD_NUMBER`
    :

    `SPLIT_FIELD_NUMBER`
    :

    `Select`
    :   Abstract base class for protocol messages.
        
        Protocol message classes are almost always generated by the protocol
        compiler.  These generated types subclass Message and implement the methods
        shown below.

    `Split`
    :   Abstract base class for protocol messages.
        
        Protocol message classes are almost always generated by the protocol
        compiler.  These generated types subclass Message and implement the methods
        shown below.

    `TRANSFORM_FIELD_NUMBER`
    :

    `Transform`
    :   Abstract base class for protocol messages.
        
        Protocol message classes are almost always generated by the protocol
        compiler.  These generated types subclass Message and implement the methods
        shown below.

    `UPDATESELECTION_FIELD_NUMBER`
    :

    `UPDATE_FIELD_NUMBER`
    :

    `Update`
    :   Abstract base class for protocol messages.
        
        Protocol message classes are almost always generated by the protocol
        compiler.  These generated types subclass Message and implement the methods
        shown below.

    `UpdateSelection`
    :   Abstract base class for protocol messages.
        
        Protocol message classes are almost always generated by the protocol
        compiler.  These generated types subclass Message and implement the methods
        shown below.

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `add`
    :   Getter for add.

    `compose`
    :   Getter for compose.

    `remove`
    :   Getter for remove.

    `select`
    :   Getter for select.

    `split`
    :   Getter for split.

    `transform`
    :   Getter for transform.

    `update`
    :   Getter for update.

    `updateSelection`
    :   Getter for updateSelection.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`InkPath(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `LAYOUT_FIELD_NUMBER`
    :

    `PATHS_FIELD_NUMBER`
    :

    `PATH_FIELD_NUMBER`
    :

    `POINTPROPS_FIELD_NUMBER`
    :

    `TYPE_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `layout`
    :   Getter for layout.

    `path`
    :   Getter for path.

    `paths`
    :   Getter for paths.

    `pointProps`
    :   Getter for pointProps.

    `type`
    :   Getter for type.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`InkStructure(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `INKTREE_FIELD_NUMBER`
    :

    `TYPE_FIELD_NUMBER`
    :

    `VIEWS_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `inkTree`
    :   Getter for inkTree.

    `type`
    :   Getter for type.

    `views`
    :   Getter for views.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`InkTool(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `BLENDMODE_FIELD_NUMBER`
    :

    `CONTEXT_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    `RASTERBRUSH_FIELD_NUMBER`
    :

    `VECTORBRUSH_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `blendMode`
    :   Getter for blendMode.

    `context`
    :   Getter for context.

    `rasterBrush`
    :   Getter for rasterBrush.

    `vectorBrush`
    :   Getter for vectorBrush.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`InkTree(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `NAME_FIELD_NUMBER`
    :

    `TREE_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `name`
    :   Getter for name.

    `tree`
    :   Getter for tree.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`InputContext(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `ENVIRONMENTID_FIELD_NUMBER`
    :

    `ID_FIELD_NUMBER`
    :

    `SENSORCONTEXTID_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `environmentID`
    :   Getter for environmentID.

    `id`
    :   Getter for id.

    `sensorContextID`
    :   Getter for sensorContextID.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`InputContextData(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `ENVIRONMENTS_FIELD_NUMBER`
    :

    `INKINPUTPROVIDERS_FIELD_NUMBER`
    :

    `INPUTCONTEXTS_FIELD_NUMBER`
    :

    `INPUTDEVICES_FIELD_NUMBER`
    :

    `SENSORCONTEXTS_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `environments`
    :   Getter for environments.

    `inkInputProviders`
    :   Getter for inkInputProviders.

    `inputContexts`
    :   Getter for inputContexts.

    `inputDevices`
    :   Getter for inputDevices.

    `sensorContexts`
    :   Getter for sensorContexts.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`InputData(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `INPUTCONTEXTDATA_FIELD_NUMBER`
    :

    `SENSORDATA_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `inputContextData`
    :   Getter for inputContextData.

    `sensorData`
    :   Getter for sensorData.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`InputDevice(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `ID_FIELD_NUMBER`
    :

    `PROPERTIES_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `id`
    :   Getter for id.

    `properties`
    :   Getter for properties.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`Intersection(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `INTERVALS_FIELD_NUMBER`
    :

    `PATH_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `intervals`
    :   Getter for intervals.

    `path`
    :   Getter for path.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`Interval(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `FROMINDEX_FIELD_NUMBER`
    :

    `FROMTVALUE_FIELD_NUMBER`
    :

    `ID_FIELD_NUMBER`
    :

    `TOINDEX_FIELD_NUMBER`
    :

    `TOTVALUE_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `fromIndex`
    :   Getter for fromIndex.

    `fromTValue`
    :   Getter for fromTValue.

    `id`
    :   Getter for id.

    `toIndex`
    :   Getter for toIndex.

    `toTValue`
    :   Getter for toTValue.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`Matrix(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `M00_FIELD_NUMBER`
    :

    `M01_FIELD_NUMBER`
    :

    `M02_FIELD_NUMBER`
    :

    `M03_FIELD_NUMBER`
    :

    `M10_FIELD_NUMBER`
    :

    `M11_FIELD_NUMBER`
    :

    `M12_FIELD_NUMBER`
    :

    `M13_FIELD_NUMBER`
    :

    `M20_FIELD_NUMBER`
    :

    `M21_FIELD_NUMBER`
    :

    `M22_FIELD_NUMBER`
    :

    `M23_FIELD_NUMBER`
    :

    `M30_FIELD_NUMBER`
    :

    `M31_FIELD_NUMBER`
    :

    `M32_FIELD_NUMBER`
    :

    `M33_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `m00`
    :   Getter for m00.

    `m01`
    :   Getter for m01.

    `m02`
    :   Getter for m02.

    `m03`
    :   Getter for m03.

    `m10`
    :   Getter for m10.

    `m11`
    :   Getter for m11.

    `m12`
    :   Getter for m12.

    `m13`
    :   Getter for m13.

    `m20`
    :   Getter for m20.

    `m21`
    :   Getter for m21.

    `m22`
    :   Getter for m22.

    `m23`
    :   Getter for m23.

    `m30`
    :   Getter for m30.

    `m31`
    :   Getter for m31.

    `m32`
    :   Getter for m32.

    `m33`
    :   Getter for m33.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`Node(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `BOUNDS_FIELD_NUMBER`
    :

    `DEPTH_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    `GROUPID_FIELD_NUMBER`
    :

    `INDEX_FIELD_NUMBER`
    :

    `INTERVAL_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `bounds`
    :   Getter for bounds.

    `depth`
    :   Getter for depth.

    `groupID`
    :   Getter for groupID.

    `index`
    :   Getter for index.

    `interval`
    :   Getter for interval.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`Path(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DATA_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `data`
    :   Getter for data.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`PathPointContext(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `COLORMASK_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    `DYNAMICS_FIELD_NUMBER`
    :

    `STATICS_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `colorMask`
    :   Getter for colorMask.

    `dynamics`
    :   Getter for dynamics.

    `statics`
    :   Getter for statics.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`PathPointProperties(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `COLOR_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    `OFFSETX_FIELD_NUMBER`
    :

    `OFFSETY_FIELD_NUMBER`
    :

    `OFFSETZ_FIELD_NUMBER`
    :

    `ROTATION_FIELD_NUMBER`
    :

    `SCALEX_FIELD_NUMBER`
    :

    `SCALEY_FIELD_NUMBER`
    :

    `SCALEZ_FIELD_NUMBER`
    :

    `SIZE_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `color`
    :   Getter for color.

    `offsetX`
    :   Getter for offsetX.

    `offsetY`
    :   Getter for offsetY.

    `offsetZ`
    :   Getter for offsetZ.

    `rotation`
    :   Getter for rotation.

    `scaleX`
    :   Getter for scaleX.

    `scaleY`
    :   Getter for scaleY.

    `scaleZ`
    :   Getter for scaleZ.

    `size`
    :   Getter for size.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`PathPointSettings(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `ALPHA_FIELD_NUMBER`
    :

    `BLUE_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    `GREEN_FIELD_NUMBER`
    :

    `OFFSETX_FIELD_NUMBER`
    :

    `OFFSETY_FIELD_NUMBER`
    :

    `OFFSETZ_FIELD_NUMBER`
    :

    `RED_FIELD_NUMBER`
    :

    `ROTATION_FIELD_NUMBER`
    :

    `SCALEX_FIELD_NUMBER`
    :

    `SCALEY_FIELD_NUMBER`
    :

    `SCALEZ_FIELD_NUMBER`
    :

    `SIZE_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `alpha`
    :   Getter for alpha.

    `blue`
    :   Getter for blue.

    `green`
    :   Getter for green.

    `offsetX`
    :   Getter for offsetX.

    `offsetY`
    :   Getter for offsetY.

    `offsetZ`
    :   Getter for offsetZ.

    `red`
    :   Getter for red.

    `rotation`
    :   Getter for rotation.

    `scaleX`
    :   Getter for scaleX.

    `scaleY`
    :   Getter for scaleY.

    `scaleZ`
    :   Getter for scaleZ.

    `size`
    :   Getter for size.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`Paths(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DATA_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `data`
    :   Getter for data.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`Properties(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `PROPERTIES_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `properties`
    :   Getter for properties.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`Property(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `NAME_FIELD_NUMBER`
    :

    `VALUE_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `name`
    :   Getter for name.

    `value`
    :   Getter for value.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`PropertySettings(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `ALTITUDE_FIELD_NUMBER`
    :

    `DEPENDENCIES_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    `PRESSURE_FIELD_NUMBER`
    :

    `RADIUSX_FIELD_NUMBER`
    :

    `RADIUSY_FIELD_NUMBER`
    :

    `RESOLVEURI_FIELD_NUMBER`
    :

    `VALUE_FIELD_NUMBER`
    :

    `VELOCITY_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `altitude`
    :   Getter for altitude.

    `dependencies`
    :   Getter for dependencies.

    `pressure`
    :   Getter for pressure.

    `radiusX`
    :   Getter for radiusX.

    `radiusY`
    :   Getter for radiusY.

    `resolveURI`
    :   Getter for resolveURI.

    `value`
    :   Getter for value.

    `velocity`
    :   Getter for velocity.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`Range(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `MAX_FIELD_NUMBER`
    :

    `MIN_FIELD_NUMBER`
    :

    `REMAPURI_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `max`
    :   Getter for max.

    `min`
    :   Getter for min.

    `remapURI`
    :   Getter for remapURI.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`RasterBrush(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `BLENDMODE_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    `FILLHEIGHT_FIELD_NUMBER`
    :

    `FILLTEXTUREURI_FIELD_NUMBER`
    :

    `FILLTEXTURE_FIELD_NUMBER`
    :

    `FILLWIDTH_FIELD_NUMBER`
    :

    `NAME_FIELD_NUMBER`
    :

    `RANDOMIZEFILL_FIELD_NUMBER`
    :

    `ROTATIONMODE_FIELD_NUMBER`
    :

    `SCATTERING_FIELD_NUMBER`
    :

    `SHAPETEXTUREURI_FIELD_NUMBER`
    :

    `SHAPETEXTURE_FIELD_NUMBER`
    :

    `SPACING_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `blendMode`
    :   Getter for blendMode.

    `fillHeight`
    :   Getter for fillHeight.

    `fillTexture`
    :   Getter for fillTexture.

    `fillTextureURI`
    :   Getter for fillTextureURI.

    `fillWidth`
    :   Getter for fillWidth.

    `name`
    :   Getter for name.

    `randomizeFill`
    :   Getter for randomizeFill.

    `rotationMode`
    :   Getter for rotationMode.

    `scattering`
    :   Getter for scattering.

    `shapeTexture`
    :   Getter for shapeTexture.

    `shapeTextureURI`
    :   Getter for shapeTextureURI.

    `spacing`
    :   Getter for spacing.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`Rectangle(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `HEIGHT_FIELD_NUMBER`
    :

    `WIDTH_FIELD_NUMBER`
    :

    `X_FIELD_NUMBER`
    :

    `Y_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `height`
    :   Getter for height.

    `width`
    :   Getter for width.

    `x`
    :   Getter for x.

    `y`
    :   Getter for y.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`Segment(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `COMPLETE_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    `INK_FIELD_NUMBER`
    :

    `POINTERID_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `complete`
    :   Getter for complete.

    `ink`
    :   Getter for ink.

    `pointerID`
    :   Getter for pointerID.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`SensorChannel(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `ID_FIELD_NUMBER`
    :

    `MAX_FIELD_NUMBER`
    :

    `METRIC_FIELD_NUMBER`
    :

    `MIN_FIELD_NUMBER`
    :

    `PRECISION_FIELD_NUMBER`
    :

    `RESOLUTION_FIELD_NUMBER`
    :

    `TYPE_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `id`
    :   Getter for id.

    `max`
    :   Getter for max.

    `metric`
    :   Getter for metric.

    `min`
    :   Getter for min.

    `precision`
    :   Getter for precision.

    `resolution`
    :   Getter for resolution.

    `type`
    :   Getter for type.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`SensorChannelsContext(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `CHANNELS_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    `ID_FIELD_NUMBER`
    :

    `INKINPUTPROVIDERID_FIELD_NUMBER`
    :

    `INPUTDEVICEID_FIELD_NUMBER`
    :

    `LATENCY_FIELD_NUMBER`
    :

    `SAMPLINGRATEHINT_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `channels`
    :   Getter for channels.

    `id`
    :   Getter for id.

    `inkInputProviderID`
    :   Getter for inkInputProviderID.

    `inputDeviceID`
    :   Getter for inputDeviceID.

    `latency`
    :   Getter for latency.

    `samplingRateHint`
    :   Getter for samplingRateHint.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`SensorContext(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `ID_FIELD_NUMBER`
    :

    `SENSORCHANNELSCONTEXT_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `id`
    :   Getter for id.

    `sensorChannelsContext`
    :   Getter for sensorChannelsContext.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`SensorData(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DATACHANNELS_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    `ID_FIELD_NUMBER`
    :

    `INPUTCONTEXTID_FIELD_NUMBER`
    :

    `STATE_FIELD_NUMBER`
    :

    `TIMESTAMP_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `dataChannels`
    :   Getter for dataChannels.

    `id`
    :   Getter for id.

    `inputContextID`
    :   Getter for inputContextID.

    `state`
    :   Getter for state.

    `timestamp`
    :   Getter for timestamp.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`Stroke(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `BRUSHURIINDEX_FIELD_NUMBER`
    :

    `BRUSHURIVALUE_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    `ENDPARAMETER_FIELD_NUMBER`
    :

    `ID_FIELD_NUMBER`
    :

    `PRECISIONS_FIELD_NUMBER`
    :

    `PROPERTIESINDEX_FIELD_NUMBER`
    :

    `PROPERTIESVALUE_FIELD_NUMBER`
    :

    `RANDOMSEED_FIELD_NUMBER`
    :

    `RENDERMODEURIINDEX_FIELD_NUMBER`
    :

    `RENDERMODEURIVALUE_FIELD_NUMBER`
    :

    `SENSORDATAID_FIELD_NUMBER`
    :

    `SENSORDATAMAPPING_FIELD_NUMBER`
    :

    `SENSORDATAOFFSET_FIELD_NUMBER`
    :

    `SPLINECOMPRESSED_FIELD_NUMBER`
    :

    `SPLINEDATA_FIELD_NUMBER`
    :

    `STARTPARAMETER_FIELD_NUMBER`
    :

    `SplineCompressed`
    :   Abstract base class for protocol messages.
        
        Protocol message classes are almost always generated by the protocol
        compiler.  These generated types subclass Message and implement the methods
        shown below.

    `SplineData`
    :   Abstract base class for protocol messages.
        
        Protocol message classes are almost always generated by the protocol
        compiler.  These generated types subclass Message and implement the methods
        shown below.

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `brushURIIndex`
    :   Getter for brushURIIndex.

    `brushURIValue`
    :   Getter for brushURIValue.

    `endParameter`
    :   Getter for endParameter.

    `id`
    :   Getter for id.

    `precisions`
    :   Getter for precisions.

    `propertiesIndex`
    :   Getter for propertiesIndex.

    `propertiesValue`
    :   Getter for propertiesValue.

    `randomSeed`
    :   Getter for randomSeed.

    `renderModeURIIndex`
    :   Getter for renderModeURIIndex.

    `renderModeURIValue`
    :   Getter for renderModeURIValue.

    `sensorDataID`
    :   Getter for sensorDataID.

    `sensorDataMapping`
    :   Getter for sensorDataMapping.

    `sensorDataOffset`
    :   Getter for sensorDataOffset.

    `splineCompressed`
    :   Getter for splineCompressed.

    `splineData`
    :   Getter for splineData.

    `startParameter`
    :   Getter for startParameter.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`StrokesContext(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `PATH_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `path`
    :   Getter for path.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`Style(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `BRUSHURI_FIELD_NUMBER`
    :

    `COLOR_FIELD_NUMBER`
    :

    `DESCRIPTOR`
    :

    `POINTERID_FIELD_NUMBER`
    :

    `RANDOMSEED_FIELD_NUMBER`
    :

    `RENDERMODEURI_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `brushURI`
    :   Getter for brushURI.

    `color`
    :   Getter for color.

    `pointerID`
    :   Getter for pointerID.

    `randomSeed`
    :   Getter for randomSeed.

    `renderModeURI`
    :   Getter for renderModeURI.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`TripleStore(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `STATEMENTS_FIELD_NUMBER`
    :

    `SemanticTriple`
    :   Abstract base class for protocol messages.
        
        Protocol message classes are almost always generated by the protocol
        compiler.  These generated types subclass Message and implement the methods
        shown below.

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `statements`
    :   Getter for statements.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.

`VectorBrush(**kwargs)`
:   Abstract base class for protocol messages.
    
    Protocol message classes are almost always generated by the protocol
    compiler.  These generated types subclass Message and implement the methods
    shown below.

    ### Ancestors (in MRO)

    * google.protobuf.message.Message

    ### Class variables

    `DESCRIPTOR`
    :

    `NAME_FIELD_NUMBER`
    :

    `PROTOTYPE_FIELD_NUMBER`
    :

    `SPACING_FIELD_NUMBER`
    :

    ### Static methods

    `FromString(s)`
    :

    `RegisterExtension(extension_handle)`
    :

    ### Instance variables

    `name`
    :   Getter for name.

    `prototype`
    :   Getter for prototype.

    `spacing`
    :   Getter for spacing.

    ### Methods

    `ByteSize(self)`
    :

    `Clear(self)`
    :

    `ClearField(self, field_name)`
    :

    `DiscardUnknownFields(self)`
    :

    `FindInitializationErrors(self)`
    :   Finds required fields which are not initialized.
        
        Returns:
          A list of strings.  Each string is a path to an uninitialized field from
          the top-level message, e.g. "foo.bar[5].baz".

    `HasField(self, field_name)`
    :

    `IsInitialized(self, errors=None)`
    :   Checks if all required fields of a message are set.
        
        Args:
          errors:  A list which, if provided, will be populated with the field
                   paths of all missing required fields.
        
        Returns:
          True iff the specified message has all required fields set.

    `ListFields(self)`
    :

    `MergeFrom(self, msg)`
    :

    `MergeFromString(self, serialized)`
    :

    `SerializePartialToString(self, **kwargs)`
    :

    `SerializeToString(self, **kwargs)`
    :

    `SetInParent(self)`
    :   Sets the _cached_byte_size_dirty bit to true,
        and propagates this to our listener iff this was a state change.

    `UnknownFields(self)`
    :

    `WhichOneof(self, oneof_name)`
    :   Returns the name of the currently set field inside a oneof, or None.