uca-kiro-camera.h 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. /* Copyright (C) 2011, 2012 Matthias Vogelgesang <matthias.vogelgesang@kit.edu>
  2. (Karlsruhe Institute of Technology)
  3. This library is free software; you can redistribute it and/or modify it
  4. under the terms of the GNU Lesser General Public License as published by the
  5. Free Software Foundation; either version 2.1 of the License, or (at your
  6. option) any later version.
  7. This library is distributed in the hope that it will be useful, but WITHOUT
  8. ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  9. FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
  10. details.
  11. You should have received a copy of the GNU Lesser General Public License along
  12. with this library; if not, write to the Free Software Foundation, Inc., 51
  13. Franklin St, Fifth Floor, Boston, MA 02110, USA */
  14. #ifndef __UCA_KIRO_CAMERA_H
  15. #define __UCA_KIRO_CAMERA_H
  16. #include <glib-object.h>
  17. #include "uca-camera.h"
  18. G_BEGIN_DECLS
  19. #define UCA_TYPE_KIRO_CAMERA (uca_kiro_camera_get_type())
  20. #define UCA_KIRO_CAMERA(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), UCA_TYPE_KIRO_CAMERA, UcaKiroCamera))
  21. #define UCA_IS_KIRO_CAMERA(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), UCA_TYPE_KIRO_CAMERA))
  22. #define UCA_KIRO_CAMERA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), UCA_TYPE_KIRO_CAMERA, UcaKiroCameraClass))
  23. #define UCA_IS_KIRO_CAMERA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), UCA_TYPE_KIRO_CAMERA))
  24. #define UCA_KIRO_CAMERA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), UCA_TYPE_KIRO_CAMERA, UcaKiroCameraClass))
  25. #define UCA_KIRO_CAMERA_ERROR uca_kiro_camera_error_quark()
  26. GQuark uca_kiro_camera_error_quark(void);
  27. typedef enum {
  28. UCA_KIRO_CAMERA_ERROR_MISSING_TANGO_ADDRESS = UCA_CAMERA_ERROR_END_OF_STREAM,
  29. UCA_KIRO_CAMERA_ERROR_TANGO_CONNECTION_FAILED,
  30. UCA_KIRO_CAMERA_ERROR_KIRO_CONNECTION_FAILED,
  31. UCA_KIRO_CAMERA_ERROR_TANGO_EXCEPTION_OCCURED,
  32. UCA_KIRO_CAMERA_ERROR_BAD_CAMERA_INTERFACE
  33. } UcaKiroCameraError;
  34. typedef struct _UcaKiroCamera UcaKiroCamera;
  35. typedef struct _UcaKiroCameraClass UcaKiroCameraClass;
  36. typedef struct _UcaKiroCameraPrivate UcaKiroCameraPrivate;
  37. /**
  38. * UcaKiroCamera:
  39. *
  40. * Creates #UcaKiroCamera instances by loading corresponding shared objects. The
  41. * contents of the #UcaKiroCamera structure are private and should only be
  42. * accessed via the provided API.
  43. */
  44. struct _UcaKiroCamera {
  45. /*< private >*/
  46. UcaCamera parent;
  47. UcaKiroCameraPrivate *priv;
  48. };
  49. /**
  50. * UcaKiroCameraClass:
  51. *
  52. * #UcaKiroCamera class
  53. */
  54. struct _UcaKiroCameraClass {
  55. /*< private >*/
  56. UcaCameraClass parent;
  57. };
  58. G_END_DECLS
  59. void uca_kiro_camera_clone_interface (const gchar* address, UcaKiroCamera *kiro_camera);
  60. #endif