X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=utils%2Fspline.h;h=a5a366cbd977e50c7d7e70edbda224661a29b71a;hb=2d04c4f22466851aedb6ed0f2919d148f726b889;hp=c0c4d7fd3aaaf7cf4f9c52da38757d3d6a1ad90f;hpb=0a1527cc01e9894017614b7c36b838b2b6914ba9;p=xscreensaver diff --git a/utils/spline.h b/utils/spline.h index c0c4d7fd..a5a366cb 100644 --- a/utils/spline.h +++ b/utils/spline.h @@ -1,33 +1,51 @@ -#ifndef _SPLINE_H_ -#define _SPLINE_H_ +/* + * Copyright (c) 1987, 1988, 1989 Stanford University + * + * Permission to use, copy, modify, distribute, and sell this software and its + * documentation for any purpose is hereby granted without fee, provided + * that the above copyright notice appear in all copies and that both that + * copyright notice and this permission notice appear in supporting + * documentation, and that the name of Stanford not be used in advertising or + * publicity pertaining to distribution of the software without specific, + * written prior permission. Stanford makes no representations about + * the suitability of this software for any purpose. It is provided "as is" + * without express or implied warranty. + * + * STANFORD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. + * IN NO EVENT SHALL STANFORD BE LIABLE FOR ANY SPECIAL, INDIRECT OR + * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, + * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION + * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ -#include +/* This code came with the InterViews distribution, and was translated + from C++ to C by Matthieu Devin some time in 1992. + */ -#if __STDC__ -# define P(x)x -#else -# define P(x)() -#endif +#ifndef _SPLINE_H_ +#define _SPLINE_H_ typedef struct _spline { /* input */ - u_int n_controls; + unsigned int n_controls; double* control_x; double* control_y; /* output */ - u_int n_points; + unsigned int n_points; XPoint* points; - u_int allocated_points; + unsigned int allocated_points; } spline; -spline* make_spline P((u_int size)); -void compute_spline P((spline* s)); -void compute_closed_spline P((spline* s)); -void just_fill_spline P((spline* s)); -void append_spline_points P((spline* s1, spline* s2)); -void spline_bounding_box P((spline* s, XRectangle* rectangle_out)); +spline* make_spline (unsigned int size); +void compute_spline (spline* s); +void compute_closed_spline (spline* s); +void just_fill_spline (spline* s); +void append_spline_points (spline* s1, spline* s2); +void spline_bounding_box (spline* s, XRectangle* rectangle_out); +void free_spline(spline *s); -#undef P #endif /* _SPLINE_H_ */