Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SetFilter #851

Merged
merged 10 commits into from
Jun 2, 2014
Merged

SetFilter #851

merged 10 commits into from
Jun 2, 2014

Commits on May 28, 2014

  1. Consolidated FilteredSceneProcessor filter access into helper methods.

    At a later date this will give us a single place to control the Context in which filter queries are made.
    johnhaddon committed May 28, 2014
    Configuration menu
    Copy the full SHA
    50a09a6 View commit details
    Browse the repository at this point in the history
  2. First pass at SetFilter.

    johnhaddon committed May 28, 2014
    Configuration menu
    Copy the full SHA
    5e143de View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    fced40c View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d3ba8bc View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    6ad982d View commit details
    Browse the repository at this point in the history
  6. Added UI file for SetFilter.

    This includes a useful right click menu for populating the set plug with the names of sets available in the connected scenes.
    johnhaddon committed May 28, 2014
    Configuration menu
    Copy the full SHA
    7c6d17a View commit details
    Browse the repository at this point in the history
  7. Replaced custom Filter context with field in standard context.

    Now we have an optimised Context implementation, the performance difference appears negligible, and using the standard Context for everything is preferable over having special cases.
    
    I did consider modifying the Context class to allow RunTimeTyped storage rather than just Data storage, so that the scene plug could be stored without encoding as uint64_t, but decided against it. Because RunTimeTyped (or GraphComponent, or Plug) doesn't have a copy() method, it would make implementing the ownership semantics the Context requires impossible, or would require documenting special cases for non-copyable types. It seems preferable to have one nasty isolated cast for an isolated use case than to confuse an API which is central to everything.
    johnhaddon committed May 28, 2014
    Configuration menu
    Copy the full SHA
    e44813e View commit details
    Browse the repository at this point in the history
  8. Added context argument to FilteredSceneProcessor utility methods.

    Since we already have access to the context, it doesn't make sense to pull it out of thread local storage again.
    johnhaddon committed May 28, 2014
    Configuration menu
    Copy the full SHA
    cfba43d View commit details
    Browse the repository at this point in the history
  9. Removed unnecessary Context construction in Prune and Isolate.

    Also improved documentation in FilteredSceneProcessor to reduce the chance of doing it again.
    johnhaddon committed May 28, 2014
    Configuration menu
    Copy the full SHA
    972a609 View commit details
    Browse the repository at this point in the history
  10. Implemented UnionFilter::sceneAffectsMatch().

    UnionFilter is now compatible with SetFilter inputs.
    
    Fixes GafferHQ#92.
    johnhaddon committed May 28, 2014
    Configuration menu
    Copy the full SHA
    6dca1c4 View commit details
    Browse the repository at this point in the history