message: add release() to C++ wrappers
diff: @@ -80,6 +80,9 @@ namespace ospray {
  //! Commit to ospray
  virtual void commit() const = 0;
  + //! Release the handle, sets the held handle instance to 'nullptr'
  + virtual void release() = 0;
  +
  //! Get the underlying generic OSPObject handle
  virtual OSPObject object() const = 0;
  @@ -132,6 +135,8 @@ namespace ospray {
  void commit() const override;
  + void release() override;
  +
  OSPObject object() const override;
  //! Get the underlying specific OSP* handle
  @@ -140,7 +145,6 @@ namespace ospray {
  //! return whether the given object is valid, or NULL
  inline operator bool () const { return handle() != nullptr; }
  -
  protected:
  OSP_TYPE ospObject;
  @@ -321,6 +325,13 @@ namespace ospray {
  ospCommit(ospObject);
  }
  + template <typename OSP_TYPE>
  + inline void ManagedObject_T<OSP_TYPE>::release()
  + {
  + ospRelease(ospObject);
  + ospObject = nullptr;
  + }
  +
  template <typename OSP_TYPE>
  OSPObject ManagedObject_T<OSP_TYPE>::object() const
  {
  