gswts.h 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. /* Copyright (C) 2002 artofcode LLC. All rights reserved.
  2. This software is provided AS-IS with no warranty, either express or
  3. implied.
  4. This software is distributed under license and may not be copied,
  5. modified or distributed except as expressly authorized under the terms
  6. of the license contained in the file LICENSE in this distribution.
  7. For more information about licensing, please refer to
  8. http://www.ghostscript.com/licensing/. For information on
  9. commercial licensing, go to http://www.artifex.com/licensing/ or
  10. contact Artifex Software, Inc., 101 Lucas Valley Road #110,
  11. San Rafael, CA 94903, U.S.A., +1(415)492-9861.
  12. */
  13. /*$Id: gswts.h,v 1.2 2002/11/02 07:31:45 raph Exp $ */
  14. #ifndef gswts_INCLUDED
  15. # define gswts_INCLUDED
  16. #ifndef gs_wts_screen_enum_t_DEFINED
  17. # define gs_wts_screen_enum_t_DEFINED
  18. typedef struct gs_wts_screen_enum_s gs_wts_screen_enum_t;
  19. #endif
  20. typedef struct gx_wts_cell_params_s gx_wts_cell_params_t;
  21. /* Note: this corresponds roughly to the SP structure in the WTS code. */
  22. struct gx_wts_cell_params_s {
  23. wts_screen_type t;
  24. int width;
  25. int height;
  26. double ufast;
  27. double vfast;
  28. double uslow;
  29. double vslow;
  30. };
  31. gx_wts_cell_params_t *
  32. wts_pick_cell_size(gs_screen_halftone *ph, const gs_matrix *pmat);
  33. gs_wts_screen_enum_t *
  34. gs_wts_screen_enum_new(gx_wts_cell_params_t *wcp);
  35. int
  36. gs_wts_screen_enum_currentpoint(gs_wts_screen_enum_t *wse, gs_point *ppt);
  37. int
  38. gs_wts_screen_enum_next(gs_wts_screen_enum_t *wse, floatp value);
  39. int
  40. wts_sort_blue(gs_wts_screen_enum_t *wse);
  41. int
  42. wts_sort_cell(gs_wts_screen_enum_t *wse);
  43. wts_screen_t *
  44. wts_screen_from_enum(const gs_wts_screen_enum_t *wse);
  45. void
  46. gs_wts_free_enum(gs_wts_screen_enum_t *wse);
  47. void
  48. gs_wts_free_screen(wts_screen_t *wts);
  49. #endif