gststreamcollection.inc 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. {
  2. /* GStreamer
  3. * Copyright (C) 2015 Centricular Ltd
  4. * @author: Edward Hervey <[email protected]>
  5. * @author: Jan Schmidt <[email protected]>
  6. *
  7. * gststreams.h : Header for GstStreamCollection subsystem
  8. *
  9. * This library is free software; you can redistribute it and/or
  10. * modify it under the terms of the GNU Library General Public
  11. * License as published by the Free Software Foundation; either
  12. * version 2 of the License, or (at your option) any later version.
  13. *
  14. * This library is distributed in the hope that it will be useful,
  15. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  17. * Library General Public License for more details.
  18. *
  19. * You should have received a copy of the GNU Library General Public
  20. * License along with this library; if not, write to the
  21. * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
  22. * Boston, MA 02110-1301, USA.
  23. */
  24. }
  25. Type
  26. P_GstStreamCollection = ^T_GstStreamCollection;
  27. P_GstStreamCollectionClass = ^T_GstStreamCollectionClass;
  28. PGstStreamCollection = ^TGstStreamCollection;
  29. PPGstStreamCollection = ^PGstStreamCollection;
  30. PGstStreamCollection_autoptr = ^TGstStreamCollection_autoptr;
  31. PGstStreamCollection_listautoptr = ^TGstStreamCollection_listautoptr;
  32. PGstStreamCollection_queueautoptr = ^TGstStreamCollection_queueautoptr;
  33. PGstStreamCollection_slistautoptr = ^TGstStreamCollection_slistautoptr;
  34. PGstStreamCollectionPrivate = ^TGstStreamCollectionPrivate;
  35. TGstStreamCollectionPrivate = record
  36. end;
  37. T_GstStreamCollectionPrivate = TGstStreamCollectionPrivate;
  38. T_GstStreamCollection = record
  39. object_ : TGstObject;
  40. upstream_id : Pgchar;
  41. priv : PGstStreamCollectionPrivate;
  42. _gst_reserved : array[0..3] of Tgpointer;
  43. end;
  44. TGstStreamCollection = T_GstStreamCollection;
  45. T_GstStreamCollectionClass = record
  46. parent_class : TGstObjectClass;
  47. stream_notify : procedure (collection:PGstStreamCollection; stream:PGstStream; pspec:PGParamSpec);cdecl;
  48. _gst_reserved : array[0..3] of Tgpointer;
  49. end;
  50. TGstStreamCollection_autoptr = PGstStreamCollection;
  51. TGstStreamCollection_listautoptr = PGList;
  52. TGstStreamCollection_slistautoptr = PGSList;
  53. TGstStreamCollection_queueautoptr = PGQueue;
  54. function gst_stream_collection_get_type:TGType;cdecl;external gstreamerlib name 'gst_stream_collection_get_type';
  55. (* Const before type ignored *)
  56. function gst_stream_collection_new(upstream_id:Pgchar):PGstStreamCollection;cdecl;external gstreamerlib name 'gst_stream_collection_new';
  57. (* Const before type ignored *)
  58. function gst_stream_collection_get_upstream_id(collection:PGstStreamCollection):Pgchar;cdecl;external gstreamerlib name 'gst_stream_collection_get_upstream_id';
  59. function gst_stream_collection_get_size(collection:PGstStreamCollection):Tguint;cdecl;external gstreamerlib name 'gst_stream_collection_get_size';
  60. function gst_stream_collection_get_stream(collection:PGstStreamCollection; index:Tguint):PGstStream;cdecl;external gstreamerlib name 'gst_stream_collection_get_stream';
  61. function gst_stream_collection_add_stream(collection:PGstStreamCollection; stream:PGstStream):Tgboolean;cdecl;external gstreamerlib name 'gst_stream_collection_add_stream';