w32tex
About: TeX Live provides a comprehensive TeX system including all the major TeX-related programs, macro packages, and fonts that are free software. Windows sources.
  Fossies Dox: w32tex-src.tar.xz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

cairo-path-fixed.c
Go to the documentation of this file.
1 /* -*- Mode: c; tab-width: 8; c-basic-offset: 4; indent-tabs-mode: t; -*- */
2 /* cairo - a vector graphics library with display and print output
3  *
4  * Copyright © 2002 University of Southern California
5  * Copyright © 2005 Red Hat, Inc.
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it either under the terms of the GNU Lesser General Public
9  * License version 2.1 as published by the Free Software Foundation
10  * (the "LGPL") or, at your option, under the terms of the Mozilla
11  * Public License Version 1.1 (the "MPL"). If you do not alter this
12  * notice, a recipient may use your version of this file under either
13  * the MPL or the LGPL.
14  *
15  * You should have received a copy of the LGPL along with this library
16  * in the file COPYING-LGPL-2.1; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335, USA
18  * You should have received a copy of the MPL along with this library
19  * in the file COPYING-MPL-1.1
20  *
21  * The contents of this file are subject to the Mozilla Public License
22  * Version 1.1 (the "License"); you may not use this file except in
23  * compliance with the License. You may obtain a copy of the License at
24  * http://www.mozilla.org/MPL/
25  *
26  * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY
27  * OF ANY KIND, either express or implied. See the LGPL or the MPL for
28  * the specific language governing rights and limitations.
29  *
30  * The Original Code is the cairo graphics library.
31  *
32  * The Initial Developer of the Original Code is University of Southern
33  * California.
34  *
35  * Contributor(s):
36  * Carl D. Worth <cworth@cworth.org>
37  */
38 
39 #include "cairoint.h"
40 
41 #include "cairo-box-inline.h"
42 #include "cairo-error-private.h"
43 #include "cairo-list-inline.h"
45 #include "cairo-slope-private.h"
46 
47 static cairo_status_t
50  const cairo_point_t *points,
51  int num_points);
52 
53 static void
56 
57 static cairo_path_buf_t *
58 _cairo_path_buf_create (int size_ops, int size_points);
59 
60 static void
62 
63 static void
66 
67 static void
69  const cairo_point_t *points,
70  int num_points);
71 
72 void
74 {
75  VG (VALGRIND_MAKE_MEM_UNDEFINED (path, sizeof (cairo_path_fixed_t)));
76 
77  cairo_list_init (&path->buf.base.link);
78 
79  path->buf.base.num_ops = 0;
80  path->buf.base.num_points = 0;
81  path->buf.base.size_ops = ARRAY_LENGTH (path->buf.op);
82  path->buf.base.size_points = ARRAY_LENGTH (path->buf.points);
83  path->buf.base.op = path->buf.op;
84  path->buf.base.points = path->buf.points;
85 
86  path->current_point.x = 0;
87  path->current_point.y = 0;
88  path->last_move_point = path->current_point;
89 
90  path->has_current_point = FALSE;
91  path->needs_move_to = TRUE;
92  path->has_extents = FALSE;
93  path->has_curve_to = FALSE;
94  path->stroke_is_rectilinear = TRUE;
95  path->fill_is_rectilinear = TRUE;
96  path->fill_maybe_region = TRUE;
97  path->fill_is_empty = TRUE;
98 
99  path->extents.p1.x = path->extents.p1.y = 0;
100  path->extents.p2.x = path->extents.p2.y = 0;
101 }
102 
105  const cairo_path_fixed_t *other)
106 {
107  cairo_path_buf_t *buf, *other_buf;
108  unsigned int num_points, num_ops;
109 
110  VG (VALGRIND_MAKE_MEM_UNDEFINED (path, sizeof (cairo_path_fixed_t)));
111 
112  cairo_list_init (&path->buf.base.link);
113 
114  path->buf.base.op = path->buf.op;
115  path->buf.base.points = path->buf.points;
116  path->buf.base.size_ops = ARRAY_LENGTH (path->buf.op);
117  path->buf.base.size_points = ARRAY_LENGTH (path->buf.points);
118 
119  path->current_point = other->current_point;
120  path->last_move_point = other->last_move_point;
121 
122  path->has_current_point = other->has_current_point;
123  path->needs_move_to = other->needs_move_to;
124  path->has_extents = other->has_extents;
125  path->has_curve_to = other->has_curve_to;
126  path->stroke_is_rectilinear = other->stroke_is_rectilinear;
127  path->fill_is_rectilinear = other->fill_is_rectilinear;
128  path->fill_maybe_region = other->fill_maybe_region;
129  path->fill_is_empty = other->fill_is_empty;
130 
131  path->extents = other->extents;
132 
133  path->buf.base.num_ops = other->buf.base.num_ops;
134  path->buf.base.num_points = other->buf.base.num_points;
135  memcpy (path->buf.op, other->buf.base.op,
136  other->buf.base.num_ops * sizeof (other->buf.op[0]));
137  memcpy (path->buf.points, other->buf.points,
138  other->buf.base.num_points * sizeof (other->buf.points[0]));
139 
140  num_points = num_ops = 0;
141  for (other_buf = cairo_path_buf_next (cairo_path_head (other));
142  other_buf != cairo_path_head (other);
143  other_buf = cairo_path_buf_next (other_buf))
144  {
145  num_ops += other_buf->num_ops;
146  num_points += other_buf->num_points;
147  }
148 
149  if (num_ops) {
150  buf = _cairo_path_buf_create (num_ops, num_points);
151  if (unlikely (buf == NULL)) {
154  }
155 
156  for (other_buf = cairo_path_buf_next (cairo_path_head (other));
157  other_buf != cairo_path_head (other);
158  other_buf = cairo_path_buf_next (other_buf))
159  {
160  memcpy (buf->op + buf->num_ops, other_buf->op,
161  other_buf->num_ops * sizeof (buf->op[0]));
162  buf->num_ops += other_buf->num_ops;
163 
164  memcpy (buf->points + buf->num_points, other_buf->points,
165  other_buf->num_points * sizeof (buf->points[0]));
166  buf->num_points += other_buf->num_points;
167  }
168 
170  }
171 
172  return CAIRO_STATUS_SUCCESS;
173 }
174 
175 unsigned long
177 {
178  unsigned long hash = _CAIRO_HASH_INIT_VALUE;
179  const cairo_path_buf_t *buf;
180  unsigned int count;
181 
182  count = 0;
184  hash = _cairo_hash_bytes (hash, buf->op,
185  buf->num_ops * sizeof (buf->op[0]));
186  count += buf->num_ops;
188  hash = _cairo_hash_bytes (hash, &count, sizeof (count));
189 
190  count = 0;
192  hash = _cairo_hash_bytes (hash, buf->points,
193  buf->num_points * sizeof (buf->points[0]));
194  count += buf->num_points;
196  hash = _cairo_hash_bytes (hash, &count, sizeof (count));
197 
198  return hash;
199 }
200 
201 unsigned long
203 {
204  const cairo_path_buf_t *buf;
205  int num_points, num_ops;
206 
207  num_ops = num_points = 0;
209  num_ops += buf->num_ops;
210  num_points += buf->num_points;
212 
213  return num_ops * sizeof (buf->op[0]) +
214  num_points * sizeof (buf->points[0]);
215 }
216 
219  const cairo_path_fixed_t *b)
220 {
221  const cairo_path_buf_t *buf_a, *buf_b;
222  const cairo_path_op_t *ops_a, *ops_b;
223  const cairo_point_t *points_a, *points_b;
224  int num_points_a, num_ops_a;
225  int num_points_b, num_ops_b;
226 
227  if (a == b)
228  return TRUE;
229 
230  /* use the flags to quickly differentiate based on contents */
231  if (a->has_curve_to != b->has_curve_to)
232  {
233  return FALSE;
234  }
235 
236  if (a->extents.p1.x != b->extents.p1.x ||
237  a->extents.p1.y != b->extents.p1.y ||
238  a->extents.p2.x != b->extents.p2.x ||
239  a->extents.p2.y != b->extents.p2.y)
240  {
241  return FALSE;
242  }
243 
244  num_ops_a = num_points_a = 0;
246  num_ops_a += buf_a->num_ops;
247  num_points_a += buf_a->num_points;
248  } cairo_path_foreach_buf_end (buf_a, a);
249 
250  num_ops_b = num_points_b = 0;
252  num_ops_b += buf_b->num_ops;
253  num_points_b += buf_b->num_points;
254  } cairo_path_foreach_buf_end (buf_b, b);
255 
256  if (num_ops_a == 0 && num_ops_b == 0)
257  return TRUE;
258 
259  if (num_ops_a != num_ops_b || num_points_a != num_points_b)
260  return FALSE;
261 
262  buf_a = cairo_path_head (a);
263  num_points_a = buf_a->num_points;
264  num_ops_a = buf_a->num_ops;
265  ops_a = buf_a->op;
266  points_a = buf_a->points;
267 
268  buf_b = cairo_path_head (b);
269  num_points_b = buf_b->num_points;
270  num_ops_b = buf_b->num_ops;
271  ops_b = buf_b->op;
272  points_b = buf_b->points;
273 
274  while (TRUE) {
275  int num_ops = MIN (num_ops_a, num_ops_b);
276  int num_points = MIN (num_points_a, num_points_b);
277 
278  if (memcmp (ops_a, ops_b, num_ops * sizeof (cairo_path_op_t)))
279  return FALSE;
280  if (memcmp (points_a, points_b, num_points * sizeof (cairo_point_t)))
281  return FALSE;
282 
283  num_ops_a -= num_ops;
284  ops_a += num_ops;
285  num_points_a -= num_points;
286  points_a += num_points;
287  if (num_ops_a == 0 || num_points_a == 0) {
288  if (num_ops_a || num_points_a)
289  return FALSE;
290 
291  buf_a = cairo_path_buf_next (buf_a);
292  if (buf_a == cairo_path_head (a))
293  break;
294 
295  num_points_a = buf_a->num_points;
296  num_ops_a = buf_a->num_ops;
297  ops_a = buf_a->op;
298  points_a = buf_a->points;
299  }
300 
301  num_ops_b -= num_ops;
302  ops_b += num_ops;
303  num_points_b -= num_points;
304  points_b += num_points;
305  if (num_ops_b == 0 || num_points_b == 0) {
306  if (num_ops_b || num_points_b)
307  return FALSE;
308 
309  buf_b = cairo_path_buf_next (buf_b);
310  if (buf_b == cairo_path_head (b))
311  break;
312 
313  num_points_b = buf_b->num_points;
314  num_ops_b = buf_b->num_ops;
315  ops_b = buf_b->op;
316  points_b = buf_b->points;
317  }
318  }
319 
320  return TRUE;
321 }
322 
325 {
327 
329  if (!path) {
331  return NULL;
332  }
333 
335  return path;
336 }
337 
338 void
340 {
342 
344  while (buf != cairo_path_head (path)) {
345  cairo_path_buf_t *this = buf;
348  }
349 
350  VG (VALGRIND_MAKE_MEM_UNDEFINED (path, sizeof (cairo_path_fixed_t)));
351 }
352 
353 void
355 {
357  free (path);
358 }
359 
360 static cairo_path_op_t
362 {
364 
366  assert (buf->num_ops != 0);
367 
368  return buf->op[buf->num_ops - 1];
369 }
370 
371 static inline const cairo_point_t *
373 {
375 
377  if (likely (buf->num_points >= 2)) {
378  return &buf->points[buf->num_points - 2];
379  } else {
381 
382  assert (prev_buf->num_points >= 2 - buf->num_points);
383  return &prev_buf->points[prev_buf->num_points - (2 - buf->num_points)];
384  }
385 }
386 
387 static void
389 {
391 
393 
395  buf->num_points--;
396  buf->num_ops--;
397 }
398 
403 {
405 
406  path->has_current_point = TRUE;
407  path->current_point.x = x;
408  path->current_point.y = y;
409  path->last_move_point = path->current_point;
410 
411  return CAIRO_STATUS_SUCCESS;
412 }
413 
414 static cairo_status_t
416 {
417  if (likely (! path->needs_move_to))
418  return CAIRO_STATUS_SUCCESS;
419 
420  path->needs_move_to = FALSE;
421 
422  if (path->has_extents) {
423  _cairo_box_add_point (&path->extents, &path->current_point);
424  } else {
425  _cairo_box_set (&path->extents, &path->current_point, &path->current_point);
426  path->has_extents = TRUE;
427  }
428 
429  if (path->fill_maybe_region) {
430  path->fill_maybe_region = _cairo_fixed_is_integer (path->current_point.x) &&
431  _cairo_fixed_is_integer (path->current_point.y);
432  }
433 
434  path->last_move_point = path->current_point;
435 
436  return _cairo_path_fixed_add (path, CAIRO_PATH_OP_MOVE_TO, &path->current_point, 1);
437 }
438 
439 void
441 {
442  if (! path->needs_move_to) {
443  /* If the current subpath doesn't need_move_to, it contains at least one command */
444  if (path->fill_is_rectilinear) {
445  /* Implicitly close for fill */
446  path->fill_is_rectilinear = path->current_point.x == path->last_move_point.x ||
447  path->current_point.y == path->last_move_point.y;
448  path->fill_maybe_region &= path->fill_is_rectilinear;
449  }
450  path->needs_move_to = TRUE;
451  }
452 
453  path->has_current_point = FALSE;
454 }
455 
458  cairo_fixed_t dx,
459  cairo_fixed_t dy)
460 {
461  if (unlikely (! path->has_current_point))
463 
465  path->current_point.x + dx,
466  path->current_point.y + dy);
467 
468 }
469 
474 {
477 
478  point.x = x;
479  point.y = y;
480 
481  /* When there is not yet a current point, the line_to operation
482  * becomes a move_to instead. Note: We have to do this by
483  * explicitly calling into _cairo_path_fixed_move_to to ensure
484  * that the last_move_point state is updated properly.
485  */
486  if (! path->has_current_point)
488 
490  if (unlikely (status))
491  return status;
492 
493  /* If the previous op was but the initial MOVE_TO and this segment
494  * is degenerate, then we can simply skip this point. Note that
495  * a move-to followed by a degenerate line-to is a valid path for
496  * stroking, but at all other times is simply a degenerate segment.
497  */
499  if (x == path->current_point.x && y == path->current_point.y)
500  return CAIRO_STATUS_SUCCESS;
501  }
502 
503  /* If the previous op was also a LINE_TO with the same gradient,
504  * then just change its end-point rather than adding a new op.
505  */
507  const cairo_point_t *p;
508 
510  if (p->x == path->current_point.x && p->y == path->current_point.y) {
511  /* previous line element was degenerate, replace */
513  } else {
514  cairo_slope_t prev, self;
515 
516  _cairo_slope_init (&prev, p, &path->current_point);
517  _cairo_slope_init (&self, &path->current_point, &point);
518  if (_cairo_slope_equal (&prev, &self) &&
519  /* cannot trim anti-parallel segments whilst stroking */
520  ! _cairo_slope_backwards (&prev, &self))
521  {
523  /* In this case the flags might be more restrictive than
524  * what we actually need.
525  * When changing the flags definition we should check if
526  * changing the line_to point can affect them.
527  */
528  }
529  }
530  }
531 
532  if (path->stroke_is_rectilinear) {
533  path->stroke_is_rectilinear = path->current_point.x == x ||
534  path->current_point.y == y;
535  path->fill_is_rectilinear &= path->stroke_is_rectilinear;
536  path->fill_maybe_region &= path->fill_is_rectilinear;
537  if (path->fill_maybe_region) {
538  path->fill_maybe_region = _cairo_fixed_is_integer (x) &&
540  }
541  if (path->fill_is_empty) {
542  path->fill_is_empty = path->current_point.x == x &&
543  path->current_point.y == y;
544  }
545  }
546 
547  path->current_point = point;
548 
549  _cairo_box_add_point (&path->extents, &point);
550 
552 }
553 
556  cairo_fixed_t dx,
557  cairo_fixed_t dy)
558 {
559  if (unlikely (! path->has_current_point))
561 
563  path->current_point.x + dx,
564  path->current_point.y + dy);
565 }
566 
572 {
574  cairo_point_t point[3];
575 
576  /* If this curves does not move, replace it with a line-to.
577  * This frequently happens with rounded-rectangles and r==0.
578  */
579  if (path->current_point.x == x2 && path->current_point.y == y2) {
580  if (x1 == x2 && x0 == x2 && y1 == y2 && y0 == y2)
581  return _cairo_path_fixed_line_to (path, x2, y2);
582 
583  /* We may want to check for the absence of a cusp, in which case
584  * we can also replace the curve-to with a line-to.
585  */
586  }
587 
588  /* make sure subpaths are started properly */
589  if (! path->has_current_point) {
592  }
593 
595  if (unlikely (status))
596  return status;
597 
598  /* If the previous op was a degenerate LINE_TO, drop it. */
600  const cairo_point_t *p;
601 
603  if (p->x == path->current_point.x && p->y == path->current_point.y) {
604  /* previous line element was degenerate, replace */
606  }
607  }
608 
609  point[0].x = x0; point[0].y = y0;
610  point[1].x = x1; point[1].y = y1;
611  point[2].x = x2; point[2].y = y2;
612 
613  _cairo_box_add_curve_to (&path->extents, &path->current_point,
614  &point[0], &point[1], &point[2]);
615 
616  path->current_point = point[2];
617  path->has_curve_to = TRUE;
618  path->stroke_is_rectilinear = FALSE;
619  path->fill_is_rectilinear = FALSE;
620  path->fill_maybe_region = FALSE;
621  path->fill_is_empty = FALSE;
622 
624 }
625 
628  cairo_fixed_t dx0, cairo_fixed_t dy0,
629  cairo_fixed_t dx1, cairo_fixed_t dy1,
630  cairo_fixed_t dx2, cairo_fixed_t dy2)
631 {
632  if (unlikely (! path->has_current_point))
634 
636  path->current_point.x + dx0,
637  path->current_point.y + dy0,
638 
639  path->current_point.x + dx1,
640  path->current_point.y + dy1,
641 
642  path->current_point.x + dx2,
643  path->current_point.y + dy2);
644 }
645 
648 {
650 
651  if (! path->has_current_point)
652  return CAIRO_STATUS_SUCCESS;
653 
654  /*
655  * Add a line_to, to compute flags and solve any degeneracy.
656  * It will be removed later (if it was actually added).
657  */
659  path->last_move_point.x,
660  path->last_move_point.y);
661  if (unlikely (status))
662  return status;
663 
664  /*
665  * If the command used to close the path is a line_to, drop it.
666  * We must check that last command is actually a line_to,
667  * because the path could have been closed with a curve_to (and
668  * the previous line_to not added as it would be degenerate).
669  */
672 
673  path->needs_move_to = TRUE; /* After close_path, add an implicit move_to */
674 
676 }
677 
680  cairo_fixed_t *x,
681  cairo_fixed_t *y)
682 {
683  if (! path->has_current_point)
684  return FALSE;
685 
686  *x = path->current_point.x;
687  *y = path->current_point.y;
688 
689  return TRUE;
690 }
691 
692 static cairo_status_t
695  const cairo_point_t *points,
696  int num_points)
697 {
699 
700  if (buf->num_ops + 1 > buf->size_ops ||
701  buf->num_points + num_points > buf->size_points)
702  {
703  buf = _cairo_path_buf_create (buf->num_ops * 2, buf->num_points * 2);
704  if (unlikely (buf == NULL))
706 
708  }
709 
710  if (WATCH_PATH) {
711  const char *op_str[] = {
712  "move-to",
713  "line-to",
714  "curve-to",
715  "close-path",
716  };
717  char buf[1024];
718  int len = 0;
719  int i;
720 
721  len += snprintf (buf + len, sizeof (buf), "[");
722  for (i = 0; i < num_points; i++) {
723  if (i != 0)
724  len += snprintf (buf + len, sizeof (buf), " ");
725  len += snprintf (buf + len, sizeof (buf), "(%f, %f)",
728  }
729  len += snprintf (buf + len, sizeof (buf), "]");
730 
731 #define STRINGIFYFLAG(x) (path->x ? #x " " : "")
732  fprintf (stderr,
733  "_cairo_path_fixed_add (%s, %s) [%s%s%s%s%s%s%s%s]\n",
734  op_str[(int) op], buf,
735  STRINGIFYFLAG(has_current_point),
736  STRINGIFYFLAG(needs_move_to),
737  STRINGIFYFLAG(has_extents),
738  STRINGIFYFLAG(has_curve_to),
739  STRINGIFYFLAG(stroke_is_rectilinear),
740  STRINGIFYFLAG(fill_is_rectilinear),
741  STRINGIFYFLAG(fill_is_empty),
742  STRINGIFYFLAG(fill_maybe_region)
743  );
744 #undef STRINGIFYFLAG
745  }
746 
748  _cairo_path_buf_add_points (buf, points, num_points);
749 
750  return CAIRO_STATUS_SUCCESS;
751 }
752 
753 static void
756 {
758 }
759 
761 static cairo_path_buf_t *
762 _cairo_path_buf_create (int size_ops, int size_points)
763 {
765 
766  /* adjust size_ops to ensure that buf->points is naturally aligned */
767  size_ops += sizeof (double) - ((sizeof (cairo_path_buf_t) + size_ops) % sizeof (double));
768  buf = _cairo_malloc_ab_plus_c (size_points, sizeof (cairo_point_t), size_ops + sizeof (cairo_path_buf_t));
769  if (buf) {
770  buf->num_ops = 0;
771  buf->num_points = 0;
772  buf->size_ops = size_ops;
773  buf->size_points = size_points;
774 
775  buf->op = (cairo_path_op_t *) (buf + 1);
776  buf->points = (cairo_point_t *) (buf->op + size_ops);
777  }
778 
779  return buf;
780 }
781 
782 static void
784 {
785  free (buf);
786 }
787 
788 static void
791 {
792  buf->op[buf->num_ops++] = op;
793 }
794 
795 static void
797  const cairo_point_t *points,
798  int num_points)
799 {
800  if (num_points == 0)
801  return;
802 
803  memcpy (buf->points + buf->num_points,
804  points,
805  sizeof (points[0]) * num_points);
806  buf->num_points += num_points;
807 }
808 
815  void *closure)
816 {
817  const cairo_path_buf_t *buf;
819 
821  const cairo_point_t *points = buf->points;
822  unsigned int i;
823 
824  for (i = 0; i < buf->num_ops; i++) {
825  switch (buf->op[i]) {
827  status = (*move_to) (closure, &points[0]);
828  points += 1;
829  break;
831  status = (*line_to) (closure, &points[0]);
832  points += 1;
833  break;
835  status = (*curve_to) (closure, &points[0], &points[1], &points[2]);
836  points += 3;
837  break;
838  default:
841  status = (*close_path) (closure);
842  break;
843  }
844 
845  if (unlikely (status))
846  return status;
847  }
849 
850  if (path->needs_move_to && path->has_current_point)
851  return (*move_to) (closure, &path->current_point);
852 
853  return CAIRO_STATUS_SUCCESS;
854 }
855 
856 typedef struct _cairo_path_fixed_append_closure {
860 
861 static cairo_status_t
862 _append_move_to (void *abstract_closure,
863  const cairo_point_t *point)
864 {
865  cairo_path_fixed_append_closure_t *closure = abstract_closure;
866 
867  return _cairo_path_fixed_move_to (closure->path,
868  point->x + closure->offset.x,
869  point->y + closure->offset.y);
870 }
871 
872 static cairo_status_t
873 _append_line_to (void *abstract_closure,
874  const cairo_point_t *point)
875 {
876  cairo_path_fixed_append_closure_t *closure = abstract_closure;
877 
878  return _cairo_path_fixed_line_to (closure->path,
879  point->x + closure->offset.x,
880  point->y + closure->offset.y);
881 }
882 
883 static cairo_status_t
884 _append_curve_to (void *abstract_closure,
885  const cairo_point_t *p0,
886  const cairo_point_t *p1,
887  const cairo_point_t *p2)
888 {
889  cairo_path_fixed_append_closure_t *closure = abstract_closure;
890 
891  return _cairo_path_fixed_curve_to (closure->path,
892  p0->x + closure->offset.x,
893  p0->y + closure->offset.y,
894  p1->x + closure->offset.x,
895  p1->y + closure->offset.y,
896  p2->x + closure->offset.x,
897  p2->y + closure->offset.y);
898 }
899 
900 static cairo_status_t
901 _append_close_path (void *abstract_closure)
902 {
903  cairo_path_fixed_append_closure_t *closure = abstract_closure;
904 
905  return _cairo_path_fixed_close_path (closure->path);
906 }
907 
910  const cairo_path_fixed_t *other,
911  cairo_fixed_t tx,
912  cairo_fixed_t ty)
913 {
915 
916  closure.path = path;
917  closure.offset.x = tx;
918  closure.offset.y = ty;
919 
925  &closure);
926 }
927 
928 static void
930  cairo_fixed_t offx,
931  cairo_fixed_t offy,
932  cairo_fixed_t scalex,
933  cairo_fixed_t scaley)
934 {
936  unsigned int i;
937 
938  if (scalex == CAIRO_FIXED_ONE && scaley == CAIRO_FIXED_ONE) {
939  _cairo_path_fixed_translate (path, offx, offy);
940  return;
941  }
942 
943  path->last_move_point.x = _cairo_fixed_mul (scalex, path->last_move_point.x) + offx;
944  path->last_move_point.y = _cairo_fixed_mul (scaley, path->last_move_point.y) + offy;
945  path->current_point.x = _cairo_fixed_mul (scalex, path->current_point.x) + offx;
946  path->current_point.y = _cairo_fixed_mul (scaley, path->current_point.y) + offy;
947 
948  path->fill_maybe_region = TRUE;
949 
951  for (i = 0; i < buf->num_points; i++) {
952  if (scalex != CAIRO_FIXED_ONE)
953  buf->points[i].x = _cairo_fixed_mul (buf->points[i].x, scalex);
954  buf->points[i].x += offx;
955 
956  if (scaley != CAIRO_FIXED_ONE)
957  buf->points[i].y = _cairo_fixed_mul (buf->points[i].y, scaley);
958  buf->points[i].y += offy;
959 
960  if (path->fill_maybe_region) {
961  path->fill_maybe_region = _cairo_fixed_is_integer (buf->points[i].x) &&
962  _cairo_fixed_is_integer (buf->points[i].y);
963  }
964  }
966 
967  path->fill_maybe_region &= path->fill_is_rectilinear;
968 
969  path->extents.p1.x = _cairo_fixed_mul (scalex, path->extents.p1.x) + offx;
970  path->extents.p2.x = _cairo_fixed_mul (scalex, path->extents.p2.x) + offx;
971  if (scalex < 0) {
972  cairo_fixed_t t = path->extents.p1.x;
973  path->extents.p1.x = path->extents.p2.x;
974  path->extents.p2.x = t;
975  }
976 
977  path->extents.p1.y = _cairo_fixed_mul (scaley, path->extents.p1.y) + offy;
978  path->extents.p2.y = _cairo_fixed_mul (scaley, path->extents.p2.y) + offy;
979  if (scaley < 0) {
980  cairo_fixed_t t = path->extents.p1.y;
981  path->extents.p1.y = path->extents.p2.y;
982  path->extents.p2.y = t;
983  }
984 }
985 
986 void
988  cairo_fixed_t offx,
989  cairo_fixed_t offy)
990 {
992  unsigned int i;
993 
994  if (offx == 0 && offy == 0)
995  return;
996 
997  path->last_move_point.x += offx;
998  path->last_move_point.y += offy;
999  path->current_point.x += offx;
1000  path->current_point.y += offy;
1001 
1002  path->fill_maybe_region = TRUE;
1003 
1005  for (i = 0; i < buf->num_points; i++) {
1006  buf->points[i].x += offx;
1007  buf->points[i].y += offy;
1008 
1009  if (path->fill_maybe_region) {
1010  path->fill_maybe_region = _cairo_fixed_is_integer (buf->points[i].x) &&
1011  _cairo_fixed_is_integer (buf->points[i].y);
1012  }
1013  }
1015 
1016  path->fill_maybe_region &= path->fill_is_rectilinear;
1017 
1018  path->extents.p1.x += offx;
1019  path->extents.p1.y += offy;
1020  path->extents.p2.x += offx;
1021  path->extents.p2.y += offy;
1022 }
1023 
1024 
1025 static inline void
1027  const cairo_matrix_t *matrix)
1028 {
1029  double dx, dy;
1030 
1031  dx = _cairo_fixed_to_double (p->x);
1032  dy = _cairo_fixed_to_double (p->y);
1034  p->x = _cairo_fixed_from_double (dx);
1035  p->y = _cairo_fixed_from_double (dy);
1036 }
1037 
1038 /**
1039  * _cairo_path_fixed_transform:
1040  * @path: a #cairo_path_fixed_t to be transformed
1041  * @matrix: a #cairo_matrix_t
1042  *
1043  * Transform the fixed-point path according to the given matrix.
1044  * There is a fast path for the case where @matrix has no rotation
1045  * or shear.
1046  **/
1047 void
1049  const cairo_matrix_t *matrix)
1050 {
1054  unsigned int i;
1055 
1056  if (matrix->yx == 0.0 && matrix->xy == 0.0) {
1057  /* Fast path for the common case of scale+transform */
1063  return;
1064  }
1065 
1066  _cairo_path_fixed_transform_point (&path->last_move_point, matrix);
1067  _cairo_path_fixed_transform_point (&path->current_point, matrix);
1068 
1069  buf = cairo_path_head (path);
1070  if (buf->num_points == 0)
1071  return;
1072 
1073  extents = path->extents;
1074  point = buf->points[0];
1076  _cairo_box_set (&path->extents, &point, &point);
1077 
1079  for (i = 0; i < buf->num_points; i++) {
1081  _cairo_box_add_point (&path->extents, &buf->points[i]);
1082  }
1084 
1085  if (path->has_curve_to) {
1086  cairo_bool_t is_tight;
1087 
1089  if (!is_tight) {
1090  cairo_bool_t has_extents;
1091 
1092  has_extents = _cairo_path_bounder_extents (path, &extents);
1093  assert (has_extents);
1094  }
1095  path->extents = extents;
1096  }
1097 
1098  /* flags might become more strict than needed */
1099  path->stroke_is_rectilinear = FALSE;
1100  path->fill_is_rectilinear = FALSE;
1101  path->fill_is_empty = FALSE;
1102  path->fill_maybe_region = FALSE;
1103 }
1104 
1105 /* Closure for path flattening */
1106 typedef struct cairo_path_flattener {
1107  double tolerance;
1112  void *closure;
1114 
1115 static cairo_status_t
1117  const cairo_point_t *point)
1118 {
1119  cpf_t *cpf = closure;
1120 
1121  cpf->current_point = *point;
1122 
1123  return cpf->move_to (cpf->closure, point);
1124 }
1125 
1126 static cairo_status_t
1128  const cairo_point_t *point)
1129 {
1130  cpf_t *cpf = closure;
1131 
1132  cpf->current_point = *point;
1133 
1134  return cpf->line_to (cpf->closure, point);
1135 }
1136 
1137 static cairo_status_t
1139  const cairo_point_t *p1,
1140  const cairo_point_t *p2,
1141  const cairo_point_t *p3)
1142 {
1143  cpf_t *cpf = closure;
1145 
1146  cairo_point_t *p0 = &cpf->current_point;
1147 
1148  if (! _cairo_spline_init (&spline,
1150  cpf->closure,
1151  p0, p1, p2, p3))
1152  {
1153  return _cpf_line_to (closure, p3);
1154  }
1155 
1156  cpf->current_point = *p3;
1157 
1158  return _cairo_spline_decompose (&spline, cpf->tolerance);
1159 }
1160 
1161 static cairo_status_t
1163 {
1164  cpf_t *cpf = closure;
1165 
1166  return cpf->close_path (cpf->closure);
1167 }
1168 
1174  void *closure,
1175  double tolerance)
1176 {
1177  cpf_t flattener;
1178 
1179  if (! path->has_curve_to) {
1181  move_to,
1182  line_to,
1183  NULL,
1184  close_path,
1185  closure);
1186  }
1187 
1188  flattener.tolerance = tolerance;
1189  flattener.move_to = move_to;
1190  flattener.line_to = line_to;
1191  flattener.close_path = close_path;
1192  flattener.closure = closure;
1194  _cpf_move_to,
1195  _cpf_line_to,
1196  _cpf_curve_to,
1198  &flattener);
1199 }
1200 
1201 static inline void
1203  const cairo_point_t *p1,
1204  const cairo_point_t *p2)
1205 {
1206  if (p1->x <= p2->x) {
1207  box->p1.x = p1->x;
1208  box->p2.x = p2->x;
1209  } else {
1210  box->p1.x = p2->x;
1211  box->p2.x = p1->x;
1212  }
1213 
1214  if (p1->y <= p2->y) {
1215  box->p1.y = p1->y;
1216  box->p2.y = p2->y;
1217  } else {
1218  box->p1.y = p2->y;
1219  box->p2.y = p1->y;
1220  }
1221 }
1222 
1223 static inline cairo_bool_t
1225 {
1227 
1228  /* Do we have the right number of ops? */
1229  if (buf->num_ops < 4 || buf->num_ops > 6)
1230  return FALSE;
1231 
1232  /* Check whether the ops are those that would be used for a rectangle */
1233  if (buf->op[0] != CAIRO_PATH_OP_MOVE_TO ||
1234  buf->op[1] != CAIRO_PATH_OP_LINE_TO ||
1235  buf->op[2] != CAIRO_PATH_OP_LINE_TO ||
1236  buf->op[3] != CAIRO_PATH_OP_LINE_TO)
1237  {
1238  return FALSE;
1239  }
1240 
1241  /* we accept an implicit close for filled paths */
1242  if (buf->num_ops > 4) {
1243  /* Now, there are choices. The rectangle might end with a LINE_TO
1244  * (to the original point), but this isn't required. If it
1245  * doesn't, then it must end with a CLOSE_PATH. */
1246  if (buf->op[4] == CAIRO_PATH_OP_LINE_TO) {
1247  if (buf->points[4].x != buf->points[0].x ||
1248  buf->points[4].y != buf->points[0].y)
1249  return FALSE;
1250  } else if (buf->op[4] != CAIRO_PATH_OP_CLOSE_PATH) {
1251  return FALSE;
1252  }
1253 
1254  if (buf->num_ops == 6) {
1255  /* A trailing CLOSE_PATH or MOVE_TO is ok */
1256  if (buf->op[5] != CAIRO_PATH_OP_MOVE_TO &&
1257  buf->op[5] != CAIRO_PATH_OP_CLOSE_PATH)
1258  return FALSE;
1259  }
1260  }
1261 
1262  return TRUE;
1263 }
1264 
1265 static inline cairo_bool_t
1267 {
1268  if (points[0].y == points[1].y &&
1269  points[1].x == points[2].x &&
1270  points[2].y == points[3].y &&
1271  points[3].x == points[0].x)
1272  return TRUE;
1273  if (points[0].x == points[1].x &&
1274  points[1].y == points[2].y &&
1275  points[2].x == points[3].x &&
1276  points[3].y == points[0].y)
1277  return TRUE;
1278  return FALSE;
1279 }
1280 
1281 /*
1282  * Check whether the given path contains a single rectangle.
1283  */
1286  cairo_box_t *box)
1287 {
1288  const cairo_path_buf_t *buf;
1289 
1290  if (! path->fill_is_rectilinear)
1291  return FALSE;
1292 
1293  if (! _path_is_quad (path))
1294  return FALSE;
1295 
1296  buf = cairo_path_head (path);
1297  if (_points_form_rect (buf->points)) {
1298  _canonical_box (box, &buf->points[0], &buf->points[2]);
1299  return TRUE;
1300  }
1301 
1302  return FALSE;
1303 }
1304 
1305 /* Determine whether two lines A->B and C->D intersect based on the
1306  * algorithm described here: http://paulbourke.net/geometry/pointlineplane/ */
1307 static inline cairo_bool_t
1309  cairo_point_t b,
1310  cairo_point_t c,
1311  cairo_point_t d)
1312 {
1313  cairo_int64_t numerator_a, numerator_b, denominator;
1314  cairo_bool_t denominator_negative;
1315 
1317  _cairo_int32x32_64_mul (d.x - c.x, b.y - a.y));
1318  numerator_a = _cairo_int64_sub (_cairo_int32x32_64_mul (d.x - c.x, a.y - c.y),
1319  _cairo_int32x32_64_mul (d.y - c.y, a.x - c.x));
1320  numerator_b = _cairo_int64_sub (_cairo_int32x32_64_mul (b.x - a.x, a.y - c.y),
1321  _cairo_int32x32_64_mul (b.y - a.y, a.x - c.x));
1322 
1324  /* If the denominator and numerators are both zero,
1325  * the lines are coincident. */
1326  if (_cairo_int64_is_zero (numerator_a) && _cairo_int64_is_zero (numerator_b))
1327  return TRUE;
1328 
1329  /* Otherwise, a zero denominator indicates the lines are
1330  * parallel and never intersect. */
1331  return FALSE;
1332  }
1333 
1334  /* The lines intersect if both quotients are between 0 and 1 (exclusive). */
1335 
1336  /* We first test whether either quotient is a negative number. */
1337  denominator_negative = _cairo_int64_negative (denominator);
1338  if (_cairo_int64_negative (numerator_a) ^ denominator_negative)
1339  return FALSE;
1340  if (_cairo_int64_negative (numerator_b) ^ denominator_negative)
1341  return FALSE;
1342 
1343  /* A zero quotient indicates an "intersection" at an endpoint, which
1344  * we aren't considering a true intersection. */
1345  if (_cairo_int64_is_zero (numerator_a) || _cairo_int64_is_zero (numerator_b))
1346  return FALSE;
1347 
1348  /* If the absolute value of the numerator is larger than or equal to the
1349  * denominator the result of the division would be greater than or equal
1350  * to one. */
1351  if (! denominator_negative) {
1352  if (! _cairo_int64_lt (numerator_a, denominator) ||
1353  ! _cairo_int64_lt (numerator_b, denominator))
1354  return FALSE;
1355  } else {
1356  if (! _cairo_int64_lt (denominator, numerator_a) ||
1357  ! _cairo_int64_lt (denominator, numerator_b))
1358  return FALSE;
1359  }
1360 
1361  return TRUE;
1362 }
1363 
1366 {
1367  const cairo_point_t *points;
1368 
1369  if (! _path_is_quad (path))
1370  return FALSE;
1371 
1372  points = cairo_path_head (path)->points;
1373  if (_points_form_rect (points))
1374  return TRUE;
1375 
1377  points[3], points[2]))
1378  return FALSE;
1379 
1381  points[1], points[2]))
1382  return FALSE;
1383 
1384  return TRUE;
1385 }
1386 
1389  cairo_box_t *box)
1390 {
1392 
1393  if (! path->fill_is_rectilinear)
1394  return FALSE;
1395 
1396  /* Do we have the right number of ops? */
1397  if (buf->num_ops != 5)
1398  return FALSE;
1399 
1400  /* Check whether the ops are those that would be used for a rectangle */
1401  if (buf->op[0] != CAIRO_PATH_OP_MOVE_TO ||
1402  buf->op[1] != CAIRO_PATH_OP_LINE_TO ||
1403  buf->op[2] != CAIRO_PATH_OP_LINE_TO ||
1404  buf->op[3] != CAIRO_PATH_OP_LINE_TO ||
1405  buf->op[4] != CAIRO_PATH_OP_CLOSE_PATH)
1406  {
1407  return FALSE;
1408  }
1409 
1410  /* Ok, we may have a box, if the points line up */
1411  if (buf->points[0].y == buf->points[1].y &&
1412  buf->points[1].x == buf->points[2].x &&
1413  buf->points[2].y == buf->points[3].y &&
1414  buf->points[3].x == buf->points[0].x)
1415  {
1416  _canonical_box (box, &buf->points[0], &buf->points[2]);
1417  return TRUE;
1418  }
1419 
1420  if (buf->points[0].x == buf->points[1].x &&
1421  buf->points[1].y == buf->points[2].y &&
1422  buf->points[2].x == buf->points[3].x &&
1423  buf->points[3].y == buf->points[0].y)
1424  {
1425  _canonical_box (box, &buf->points[0], &buf->points[2]);
1426  return TRUE;
1427  }
1428 
1429  return FALSE;
1430 }
1431 
1432 /*
1433  * Check whether the given path contains a single rectangle
1434  * that is logically equivalent to:
1435  * <informalexample><programlisting>
1436  * cairo_move_to (cr, x, y);
1437  * cairo_rel_line_to (cr, width, 0);
1438  * cairo_rel_line_to (cr, 0, height);
1439  * cairo_rel_line_to (cr, -width, 0);
1440  * cairo_close_path (cr);
1441  * </programlisting></informalexample>
1442  */
1445  cairo_box_t *box)
1446 {
1447  const cairo_path_buf_t *buf;
1448 
1450  return FALSE;
1451 
1452  /* This check is valid because the current implementation of
1453  * _cairo_path_fixed_is_box () only accepts rectangles like:
1454  * move,line,line,line[,line|close[,close|move]]. */
1455  buf = cairo_path_head (path);
1456  if (buf->num_ops > 4)
1457  return TRUE;
1458 
1459  return FALSE;
1460 }
1461 
1462 void
1464  const cairo_path_fixed_t *path)
1465 {
1466  iter->first = iter->buf = cairo_path_head (path);
1467  iter->n_op = 0;
1468  iter->n_point = 0;
1469 }
1470 
1471 static cairo_bool_t
1473 {
1474  if (++iter->n_op >= iter->buf->num_ops) {
1475  iter->buf = cairo_path_buf_next (iter->buf);
1476  if (iter->buf == iter->first) {
1477  iter->buf = NULL;
1478  return FALSE;
1479  }
1480 
1481  iter->n_op = 0;
1482  iter->n_point = 0;
1483  }
1484 
1485  return TRUE;
1486 }
1487 
1490  cairo_box_t *box)
1491 {
1492  cairo_point_t points[5];
1494 
1495  if (_iter->buf == NULL)
1496  return FALSE;
1497 
1498  iter = *_iter;
1499 
1500  if (iter.n_op == iter.buf->num_ops && ! _cairo_path_fixed_iter_next_op (&iter))
1501  return FALSE;
1502 
1503  /* Check whether the ops are those that would be used for a rectangle */
1504  if (iter.buf->op[iter.n_op] != CAIRO_PATH_OP_MOVE_TO)
1505  return FALSE;
1506  points[0] = iter.buf->points[iter.n_point++];
1507  if (! _cairo_path_fixed_iter_next_op (&iter))
1508  return FALSE;
1509 
1510  if (iter.buf->op[iter.n_op] != CAIRO_PATH_OP_LINE_TO)
1511  return FALSE;
1512  points[1] = iter.buf->points[iter.n_point++];
1513  if (! _cairo_path_fixed_iter_next_op (&iter))
1514  return FALSE;
1515 
1516  /* a horizontal/vertical closed line is also a degenerate rectangle */
1517  switch (iter.buf->op[iter.n_op]) {
1520  case CAIRO_PATH_OP_MOVE_TO: /* implicit close */
1521  box->p1 = box->p2 = points[0];
1522  *_iter = iter;
1523  return TRUE;
1524  default:
1525  return FALSE;
1526  case CAIRO_PATH_OP_LINE_TO:
1527  break;
1528  }
1529 
1530  points[2] = iter.buf->points[iter.n_point++];
1531  if (! _cairo_path_fixed_iter_next_op (&iter))
1532  return FALSE;
1533 
1534  if (iter.buf->op[iter.n_op] != CAIRO_PATH_OP_LINE_TO)
1535  return FALSE;
1536  points[3] = iter.buf->points[iter.n_point++];
1537 
1538  /* Now, there are choices. The rectangle might end with a LINE_TO
1539  * (to the original point), but this isn't required. If it
1540  * doesn't, then it must end with a CLOSE_PATH (which may be implicit). */
1541  if (! _cairo_path_fixed_iter_next_op (&iter)) {
1542  /* implicit close due to fill */
1543  } else if (iter.buf->op[iter.n_op] == CAIRO_PATH_OP_LINE_TO) {
1544  points[4] = iter.buf->points[iter.n_point++];
1545  if (points[4].x != points[0].x || points[4].y != points[0].y)
1546  return FALSE;
1548  } else if (iter.buf->op[iter.n_op] == CAIRO_PATH_OP_CLOSE_PATH) {
1550  } else if (iter.buf->op[iter.n_op] == CAIRO_PATH_OP_MOVE_TO) {
1551  /* implicit close-path due to new-sub-path */
1552  } else {
1553  return FALSE;
1554  }
1555 
1556  /* Ok, we may have a box, if the points line up */
1557  if (points[0].y == points[1].y &&
1558  points[1].x == points[2].x &&
1559  points[2].y == points[3].y &&
1560  points[3].x == points[0].x)
1561  {
1562  box->p1 = points[0];
1563  box->p2 = points[2];
1564  *_iter = iter;
1565  return TRUE;
1566  }
1567 
1568  if (points[0].x == points[1].x &&
1569  points[1].y == points[2].y &&
1570  points[2].x == points[3].x &&
1571  points[3].y == points[0].y)
1572  {
1573  box->p1 = points[1];
1574  box->p2 = points[3];
1575  *_iter = iter;
1576  return TRUE;
1577  }
1578 
1579  return FALSE;
1580 }
1581 
1584 {
1585  if (iter->buf == NULL)
1586  return TRUE;
1587 
1588  return iter->n_op == iter->buf->num_ops;
1589 }
return _Result< 0 ? -1 :_Result;} #line 1069 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vsnwprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsnwprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1091 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vsnwprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format, va_list _ArgList) { return _vsnwprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);} #line 1108 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnwprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format, va_list _Args);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnwprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format, va_list _ArgList) { return _vsnwprintf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1133 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_c_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1163 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_c(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1179 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vswprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);} #line 1196 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl __vswprintf_l(wchar_t *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vswprintf_l(_Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1212 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf(wchar_t *const _Buffer, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_l(_Buffer,(size_t) -1, _Format,((void *) 0), _ArgList);} #line 1227 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswprintf(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1243 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1264 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1281 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 1283 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_p_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf_p((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1312 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_p(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1328 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf_l(wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1347 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf(wchar_t const *const _Format, va_list _ArgList) { return _vscwprintf_l(_Format,((void *) 0), _ArgList);} #line 1361 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf_p_l(wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf_p((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1380 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf_p(wchar_t const *const _Format, va_list _ArgList) { return _vscwprintf_p_l(_Format,((void *) 0), _ArgList);} #line 1394 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl __swprintf_l(wchar_t *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__vswprintf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1414 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1435 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf(wchar_t *const _Buffer, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__vswprintf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1454 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl swprintf(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1474 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "__swprintf_l_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl __swprintf_l(wchar_t *_Buffer, wchar_t const *_Format, _locale_t _Locale,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vswprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl __vswprintf_l(wchar_t *_Buffer, wchar_t const *_Format, _locale_t _Locale, va_list _Args);__declspec(deprecated("This function or variable may be unsafe. Consider using " "swprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _swprintf(wchar_t *_Buffer, wchar_t const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "vswprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vswprintf(wchar_t *_Buffer, wchar_t const *_Format, va_list _Args);__inline int __cdecl _swprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_s_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1511 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl swprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1532 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 1534 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_p_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_p_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1562 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_p(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1582 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_c_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1603 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_c(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1623 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwprintf_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1646 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1668 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1690 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1711 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf_l(wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1737 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf(wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_l(_Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1755 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf_p_l(wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_p_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1774 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf_p(wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_p_l(_Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1792 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #pragma warning(push) #pragma warning(disable:4141 6054) #pragma warning(pop) #line 1856 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" int __cdecl __stdio_common_vswscanf(unsigned __int64 _Options, wchar_t const *_Buffer, size_t _BufferCount, wchar_t const *_Format, _locale_t _Locale, va_list _ArgList);__inline int __cdecl _vswscanf_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options()), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1897 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswscanf(wchar_t const *_Buffer, wchar_t const *_Format, va_list _ArgList) { return _vswscanf_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 1912 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswscanf_s_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1930 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswscanf_s(wchar_t const *const _Buffer, wchar_t const *const _Format, va_list _ArgList) { return _vswscanf_s_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 1947 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 1949 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnwscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnwscanf_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);} #line 1976 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vsnwscanf_s_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format, _Locale, _ArgList);} #line 1995 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_swscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _swscanf_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2015 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "swscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl swscanf(wchar_t const *const _Buffer, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2034 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swscanf_s_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_s_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2054 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl swscanf_s(wchar_t const *const _Buffer, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_s_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2075 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 2077 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwscanf_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2100 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwscanf(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2122 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwscanf_s_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_s_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2143 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwscanf_s(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2163 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __pragma(pack(pop))#pragma warning(pop) #pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) typedef __int64 fpos_t;errno_t __cdecl _get_stream_buffer_pointers(FILE *_Stream, char ***_Base, char ***_Pointer, int **_Count);errno_t __cdecl clearerr_s(FILE *_Stream);errno_t __cdecl fopen_s(FILE **_Stream, char const *_FileName, char const *_Mode);size_t __cdecl fread_s(void *_Buffer, size_t _BufferSize, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);errno_t __cdecl freopen_s(FILE **_Stream, char const *_FileName, char const *_Mode, FILE *_OldStream);char *__cdecl gets_s(char *_Buffer, rsize_t _Size);errno_t __cdecl tmpfile_s(FILE **_Stream);errno_t __cdecl tmpnam_s(char *_Buffer, rsize_t _Size);#line 145 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" void __cdecl clearerr(FILE *_Stream);int __cdecl fclose(FILE *_Stream);int __cdecl _fcloseall(void);FILE *__cdecl _fdopen(int _FileHandle, char const *_Mode);int __cdecl feof(FILE *_Stream);int __cdecl ferror(FILE *_Stream);int __cdecl fflush(FILE *_Stream);int __cdecl fgetc(FILE *_Stream);int __cdecl _fgetchar(void);int __cdecl fgetpos(FILE *_Stream, fpos_t *_Position);char *__cdecl fgets(char *_Buffer, int _MaxCount, FILE *_Stream);int __cdecl _fileno(FILE *_Stream);int __cdecl _flushall(void);__declspec(deprecated("This function or variable may be unsafe. Consider using " "fopen_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) FILE *__cdecl fopen(char const *_FileName, char const *_Mode);int __cdecl fputc(int _Character, FILE *_Stream);int __cdecl _fputchar(int _Character);int __cdecl fputs(char const *_Buffer, FILE *_Stream);size_t __cdecl fread(void *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);__declspec(deprecated("This function or variable may be unsafe. Consider using " "freopen_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) FILE *__cdecl freopen(char const *_FileName, char const *_Mode, FILE *_Stream);FILE *__cdecl _fsopen(char const *_FileName, char const *_Mode, int _ShFlag);int __cdecl fsetpos(FILE *_Stream, fpos_t const *_Position);int __cdecl fseek(FILE *_Stream, long _Offset, int _Origin);int __cdecl _fseeki64(FILE *_Stream, __int64 _Offset, int _Origin);long __cdecl ftell(FILE *_Stream);__int64 __cdecl _ftelli64(FILE *_Stream);size_t __cdecl fwrite(void const *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);int __cdecl getc(FILE *_Stream);int __cdecl getchar(void);int __cdecl _getmaxstdio(void);int __cdecl _getw(FILE *_Stream);void __cdecl perror(char const *_ErrorMessage);int __cdecl _pclose(FILE *_Stream);FILE *__cdecl _popen(char const *_Command, char const *_Mode);#line 344 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl putc(int _Character, FILE *_Stream);int __cdecl putchar(int _Character);int __cdecl puts(char const *_Buffer);int __cdecl _putw(int _Word, FILE *_Stream);int __cdecl remove(char const *_FileName);int __cdecl rename(char const *_OldFileName, char const *_NewFileName);int __cdecl _unlink(char const *_FileName);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_unlink" ". See online help for details.")) int __cdecl unlink(char const *_FileName);#line 391 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" void __cdecl rewind(FILE *_Stream);int __cdecl _rmtmp(void);__declspec(deprecated("This function or variable may be unsafe. Consider using " "setvbuf" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) void __cdecl setbuf(FILE *_Stream, char *_Buffer);int __cdecl _setmaxstdio(int _Maximum);int __cdecl setvbuf(FILE *_Stream, char *_Buffer, int _Mode, size_t _Size);__declspec(allocator) char *__cdecl _tempnam(char const *_DirectoryName, char const *_FilePrefix);__declspec(deprecated("This function or variable may be unsafe. Consider using " "tmpfile_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) FILE *__cdecl tmpfile(void);__declspec(deprecated("This function or variable may be unsafe. Consider using " "tmpnam_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl tmpnam(char *_Buffer);int __cdecl ungetc(int _Character, FILE *_Stream);void __cdecl _lock_file(FILE *_Stream);void __cdecl _unlock_file(FILE *_Stream);int __cdecl _fclose_nolock(FILE *_Stream);int __cdecl _fflush_nolock(FILE *_Stream);int __cdecl _fgetc_nolock(FILE *_Stream);int __cdecl _fputc_nolock(int _Character, FILE *_Stream);size_t __cdecl _fread_nolock(void *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);size_t __cdecl _fread_nolock_s(void *_Buffer, size_t _BufferSize, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);int __cdecl _fseek_nolock(FILE *_Stream, long _Offset, int _Origin);int __cdecl _fseeki64_nolock(FILE *_Stream, __int64 _Offset, int _Origin);long __cdecl _ftell_nolock(FILE *_Stream);__int64 __cdecl _ftelli64_nolock(FILE *_Stream);size_t __cdecl _fwrite_nolock(void const *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);int __cdecl _getc_nolock(FILE *_Stream);int __cdecl _putc_nolock(int _Character, FILE *_Stream);int __cdecl _ungetc_nolock(int _Character, FILE *_Stream);int *__cdecl __p__commode(void);#line 596 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vfprintf(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vfprintf_s(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vfprintf_p(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _ArgList);__inline int __cdecl _vfprintf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfprintf((*__local_stdio_printf_options()), _Stream, _Format, _Locale, _ArgList);} #line 648 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfprintf(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfprintf_l(_Stream, _Format,((void *) 0), _ArgList);} #line 662 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfprintf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfprintf_s((*__local_stdio_printf_options()), _Stream, _Format, _Locale, _ArgList);} #line 677 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfprintf_s(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfprintf_s_l(_Stream, _Format,((void *) 0), _ArgList);} #line 693 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 695 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfprintf_p_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfprintf_p((*__local_stdio_printf_options()), _Stream, _Format, _Locale, _ArgList);} #line 710 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfprintf_p(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfprintf_p_l(_Stream, _Format,((void *) 0), _ArgList);} #line 724 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfprintf_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);} #line 738 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vprintf(char const *const _Format, va_list _ArgList) { return _vfprintf_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);} #line 751 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_s_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfprintf_s_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);} #line 765 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vprintf_s(char const *const _Format, va_list _ArgList) { return _vfprintf_s_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);} #line 780 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 782 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_p_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfprintf_p_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);} #line 796 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_p(char const *const _Format, va_list _ArgList) { return _vfprintf_p_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);} #line 809 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fprintf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 828 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl fprintf(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 846 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl _set_printf_count_output(int _Value);int __cdecl _get_printf_count_output(void);__inline int __cdecl _fprintf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 871 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl fprintf_s(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 891 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 893 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fprintf_p_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 912 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fprintf_p(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 930 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 948 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl printf(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 965 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_s_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 983 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl printf_s(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1002 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1004 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_p_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1022 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_p(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1039 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vfscanf(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _Arglist);__inline int __cdecl _vfscanf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfscanf((*__local_stdio_scanf_options()), _Stream, _Format, _Locale, _ArgList);} #line 1070 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfscanf(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfscanf_l(_Stream, _Format,((void *) 0), _ArgList);} #line 1084 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfscanf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Stream, _Format, _Locale, _ArgList);} #line 1101 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfscanf_s(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfscanf_s_l(_Stream, _Format,((void *) 0), _ArgList);} #line 1118 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1120 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscanf_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfscanf_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);} #line 1134 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vscanf(char const *const _Format, va_list _ArgList) { return _vfscanf_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);} #line 1147 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscanf_s_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfscanf_s_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);} #line 1161 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vscanf_s(char const *const _Format, va_list _ArgList) { return _vfscanf_s_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);} #line 1176 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1178 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_fscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _fscanf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1197 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "fscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl fscanf(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1215 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fscanf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1234 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl fscanf_s(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1254 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1256 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_scanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _scanf_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1274 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "scanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl scanf(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1291 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scanf_s_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1309 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl scanf_s(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1328 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1330 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vsprintf(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vsprintf_s(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vsnprintf_s(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, size_t _MaxCount, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vsprintf_p(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnprintf_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1399 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1415 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsnprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options())|(1ULL<< 1), _Buffer, _BufferCount, _Format,((void *) 0), _ArgList);return _Result< 0 ? -1 :_Result;} #line 1446 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsprintf_l(char *const _Buffer, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vsnprintf_l(_Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1462 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "vsprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl vsprintf(char *const _Buffer, char const *const _Format, va_list _ArgList) { return _vsnprintf_l(_Buffer,(size_t) -1, _Format,((void *) 0), _ArgList);} #line 1477 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsprintf_s_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1498 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsprintf_s(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1516 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1526 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsprintf_p_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf_p((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1547 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsprintf_p(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1563 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_s_l(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsnprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1585 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_s(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);} #line 1602 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsnprintf_s(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);} #line 1630 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1641 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1659 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf(char const *const _Format, va_list _ArgList) { return _vscprintf_l(_Format,((void *) 0), _ArgList);} #line 1672 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf_p_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf_p((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1690 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf_p(char const *const _Format, va_list _ArgList) { return _vscprintf_p_l(_Format,((void *) 0), _ArgList);} #line 1703 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_c_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1723 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_c(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1739 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_sprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _sprintf_l(char *const _Buffer, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1761 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl sprintf(char *const _Buffer, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1782 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "sprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl sprintf(char *_Buffer, char const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "vsprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl vsprintf(char *_Buffer, char const *_Format, va_list _Args);__inline int __cdecl _sprintf_s_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_s_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1810 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl sprintf_s(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1832 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1834 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _sprintf_p_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_p_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1862 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _sprintf_p(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1882 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snprintf_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1905 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl snprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=vsnprintf(_Buffer, _BufferCount, _Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1936 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf(_Buffer, _BufferCount, _Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1956 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl _snprintf(char *_Buffer, size_t _BufferCount, char const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl _vsnprintf(char *_Buffer, size_t _BufferCount, char const *_Format, va_list _Args);__inline int __cdecl _snprintf_c_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1986 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf_c(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2006 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf_s_l(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2028 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf_s(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2049 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2075 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_l(_Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2092 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf_p_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_p_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2110 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf_p(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_p(_Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2127 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vsscanf(unsigned __int64 _Options, char const *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);__inline int __cdecl _vsscanf_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vsscanf((*__local_stdio_scanf_options()), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 2158 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsscanf(char const *const _Buffer, char const *const _Format, va_list _ArgList) { return _vsscanf_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 2172 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsscanf_s_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vsscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 2189 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(push) #pragma warning(disable:6530) __inline int __cdecl vsscanf_s(char const *const _Buffer, char const *const _Format, va_list _ArgList) { return _vsscanf_s_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 2208 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(pop) #line 2219 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_sscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _sscanf_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsscanf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2238 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "sscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl sscanf(char const *const _Buffer, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsscanf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2256 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _sscanf_s_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsscanf_s_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2275 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl sscanf_s(char const *const _Buffer, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=vsscanf_s(_Buffer, _Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2297 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 2299 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(push) #pragma warning(disable:6530) __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snscanf_l(char const *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2326 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snscanf(char const *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options()), _Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2349 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snscanf_s_l(char const *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2374 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snscanf_s(char const *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2397 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(pop) __declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_tempnam" ". See online help for details.")) char *__cdecl tempnam(char const *_Directory, char const *_FilePrefix);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fcloseall" ". See online help for details.")) int __cdecl fcloseall(void);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fdopen" ". See online help for details.")) FILE *__cdecl fdopen(int _FileHandle, char const *_Format);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fgetchar" ". See online help for details.")) int __cdecl fgetchar(void);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fileno" ". See online help for details.")) int __cdecl fileno(FILE *_Stream);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_flushall" ". See online help for details.")) int __cdecl flushall(void);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fputchar" ". See online help for details.")) int __cdecl fputchar(int _Ch);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_getw" ". See online help for details.")) int __cdecl getw(FILE *_Stream);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_putw" ". See online help for details.")) int __cdecl putw(int _Ch, FILE *_Stream);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_rmtmp" ". See online help for details.")) int __cdecl rmtmp(void);#line 2441 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h"__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma once#pragma once#pragma once#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) int *__cdecl _errno(void);errno_t __cdecl _set_errno(int _Value);errno_t __cdecl _get_errno(int *_Value);unsigned long *__cdecl __doserrno(void);errno_t __cdecl _set_doserrno(unsigned long _Value);errno_t __cdecl _get_doserrno(unsigned long *_Value);__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4514 4820) __pragma(pack(push, 8)) void *__cdecl memchr(void const *_Buf, int _Val, size_t _MaxCount);int __cdecl memcmp(void const *_Buf1, void const *_Buf2, size_t _Size);void *__cdecl memcpy(void *_Dst, void const *_Src, size_t _Size);void *__cdecl memmove(void *_Dst, void const *_Src, size_t _Size);void *__cdecl memset(void *_Dst, int _Val, size_t _Size);char *__cdecl strchr(char const *_Str, int _Val);char *__cdecl strrchr(char const *_Str, int _Ch);char *__cdecl strstr(char const *_Str, char const *_SubStr);wchar_t *__cdecl wcschr(wchar_t const *_Str, wchar_t _Ch);wchar_t *__cdecl wcsrchr(wchar_t const *_Str, wchar_t _Ch);wchar_t *__cdecl wcsstr(wchar_t const *_Str, wchar_t const *_SubStr);__pragma(pack(pop))#pragma warning(pop) #pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) static __inline errno_t __cdecl memcpy_s(void *const _Destination, rsize_t const _DestinationSize, void const *const _Source, rsize_t const _SourceSize) { if(_SourceSize==0) { return 0;} { int _Expr_val=!!(_Destination !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;if(_Source==((void *) 0)||_DestinationSize< _SourceSize) { memset(_Destination, 0, _DestinationSize);{ int _Expr_val=!!(_Source !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;{ int _Expr_val=!!(_DestinationSize >=_SourceSize);if(!(_Expr_val)) {(*_errno())=34;_invalid_parameter_noinfo();return 34;} } ;return 22 ;} memcpy(_Destination, _Source, _SourceSize);return 0;} static __inline errno_t __cdecl memmove_s(void *const _Destination, rsize_t const _DestinationSize, void const *const _Source, rsize_t const _SourceSize) { if(_SourceSize==0) { return 0;} { int _Expr_val=!!(_Destination !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;{ int _Expr_val=!!(_Source !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;{ int _Expr_val=!!(_DestinationSize >=_SourceSize);if(!(_Expr_val)) {(*_errno())=34;_invalid_parameter_noinfo();return 34;} } ;memmove(_Destination, _Source, _SourceSize);return 0;}#pragma warning(pop) __pragma(pack(pop))#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) int __cdecl _memicmp(void const *_Buf1, void const *_Buf2, size_t _Size);int __cdecl _memicmp_l(void const *_Buf1, void const *_Buf2, size_t _Size, _locale_t _Locale);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_memccpy" ". See online help for details.")) void *__cdecl memccpy(void *_Dst, void const *_Src, int _Val, size_t _Size);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_memicmp" ". See online help for details.")) int __cdecl memicmp(void const *_Buf1, void const *_Buf2, size_t _Size);__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) errno_t __cdecl wcscat_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source);errno_t __cdecl wcscpy_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source);errno_t __cdecl wcsncat_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source, rsize_t _MaxCount);errno_t __cdecl wcsncpy_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source, rsize_t _MaxCount);wchar_t *__cdecl wcstok_s(wchar_t *_String, wchar_t const *_Delimiter, wchar_t **_Context);__declspec(allocator) wchar_t *__cdecl _wcsdup(wchar_t const *_String);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcscat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcscat(wchar_t *_Destination, wchar_t const *_Source);int __cdecl wcscmp(wchar_t const *_String1, wchar_t const *_String2);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcscpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcscpy(wchar_t *_Destination, wchar_t const *_Source);size_t __cdecl wcscspn(wchar_t const *_String, wchar_t const *_Control);size_t __cdecl wcslen(wchar_t const *_String);size_t __cdecl wcsnlen(wchar_t const *_Source, size_t _MaxCount);static __inline size_t __cdecl wcsnlen_s(wchar_t const *_Source, size_t _MaxCount) { return(_Source==0) ? 0 :wcsnlen(_Source, _MaxCount);}__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcsncat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcsncat(wchar_t *_Destination, wchar_t const *_Source, size_t _Count);int __cdecl wcsncmp(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcsncpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcsncpy(wchar_t *_Destination, wchar_t const *_Source, size_t _Count);wchar_t *__cdecl wcspbrk(wchar_t const *_String, wchar_t const *_Control);size_t __cdecl wcsspn(wchar_t const *_String, wchar_t const *_Control);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcstok_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcstok(wchar_t *_String, wchar_t const *_Delimiter, wchar_t **_Context);#line 237 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstring.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "wcstok_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) static __inline wchar_t *__cdecl _wcstok(wchar_t *const _String, wchar_t const *const _Delimiter) { return wcstok(_String, _Delimiter, 0);} __declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcserror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcserror(int _ErrorNumber);errno_t __cdecl _wcserror_s(wchar_t *_Buffer, size_t _SizeInWords, int _ErrorNumber);__declspec(deprecated("This function or variable may be unsafe. Consider using " "__wcserror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl __wcserror(wchar_t const *_String);errno_t __cdecl __wcserror_s(wchar_t *_Buffer, size_t _SizeInWords, wchar_t const *_ErrorMessage);int __cdecl _wcsicmp(wchar_t const *_String1, wchar_t const *_String2);int __cdecl _wcsicmp_l(wchar_t const *_String1, wchar_t const *_String2, _locale_t _Locale);int __cdecl _wcsnicmp(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);int __cdecl _wcsnicmp_l(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount, _locale_t _Locale);errno_t __cdecl _wcsnset_s(wchar_t *_Destination, size_t _SizeInWords, wchar_t _Value, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsnset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsnset(wchar_t *_String, wchar_t _Value, size_t _MaxCount);wchar_t *__cdecl _wcsrev(wchar_t *_String);errno_t __cdecl _wcsset_s(wchar_t *_Destination, size_t _SizeInWords, wchar_t _Value);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsset(wchar_t *_String, wchar_t _Value);errno_t __cdecl _wcslwr_s(wchar_t *_String, size_t _SizeInWords);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcslwr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcslwr(wchar_t *_String);errno_t __cdecl _wcslwr_s_l(wchar_t *_String, size_t _SizeInWords, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcslwr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcslwr_l(wchar_t *_String, _locale_t _Locale);errno_t __cdecl _wcsupr_s(wchar_t *_String, size_t _Size);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsupr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsupr(wchar_t *_String);errno_t __cdecl _wcsupr_s_l(wchar_t *_String, size_t _Size, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsupr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsupr_l(wchar_t *_String, _locale_t _Locale);size_t __cdecl wcsxfrm(wchar_t *_Destination, wchar_t const *_Source, size_t _MaxCount);size_t __cdecl _wcsxfrm_l(wchar_t *_Destination, wchar_t const *_Source, size_t _MaxCount, _locale_t _Locale);int __cdecl wcscoll(wchar_t const *_String1, wchar_t const *_String2);int __cdecl _wcscoll_l(wchar_t const *_String1, wchar_t const *_String2, _locale_t _Locale);int __cdecl _wcsicoll(wchar_t const *_String1, wchar_t const *_String2);int __cdecl _wcsicoll_l(wchar_t const *_String1, wchar_t const *_String2, _locale_t _Locale);int __cdecl _wcsncoll(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);int __cdecl _wcsncoll_l(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount, _locale_t _Locale);int __cdecl _wcsnicoll(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);int __cdecl _wcsnicoll_l(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount, _locale_t _Locale);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsdup" ". See online help for details.")) wchar_t *__cdecl wcsdup(wchar_t const *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsicmp" ". See online help for details.")) int __cdecl wcsicmp(wchar_t const *_String1, wchar_t const *_String2);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsnicmp" ". See online help for details.")) int __cdecl wcsnicmp(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsnset" ". See online help for details.")) wchar_t *__cdecl wcsnset(wchar_t *_String, wchar_t _Value, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsrev" ". See online help for details.")) wchar_t *__cdecl wcsrev(wchar_t *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsset" ". See online help for details.")) wchar_t *__cdecl wcsset(wchar_t *_String, wchar_t _Value);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcslwr" ". See online help for details.")) wchar_t *__cdecl wcslwr(wchar_t *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsupr" ". See online help for details.")) wchar_t *__cdecl wcsupr(wchar_t *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsicoll" ". See online help for details.")) int __cdecl wcsicoll(wchar_t const *_String1, wchar_t const *_String2);__pragma(pack(pop))#pragma warning(pop) #pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) errno_t __cdecl strcpy_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source);errno_t __cdecl strcat_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source);errno_t __cdecl strerror_s(char *_Buffer, size_t _SizeInBytes, int _ErrorNumber);errno_t __cdecl strncat_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source, rsize_t _MaxCount);errno_t __cdecl strncpy_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source, rsize_t _MaxCount);char *__cdecl strtok_s(char *_String, char const *_Delimiter, char **_Context);void *__cdecl _memccpy(void *_Dst, void const *_Src, int _Val, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strcat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strcat(char *_Destination, char const *_Source);int __cdecl strcmp(char const *_Str1, char const *_Str2);int __cdecl _strcmpi(char const *_String1, char const *_String2);int __cdecl strcoll(char const *_String1, char const *_String2);int __cdecl _strcoll_l(char const *_String1, char const *_String2, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strcpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strcpy(char *_Destination, char const *_Source);size_t __cdecl strcspn(char const *_Str, char const *_Control);__declspec(allocator) char *__cdecl _strdup(char const *_Source);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strerror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strerror(char const *_ErrorMessage);errno_t __cdecl _strerror_s(char *_Buffer, size_t _SizeInBytes, char const *_ErrorMessage);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strerror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strerror(int _ErrorMessage);int __cdecl _stricmp(char const *_String1, char const *_String2);int __cdecl _stricoll(char const *_String1, char const *_String2);int __cdecl _stricoll_l(char const *_String1, char const *_String2, _locale_t _Locale);int __cdecl _stricmp_l(char const *_String1, char const *_String2, _locale_t _Locale);size_t __cdecl strlen(char const *_Str);errno_t __cdecl _strlwr_s(char *_String, size_t _Size);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strlwr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strlwr(char *_String);errno_t __cdecl _strlwr_s_l(char *_String, size_t _Size, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strlwr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strlwr_l(char *_String, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strncat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strncat(char *_Destination, char const *_Source, size_t _Count);int __cdecl strncmp(char const *_Str1, char const *_Str2, size_t _MaxCount);int __cdecl _strnicmp(char const *_String1, char const *_String2, size_t _MaxCount);int __cdecl _strnicmp_l(char const *_String1, char const *_String2, size_t _MaxCount, _locale_t _Locale);int __cdecl _strnicoll(char const *_String1, char const *_String2, size_t _MaxCount);int __cdecl _strnicoll_l(char const *_String1, char const *_String2, size_t _MaxCount, _locale_t _Locale);int __cdecl _strncoll(char const *_String1, char const *_String2, size_t _MaxCount);int __cdecl _strncoll_l(char const *_String1, char const *_String2, size_t _MaxCount, _locale_t _Locale);size_t __cdecl __strncnt(char const *_String, size_t _Count);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strncpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strncpy(char *_Destination, char const *_Source, size_t _Count);size_t __cdecl strnlen(char const *_String, size_t _MaxCount);static __inline size_t __cdecl strnlen_s(char const *_String, size_t _MaxCount) { return _String==0 ? 0 :strnlen(_String, _MaxCount);} errno_t __cdecl _strnset_s(char *_String, size_t _SizeInBytes, int _Value, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strnset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strnset(char *_Destination, int _Value, size_t _Count);char *__cdecl strpbrk(char const *_Str, char const *_Control);char *__cdecl _strrev(char *_Str);errno_t __cdecl _strset_s(char *_Destination, size_t _DestinationSize, int _Value);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strset(char *_Destination, int _Value);size_t __cdecl strspn(char const *_Str, char const *_Control);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strtok_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strtok(char *_String, char const *_Delimiter);errno_t __cdecl _strupr_s(char *_String, size_t _Size);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strupr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strupr(char *_String);errno_t __cdecl _strupr_s_l(char *_String, size_t _Size, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strupr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strupr_l(char *_String, _locale_t _Locale);size_t __cdecl strxfrm(char *_Destination, char const *_Source, size_t _MaxCount);size_t __cdecl _strxfrm_l(char *_Destination, char const *_Source, size_t _MaxCount, _locale_t _Locale);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strdup" ". See online help for details.")) char *__cdecl strdup(char const *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strcmpi" ". See online help for details.")) int __cdecl strcmpi(char const *_String1, char const *_String2);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_stricmp" ". See online help for details.")) int __cdecl stricmp(char const *_String1, char const *_String2);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strlwr" ". See online help for details.")) char *__cdecl strlwr(char *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strnicmp" ". See online help for details.")) int __cdecl strnicmp(char const *_String1, char const *_String2, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strnset" ". See online help for details.")) char *__cdecl strnset(char *_String, int _Value, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strrev" ". See online help for details.")) char *__cdecl strrev(char *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strset" ". See online help for details.")) char *__cdecl strset(char *_String, int _Value);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strupr" ". See online help for details.")) char *__cdecl strupr(char *_String);__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4514 4820) __pragma(pack(push, 8)) __pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) typedef unsigned short _ino_t;typedef _ino_t ino_t;#line 24 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\sys/types.h" typedef unsigned int _dev_t;typedef _dev_t dev_t;#line 36 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\sys/types.h" typedef long _off_t;typedef _off_t off_t;#line 48 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\sys/types.h"#pragma warning(pop) typedef char *sds;#pragma pack(push, 1) struct sdshdr5 { unsigned char flags;char buf[];};struct sdshdr8 { uint8_t len;uint8_t alloc;unsigned char flags;char buf[];};struct sdshdr16 { uint16_t len;uint16_t alloc;unsigned char flags;char buf[];};struct sdshdr32 { uint32_t len;uint32_t alloc;unsigned char flags;char buf[];};struct sdshdr64 { uint64_t len;uint64_t alloc;unsigned char flags;char buf[];};#pragma pack(pop) static inline size_t sdslen(const sds s) { unsigned char flags=s[-1];switch(flags &7) { case 0 :return((flags) >> 3) ;case 1 :return((struct sdshdr8 *)((s) -(sizeof(struct sdshdr8)))) ->len;case 2 :return((struct sdshdr16 *)((s) -(sizeof(struct sdshdr16)))) ->len;case 3 :return((struct sdshdr32 *)((s) -(sizeof(struct sdshdr32)))) ->len;case 4 :return((struct sdshdr64 *)((s) -(sizeof(struct sdshdr64)))) ->len;} return 0;}static inline size_t sdsavail(const sds s) { unsigned char flags=s[-1];switch(flags &7) { case 0 :{ return 0;} case 1 :{ struct sdshdr8 *sh=(void *)((s) -(sizeof(struct sdshdr8)));;return sh->alloc - sh->len;} case 2 :{ struct sdshdr16 *sh=(void *)((s) -(sizeof(struct sdshdr16)));;return sh->alloc - sh->len;} case 3 :{ struct sdshdr32 *sh=(void *)((s) -(sizeof(struct sdshdr32)));;return sh->alloc - sh->len;} case 4 :{ struct sdshdr64 *sh=(void *)((s) -(sizeof(struct sdshdr64)));;return sh->alloc - sh->len;} } return 0;}static inline void sdssetlen(sds s, size_t newlen) { unsigned char flags=s[-1];switch(flags &7) { case 0 :{ unsigned char *fp=((unsigned char *) s) - 1;*fp=0|(newlen<< 3);} break;case 1 :((struct sdshdr8 *)((s) -(sizeof(struct sdshdr8)))) ->len=(uint8_t) newlen;break;case 2 :((struct sdshdr16 *)((s) -(sizeof(struct sdshdr16)))) ->len=(uint16_t) newlen;break;case 3 :((struct sdshdr32 *)((s) -(sizeof(struct sdshdr32)))) -> len
Definition: CPAL.d:15583
#define y0
#define tolerance
Definition: aptex-macros.h:786
#define count(a)
Definition: aptex-macros.h:781
#define x0
#define denominator
#define hash
Definition: aptex.h:388
char * p2
Definition: bmpfont.h:62
char * p1
Definition: bmpfont.h:62
static void _cairo_box_add_point(cairo_box_t *box, const cairo_point_t *point)
static void _cairo_box_set(cairo_box_t *box, const cairo_point_t *p1, const cairo_point_t *p2)
unsigned long _cairo_hash_bytes(unsigned long hash, const void *ptr, unsigned int length)
Definition: cairo-cache.c:329
cairo_status_t _cairo_error(cairo_status_t status)
Definition: cairo-error.c:65
#define _cairo_error_throw(status)
static int _cairo_fixed_is_integer(cairo_fixed_t f)
static cairo_fixed_t _cairo_fixed_mul(cairo_fixed_t a, cairo_fixed_t b)
#define CAIRO_FIXED_ONE
static cairo_fixed_t _cairo_fixed_from_double(double d)
static double _cairo_fixed_to_double(cairo_fixed_t f)
int32_t cairo_fixed_t
#define VG(x)
static void cairo_list_init(cairo_list_t *entry)
static void cairo_list_add_tail(cairo_list_t *entry, cairo_list_t *head)
#define _cairo_malloc(size)
#define _cairo_malloc_ab_plus_c(a, size, c)
void _cairo_matrix_transform_bounding_box_fixed(const cairo_matrix_t *matrix, cairo_box_t *bbox, cairo_bool_t *is_tight)
Definition: cairo-matrix.c:525
void cairo_matrix_transform_point(const cairo_matrix_t *matrix, double *x, double *y)
Definition: cairo-matrix.c:410
cairo_bool_t _cairo_path_bounder_extents(const cairo_path_fixed_t *path, cairo_box_t *extents)
char cairo_path_op_t
#define cairo_path_tail(path__)
#define cairo_path_buf_prev(pos__)
@ CAIRO_PATH_OP_LINE_TO
@ CAIRO_PATH_OP_MOVE_TO
@ CAIRO_PATH_OP_CLOSE_PATH
@ CAIRO_PATH_OP_CURVE_TO
#define WATCH_PATH
#define cairo_path_head(path__)
#define cairo_path_buf_next(pos__)
#define cairo_path_foreach_buf_end(pos__, path__)
#define cairo_path_foreach_buf_start(pos__, path__)
void _cairo_path_fixed_translate(cairo_path_fixed_t *path, cairo_fixed_t offx, cairo_fixed_t offy)
cairo_status_t _cairo_path_fixed_curve_to(cairo_path_fixed_t *path, cairo_fixed_t x0, cairo_fixed_t y0, cairo_fixed_t x1, cairo_fixed_t y1, cairo_fixed_t x2, cairo_fixed_t y2)
cairo_bool_t _cairo_path_fixed_iter_is_fill_box(cairo_path_fixed_iter_t *_iter, cairo_box_t *box)
cairo_bool_t _cairo_path_fixed_is_rectangle(const cairo_path_fixed_t *path, cairo_box_t *box)
void _cairo_path_fixed_fini(cairo_path_fixed_t *path)
void _cairo_path_fixed_transform(cairo_path_fixed_t *path, const cairo_matrix_t *matrix)
struct cairo_path_flattener cpf_t
void _cairo_path_fixed_iter_init(cairo_path_fixed_iter_t *iter, const cairo_path_fixed_t *path)
cairo_status_t _cairo_path_fixed_move_to(cairo_path_fixed_t *path, cairo_fixed_t x, cairo_fixed_t y)
cairo_bool_t _cairo_path_fixed_iter_at_end(const cairo_path_fixed_iter_t *iter)
cairo_bool_t _cairo_path_fixed_equal(const cairo_path_fixed_t *a, const cairo_path_fixed_t *b)
cairo_status_t _cairo_path_fixed_interpret_flat(const cairo_path_fixed_t *path, cairo_path_fixed_move_to_func_t *move_to, cairo_path_fixed_line_to_func_t *line_to, cairo_path_fixed_close_path_func_t *close_path, void *closure, double tolerance)
cairo_status_t _cairo_path_fixed_rel_curve_to(cairo_path_fixed_t *path, cairo_fixed_t dx0, cairo_fixed_t dy0, cairo_fixed_t dx1, cairo_fixed_t dy1, cairo_fixed_t dx2, cairo_fixed_t dy2)
cairo_status_t _cairo_path_fixed_rel_line_to(cairo_path_fixed_t *path, cairo_fixed_t dx, cairo_fixed_t dy)
cairo_bool_t _cairo_path_fixed_is_simple_quad(const cairo_path_fixed_t *path)
cairo_status_t _cairo_path_fixed_line_to(cairo_path_fixed_t *path, cairo_fixed_t x, cairo_fixed_t y)
void _cairo_path_fixed_init(cairo_path_fixed_t *path)
cairo_status_t _cairo_path_fixed_init_copy(cairo_path_fixed_t *path, const cairo_path_fixed_t *other)
cairo_bool_t _cairo_path_fixed_is_stroke_box(const cairo_path_fixed_t *path, cairo_box_t *box)
cairo_status_t _cairo_path_fixed_interpret(const cairo_path_fixed_t *path, cairo_path_fixed_move_to_func_t *move_to, cairo_path_fixed_line_to_func_t *line_to, cairo_path_fixed_curve_to_func_t *curve_to, cairo_path_fixed_close_path_func_t *close_path, void *closure)
cairo_path_fixed_t * _cairo_path_fixed_create(void)
unsigned long _cairo_path_fixed_hash(const cairo_path_fixed_t *path)
cairo_status_t _cairo_path_fixed_close_path(cairo_path_fixed_t *path)
cairo_status_t _cairo_path_fixed_append(cairo_path_fixed_t *path, const cairo_path_fixed_t *other, cairo_fixed_t tx, cairo_fixed_t ty)
cairo_status_t _cairo_path_fixed_rel_move_to(cairo_path_fixed_t *path, cairo_fixed_t dx, cairo_fixed_t dy)
cairo_bool_t _cairo_path_fixed_get_current_point(cairo_path_fixed_t *path, cairo_fixed_t *x, cairo_fixed_t *y)
struct _cairo_path_fixed_append_closure cairo_path_fixed_append_closure_t
void _cairo_path_fixed_new_sub_path(cairo_path_fixed_t *path)
unsigned long _cairo_path_fixed_size(const cairo_path_fixed_t *path)
cairo_bool_t _cairo_path_fixed_is_box(const cairo_path_fixed_t *path, cairo_box_t *box)
void _cairo_path_fixed_destroy(cairo_path_fixed_t *path)
static cairo_status_t curve_to(void *closure, const cairo_point_t *b, const cairo_point_t *c, const cairo_point_t *d)
static cairo_status_t line_to(void *closure, const cairo_point_t *point)
static cairo_status_t move_to(void *closure, const cairo_point_t *point)
void _cairo_box_add_curve_to(cairo_box_t *extents, const cairo_point_t *a, const cairo_point_t *b, const cairo_point_t *c, const cairo_point_t *d)
static cairo_bool_t _cairo_slope_equal(const cairo_slope_t *a, const cairo_slope_t *b)
static void _cairo_slope_init(cairo_slope_t *slope, const cairo_point_t *a, const cairo_point_t *b)
static cairo_bool_t _cairo_slope_backwards(const cairo_slope_t *a, const cairo_slope_t *b)
cairo_status_t _cairo_spline_decompose(cairo_spline_t *spline, double tolerance)
Definition: cairo-spline.c:260
cairo_bool_t _cairo_spline_init(cairo_spline_t *spline, cairo_spline_add_point_func_t add_point_func, void *closure, const cairo_point_t *a, const cairo_point_t *b, const cairo_point_t *c, const cairo_point_t *d)
Definition: cairo-spline.c:84
cairo_status_t(* cairo_spline_add_point_func_t)(void *closure, const cairo_point_t *point, const cairo_slope_t *tangent)
int _cairo_int64_lt(cairo_int64_t a, cairo_int64_t b)
#define _cairo_int64_sub(a, b)
#define _cairo_int64_is_zero(a)
#define _cairo_int64_negative(a)
cairo_int64_t _cairo_int32x32_64_mul(int32_t a, int32_t b)
int cairo_bool_t
Definition: cairo.h:107
@ CAIRO_STATUS_NO_CURRENT_POINT
Definition: cairo.h:320
@ CAIRO_STATUS_SUCCESS
Definition: cairo.h:315
@ CAIRO_STATUS_NO_MEMORY
Definition: cairo.h:317
enum _cairo_status cairo_status_t
cairo_status_t() cairo_path_fixed_line_to_func_t(void *closure, const cairo_point_t *point)
Definition: cairoint.h:998
#define ASSERT_NOT_REACHED
Definition: cairoint.h:155
cairo_status_t() cairo_path_fixed_move_to_func_t(void *closure, const cairo_point_t *point)
Definition: cairoint.h:994
#define COMPILE_TIME_ASSERT(condition)
Definition: cairoint.h:162
cairo_status_t() cairo_path_fixed_curve_to_func_t(void *closure, const cairo_point_t *p0, const cairo_point_t *p1, const cairo_point_t *p2)
Definition: cairoint.h:1002
#define _CAIRO_HASH_INIT_VALUE
Definition: cairoint.h:421
#define ARRAY_LENGTH(__array)
Definition: cairoint.h:137
cairo_status_t() cairo_path_fixed_close_path_func_t(void *closure)
Definition: cairoint.h:1008
static cairo_status_t _cairo_path_fixed_move_to_apply(cairo_path_fixed_t *path)
static void _cairo_path_buf_add_op(cairo_path_buf_t *buf, cairo_path_op_t op)
static cairo_status_t _cpf_curve_to(void *closure, const cairo_point_t *p1, const cairo_point_t *p2, const cairo_point_t *p3)
static void _cairo_path_fixed_offset_and_scale(cairo_path_fixed_t *path, cairo_fixed_t offx, cairo_fixed_t offy, cairo_fixed_t scalex, cairo_fixed_t scaley)
static void _cairo_path_fixed_transform_point(cairo_point_t *p, const cairo_matrix_t *matrix)
static void _canonical_box(cairo_box_t *box, const cairo_point_t *p1, const cairo_point_t *p2)
static cairo_path_buf_t * _cairo_path_buf_create(int size_ops, int size_points)
static cairo_status_t _append_close_path(void *abstract_closure)
static cairo_status_t _append_move_to(void *abstract_closure, const cairo_point_t *point)
static cairo_status_t _cpf_move_to(void *closure, const cairo_point_t *point)
static cairo_status_t _append_line_to(void *abstract_closure, const cairo_point_t *point)
static cairo_bool_t _path_is_quad(const cairo_path_fixed_t *path)
static cairo_bool_t _points_form_rect(const cairo_point_t *points)
static cairo_path_op_t _cairo_path_fixed_last_op(cairo_path_fixed_t *path)
static cairo_bool_t _lines_intersect_or_are_coincident(cairo_point_t a, cairo_point_t b, cairo_point_t c, cairo_point_t d)
static cairo_status_t _append_curve_to(void *abstract_closure, const cairo_point_t *p0, const cairo_point_t *p1, const cairo_point_t *p2)
#define STRINGIFYFLAG(x)
static void _cairo_path_fixed_drop_line_to(cairo_path_fixed_t *path)
static const cairo_point_t * _cairo_path_fixed_penultimate_point(cairo_path_fixed_t *path)
static cairo_status_t _cairo_path_fixed_add(cairo_path_fixed_t *path, cairo_path_op_t op, const cairo_point_t *points, int num_points)
static cairo_status_t _cpf_line_to(void *closure, const cairo_point_t *point)
static void _cairo_path_buf_destroy(cairo_path_buf_t *buf)
static cairo_bool_t _cairo_path_fixed_iter_next_op(cairo_path_fixed_iter_t *iter)
static cairo_status_t _cpf_close_path(void *closure)
static void _cairo_path_fixed_add_buf(cairo_path_fixed_t *path, cairo_path_buf_t *buf)
static void _cairo_path_buf_add_points(cairo_path_buf_t *buf, const cairo_point_t *points, int num_points)
#define b
Definition: jpegint.h:372
@ FALSE
Definition: dd.h:101
@ TRUE
Definition: dd.h:102
#define free(a)
Definition: decNumber.cpp:310
#define p0
#define t
Definition: afcover.h:96
static FIELD_PTR prev
Definition: genind.c:36
#define c(n)
Definition: gpos-common.c:150
#define a(n)
Definition: gpos-common.c:148
#define d(n)
Definition: gpos-common.c:151
#define memcmp(s1, s2, n)
Definition: gsftopk.c:66
#define memcpy(d, s, n)
Definition: gsftopk.c:64
assert(pcxLoadImage24((char *)((void *) 0), fp, pinfo, hdr))
#define likely(x)
Definition: jbig2arith.cc:115
#define unlikely(x)
Definition: jbig2arith.cc:116
#define MIN(a, b)
Definition: jpegint.h:269
#define NULL
Definition: ftobjs.h:61
small capitals from c petite p
Definition: afcover.h:72
small capitals from c petite p scientific i
Definition: afcover.h:80
sizeof(AF_ModuleRec)
kerning y
Definition: ttdriver.c:212
int int double double double char double points
Definition: gdfx.h:18
#define buf
static void close_path(void)
Definition: mpost.c:270
#define fprintf
Definition: mendex.h:64
char * closure
Definition: font.h:85
#define snprintf
Definition: snprintf.c:41
@ other
Definition: mtxline.h:22
float x
Definition: cordic.py:15
float ** matrix()
#define x1
#define y1
#define y2
#define x2
#define status
cairo_path_op_t * op
const cairo_path_buf_t * first
const cairo_path_buf_t * buf
Definition: jquant2.c:258
cairo_point_t current_point
cairo_path_fixed_move_to_func_t * move_to
cairo_path_fixed_line_to_func_t * line_to
cairo_path_fixed_close_path_func_t * close_path
Definition: sh.h:1226
Definition: tpic.c:45
double x
Definition: tpic.c:46
double y
Definition: tpic.c:46
Definition: mpost.c:238
double y
Definition: mpost.c:239
double x
Definition: mpost.c:239
Definition: dvips.h:235
pointer path
Definition: t1imager.h:36
op
Definition: tex4ht.c:3129