SCM Repository
View of /branches/pure-cfg/src/include/Diderot/diderot.h
Parent Directory
|
Revision Log
Revision 756 -
(download)
(as text)
(annotate)
Thu Apr 7 15:06:23 2011 UTC (11 years, 2 months ago) by jhr
File size: 1781 byte(s)
Thu Apr 7 15:06:23 2011 UTC (11 years, 2 months ago) by jhr
File size: 1781 byte(s)
Added lerp functions
/*! \file diderot.h * * \author John Reppy * * This is the interface to the Diderot runtime for the C target. For now, * we are targetting single-precision computations. */ /* * COPYRIGHT (c) 2010 The Diderot Project (http://diderot-language.cs.uchicago.edu) * All rights reserved. */ #ifndef _DIDEROT_H_ #define _DIDEROT_H_ /* gcc has a bug that breaks code that uses 8-byte vectors (e.g., vec2f_t), but clang * handles the code correctly. */ #if defined(__clang__) # define VEC2_OK #endif #ifdef NDEBUG #define STATIC_INLINE static inline #else #define STATIC_INLINE static #endif #include <stdint.h> #include <stdbool.h> #include <stdlib.h> #include <math.h> #include <stdio.h> // for printing output #include "types.h" #include "strands.h" /* load image data from Nrrd files */ extern Status_t Diderot_LoadImage1D (Diderot_string_t name, Diderot_image1D_t **img); extern Status_t Diderot_LoadImage2D (Diderot_string_t name, Diderot_image2D_t **img); extern Status_t Diderot_LoadImage3D (Diderot_string_t name, Diderot_image3D_t **img); /* functions to get input-parameter values */ extern Status_t Diderot_InputString (const char *, const char **, bool); extern Status_t Diderot_Inputf (const char *, float *, bool); extern Status_t Diderot_InputVec3f (const char *, vec3f_t *, bool); /********** scalar math functions **********/ STATIC_INLINE float maxf (float a, float b) { return (a < b)? b : a; } STATIC_INLINE float lerpf (float a, float b, float t) { return a + t*(b - a); } /********** vector math functions **********/ #include "inline-vec2.h" #include "inline-vec3.h" #include "inline-vec4.h" #include "inline-matrix.h" /********** other Diderot support functions **********/ #include "inline-image.h" #endif /* !_DIDEROT_H_ */
root@smlnj-gforge.cs.uchicago.edu | ViewVC Help |
Powered by ViewVC 1.0.0 |