gvplugin_loadimage.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. /// @file
  2. /// @ingroup plugin_api
  3. /*************************************************************************
  4. * Copyright (c) 2011 AT&T Intellectual Property
  5. * All rights reserved. This program and the accompanying materials
  6. * are made available under the terms of the Eclipse Public License v1.0
  7. * which accompanies this distribution, and is available at
  8. * https://www.eclipse.org/legal/epl-v10.html
  9. *
  10. * Contributors: Details at https://graphviz.org
  11. *************************************************************************/
  12. #pragma once
  13. #include "types.h"
  14. #include "gvplugin.h"
  15. #include "gvcjob.h"
  16. #include <stdbool.h>
  17. #ifdef __cplusplus
  18. extern "C" {
  19. #endif
  20. /// @cond
  21. #ifdef GVDLL
  22. #ifdef GVC_EXPORTS
  23. #define GVPLUGIN_LOADIMAGE_API __declspec(dllexport)
  24. #else
  25. #define GVPLUGIN_LOADIMAGE_API __declspec(dllimport)
  26. #endif
  27. #endif
  28. #ifndef GVPLUGIN_LOADIMAGE_API
  29. #define GVPLUGIN_LOADIMAGE_API /* nothing */
  30. #endif
  31. /// @endcond
  32. /// @ingroup plugin_api
  33. /// @{
  34. GVPLUGIN_LOADIMAGE_API bool gvusershape_file_access(usershape_t *us);
  35. GVPLUGIN_LOADIMAGE_API void gvusershape_file_release(usershape_t *us);
  36. struct gvloadimage_engine_s {
  37. void (*loadimage) (GVJ_t *job, usershape_t *us, boxf b, bool filled);
  38. };
  39. /// @}
  40. #undef GVPLUGIN_LOADIMAGE_API
  41. #ifdef __cplusplus
  42. }
  43. #endif