Class SoNodeDependencies

java.lang.Object
com.openinventor.inventor.Inventor
com.openinventor.inventor.caches.SoNodeDependencies
All Implemented Interfaces:
SafeDisposable

public class SoNodeDependencies extends Inventor implements SafeDisposable
This class is a cache handler that can be used to monitor the modifications made to elements or fields. In order to add new Elements or Fields to be monitored by the cache, use the appropriate addDependency() method.

If one of the added elements or fields has been modified since the last call to updateCache(), the isValid() method will return false, and a subsequent call to updateCache() will make it valid again.

Additionnally, the handled cache can be manually invalidated using the invalidate() method.

  • Constructor Details Link icon

    • SoNodeDependencies Link icon

      public SoNodeDependencies()
  • Method Details Link icon

    • isDisposable Link icon

      public boolean isDisposable()
      Description copied from interface: SafeDisposable
      Returns a boolean flag which indicates if it is safe to call SafeDisposable.dispose() on the object.
      Specified by:
      isDisposable in interface SafeDisposable
      Returns:
      true if the object can be disposed in a safe manner
    • dispose Link icon

      public boolean dispose()
      Description copied from class: Inventor
      Explicitly call this method to force object to dispose its unmanaged resources. The object may not be reused in the application code after this call.
      Specified by:
      dispose in interface SafeDisposable
      Overrides:
      dispose in class Inventor
      Returns:
      true if this object native resources were successfully disposed; false if it was already disposed or no native resources has been registered for this object.
    • invalidate Link icon

      public void invalidate()
      Manually invalidate the cache.
    • addDependency Link icon

      public void addDependency(Class<? extends Inventor> type, int classStackIndex)
      Add given element type as a dependency for the cache.
    • updateCache Link icon

      public void updateCache(SoState state)
      Update cache according to given state. After this call, the cache will be valid.
    • isValid Link icon

      public boolean isValid(SoState state)
      Returns true if the cache is valid for the given state.