Subversion Repositories filter_foundry

Rev

Rev 193 | Rev 268 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
259 daniel-mar 1
/*
2
        This file is part of a common library
3
    Copyright (C) 1990-2006 Toby Thain, toby@telegraphics.com.au
4
 
5
    This program is free software; you can redistribute it and/or modify
6
    it under the terms of the GNU General Public License as published by  
7
    the Free Software Foundation; either version 2 of the License, or
8
    (at your option) any later version.
9
 
10
    This program is distributed in the hope that it will be useful,
11
    but WITHOUT ANY WARRANTY; without even the implied warranty of
12
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
    GNU General Public License for more details.
14
 
15
    You should have received a copy of the GNU General Public License  
16
    along with this program; if not, write to the Free Software
17
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18
*/
19
 
20
#include <ctype.h>
21
//#include <fp.h> // double_t
22
#include <stdlib.h>
23
#include <string.h> // strcpy
24
 
25
#define RANGE(lo,hi) (((1<<(hi-lo+1))-1)<<lo)
26
 
27
#define STRDUP(d,s) strcpy((d) = malloc(strlen(s)+1),(s))
28
#define NEW(x) ((x) = malloc(sizeof*(x)))
29
#define DISPOSE free
30
 
31
#define SGN(x) ((x) < 0 ? -1 : (x) > 0)
32
#define HEX(c) (isdigit(c) ? (c)-'0' : tolower(c)-'a'+10)
33
 
34
enum{
35
        ANON='\?\?\?\?' // anonymous file type/creator
36
};
37
 
38
 
39
int GCD(int m,int n);
40
void simplify_fraction(int n,int d, int*n_,int*d_);
41
void multiply_fraction(int u,int u_, int v,int v_, int*w,int*w_);
42
// these are defined as macros in Photoshop API :(
43
#ifndef max
44
int max(int a,int b);
45
int min(int a,int b);
46
#endif
47
void copy_hex(char *p,unsigned char *q,int n);
48
int count_set_bits(unsigned x);
49
char *cat(char *d,char *s);
50
int spf(char *s,char *fmt,...);