1. 16 Feb, 2018 1 commit
    • François Laignel's avatar
      Query: allow concrete query instantiation · c9717271
      François Laignel authored
      Allow instantiating and dereferencing concrete queries. The motivation
      for this proposal is to allow the following usability enhancements:
      
      - Concrete queries mutability guaranteed by the borrow checker,
      including for generic functions:
      ``` rust
          let mut p = Query::new_position(::Format::Time);
          p.get_mut_structure().set("check_mut", &true);
      ```
      
      - Concrete queries functions available in place:
      ``` rust
          let mut q = gst::Query::new_duration(gst::Format::Time);
          let duration = if pipeline.query(&mut q) {
              Some(q.get_result())
          } else {
              None
          };
      ```
      c9717271
  2. 14 Feb, 2018 1 commit
  3. 29 Jan, 2018 1 commit
  4. 24 Dec, 2017 1 commit
  5. 22 Dec, 2017 1 commit
  6. 20 Dec, 2017 2 commits
  7. 16 Dec, 2017 1 commit
  8. 10 Dec, 2017 1 commit
  9. 09 Dec, 2017 1 commit
    • Sebastian Dröge's avatar
      Change FormatValue related API to be more convenient to use · c99928d0
      Sebastian Dröge authored
      FormatValue is now renamed to GenericFormattedValue and the API slightly
      changed. In addition there is now a FormattedValue trait, and a
      SpecificFormattedValue trait plus types for Bytes, Buffers and the
      existing ClockTime.
      
      This allows to create functions like
        Pad::query_duration<F: SpecificFormattedValue>() -> Option<F>
      and doesn't require the caller to unwrap the generic value anymore,
      which is completely unneeded in these cases.
      
      In addition, Segment became FormattedSegment<T> with API to
      upcast/downcast between the specific formatted values and the generic
      formatted value. This greatly simplifies usage of Segments.
      c99928d0
  10. 27 Nov, 2017 2 commits
  11. 26 Nov, 2017 2 commits
  12. 17 Nov, 2017 1 commit
  13. 16 Nov, 2017 2 commits
  14. 12 Nov, 2017 4 commits
  15. 11 Nov, 2017 7 commits
  16. 06 Nov, 2017 1 commit
  17. 29 Oct, 2017 1 commit
  18. 26 Oct, 2017 1 commit
  19. 24 Oct, 2017 1 commit
  20. 01 Oct, 2017 2 commits
  21. 26 Sep, 2017 1 commit
  22. 17 Sep, 2017 2 commits
  23. 13 Sep, 2017 1 commit
  24. 10 Sep, 2017 2 commits