head	1.8;
access;
symbols
	bobbase:1.6
	bob:1.6.1
	r2_1:1.6
	r2_0:1.6
	r1_1_beta:1.5
	r1_1_alpha:1.5
	r1_0:1.5
	r0_11:1.4
	r0_10:1.3
	r0_9:1.1;
locks
	thoth:1.6.1.2; strict;
comment	@# @;


1.8
date	95.02.01.18.26.15;	author fjsoria;	state Exp;
branches;
next	1.7;

1.7
date	95.01.16.22.10.54;	author fjsoria;	state Exp;
branches;
next	1.6;

1.6
date	94.08.22.15.20.29;	author thoth;	state Exp;
branches
	1.6.1.1;
next	1.5;

1.5
date	94.05.17.12.54.56;	author thoth;	state Exp;
branches;
next	1.4;

1.4
date	94.02.03.16.22.48;	author thoth;	state Exp;
branches;
next	1.3;

1.3
date	94.01.31.15.51.12;	author thoth;	state Exp;
branches;
next	1.2;

1.2
date	93.12.29.17.16.45;	author thoth;	state Exp;
branches;
next	1.1;

1.1
date	93.11.29.22.25.25;	author thoth;	state Exp;
branches;
next	;

1.6.1.1
date	94.12.28.17.49.18;	author thoth;	state Exp;
branches;
next	1.6.1.2;

1.6.1.2
date	95.01.31.16.02.40;	author thoth;	state Exp;
branches;
next	;


desc
@BitDI operations.
@


1.8
log
@fix for cast problem in g++
for BIT-cvcomplex.c
@
text
@prefix
#
#	Copyright 1993, Center for Computer Vision and Visualization,
#	University of Florida.  All rights reserved.
#
#
# $Log: bit-operations.desc,v $
# Revision 1.7  1995/01/16  22:10:54  fjsoria
# added operator+ (inlined) for BIO-reductions.c
#
# Revision 1.6  1994/08/22  15:20:29  thoth
# DOS-inspired name rework.
#
# Revision 1.5  1994/05/17  12:54:56  thoth
# Improved operations generation scheme.  Lines from the op.desc file can
# be quoted into the .c file to allow inclusion of infrastructure.  Also
# the op.desc output can be redirected to several files.  The prefix
# directive allows common information (include files) to be included in
# every generated source file.
#
# Revision 1.4  1994/02/03  16:22:48  thoth
# Arguments to binary operations were specified "lhs rhs return" but are
# now specified "return lhs rhs" to be consistent with function declaration
# syntax.
#
# Revision 1.3  1994/01/31  15:51:12  thoth
# converters to CoreImages now available.
#
# Revision 1.2  1993/12/29  17:16:45  thoth
# Bit Discrete Image now uses Bit type.
#
# Revision 1.1  1993/11/29  22:25:25  thoth
# Initial revision
#
#

"C#include "BitDI.h"
"C#include "VectorI.h"
"C#include "ConstI.h"
"C#include "ImageIter.h"
end

filename BIO-cvcomplex.c
"C#ifdef __GNUC__
"Cinline complex conversion(IA_Bit b) {
"C	return complex(b);
"C}
"C#else
"C#define conversion
"C#endif
conversion I(complex) subop=conversion I(IA_Bit)
filename BIO-cvfloat.c
conversion I(float) I(IA_Bit)
filename BIO-cvint.c
conversion I(int) I(IA_Bit)
filename BIO-u_char.c
conversion I(u_char) I(IA_Bit)

# Binary operations for the Bit Discrete Image

filename BIO-__ad.c
binary pointwise commutative operator& I(IA_Bit) I(IA_Bit) I(IA_Bit)
binary pointwise commutative operator& I(IA_Bit) I(IA_Bit) IA_Bit
pointwise operator&= I(IA_Bit) I(IA_Bit)
pointwise operator&= I(IA_Bit) IA_Bit

filename BIO-__or.c
binary pointwise commutative operator| I(IA_Bit) I(IA_Bit) I(IA_Bit)
binary pointwise commutative operator| I(IA_Bit) I(IA_Bit) IA_Bit
pointwise operator|= I(IA_Bit) I(IA_Bit)
pointwise operator|= I(IA_Bit) IA_Bit

filename BIO-__er.c
binary pointwise commutative operator^ I(IA_Bit) I(IA_Bit) I(IA_Bit)
binary pointwise commutative operator^ I(IA_Bit) I(IA_Bit) IA_Bit
pointwise operator^= I(IA_Bit) I(IA_Bit)
pointwise operator^= I(IA_Bit) IA_Bit

filename BIO-__nt.c
unary pointwise operator~ subop=operator! I(IA_Bit) I(IA_Bit)

unary pointwise operator! I(IA_Bit) I(IA_Bit)

filename BIO-__eq.c
binary strictrel commutative operator== int I(IA_Bit) I(IA_Bit)
binary strictrel commutative operator== int I(IA_Bit) IA_Bit

filename BIO-strict_ne.c
binary strictrel commutative strict_ne subop=operator!= int I(IA_Bit) I(IA_Bit)
binary strictrel commutative strict_ne subop=operator!= int I(IA_Bit) IA_Bit

filename BIO-reductions.c
"C#ifdef __BROKEN_TYPE_CONVERSION
"Cinline int operator+(int a, IA_Bit b) { return a + int(b); }
"C#endif
reduction sum subop=operator+ zero=0 int I(IA_Bit)
@


1.7
log
@added operator+ (inlined) for BIO-reductions.c
@
text
@d8 3
d44 8
a51 1
conversion I(complex) I(IA_Bit)
@


1.6
log
@DOS-inspired name rework.
@
text
@d8 3
d83 3
@


1.6.1.1
log
@Image operations are now friendly with FBI.
Image ops now use operations table instead of switch.
@
text
@a7 3
# Revision 1.6  1994/08/22  15:20:29  thoth
# DOS-inspired name rework.
#
a34 2
"C#include "FBI.h"
"C#include "../valueset/OpTable.h"
@


1.6.1.2
log
@Need to replace the upward conversions with something...
@
text
@a7 4
# Revision 1.6.1.1  1994/12/28  17:49:18  thoth
# Image operations are now friendly with FBI.
# Image ops now use operations table instead of switch.
#
d43 1
a43 2
#conversion I(complex) I(IA_Bit)
unary pointwise to_complex subop=complex I(complex) I(IA_Bit)
d45 1
a45 2
#conversion I(float) I(IA_Bit)
unary pointwise to_float subop= I(float) I(IA_Bit)
d47 1
a47 2
#conversion I(int) I(IA_Bit)
unary pointwise to_int subop= I(int) I(IA_Bit)
d49 1
a49 2
#conversion I(u_char) I(IA_Bit)
unary pointwise to_uchar subop= I(u_char) I(IA_Bit)
a84 3
"C#ifdef __BROKEN_TYPE_CONVERSION
"Cinline int operator+(int a, IA_Bit b) { return a + int(b); }
"C#endif
@


1.5
log
@Improved operations generation scheme.  Lines from the op.desc file can
be quoted into the .c file to allow inclusion of infrastructure.  Also
the op.desc output can be redirected to several files.  The prefix
directive allows common information (include files) to be included in
every generated source file.
@
text
@d8 7
d78 3
@


1.4
log
@Arguments to binary operations were specified "lhs rhs return" but are
now specified "return lhs rhs" to be consistent with function declaration
syntax.
@
text
@d1 1
d8 5
d24 7
d32 1
d34 1
d36 1
d41 1
d47 1
d53 1
d59 1
d64 1
d68 1
@


1.3
log
@converters to CoreImages now available.
@
text
@d7 3
d26 1
a26 1
binary pointwise commutative operator& I(IA_Bit) IA_Bit I(IA_Bit)
d31 1
a31 1
binary pointwise commutative operator| I(IA_Bit) IA_Bit I(IA_Bit)
d36 1
a36 1
binary pointwise commutative operator^ I(IA_Bit) IA_Bit I(IA_Bit)
d44 2
a45 2
binary strictrel commutative operator== I(IA_Bit) I(IA_Bit) int
binary strictrel commutative operator== I(IA_Bit) IA_Bit int
d47 2
a48 2
binary strictrel commutative strict_ne subop=operator!= I(IA_Bit) I(IA_Bit) int 
binary strictrel commutative strict_ne subop=operator!= I(IA_Bit) IA_Bit int
@


1.2
log
@Bit Discrete Image now uses Bit type.
@
text
@d7 3
d14 5
@


1.1
log
@Initial revision
@
text
@d6 3
a8 1
# $Log$
d10 1
d14 16
a29 16
binary pointwise commutative operator& subop=operator&& I(u_char) I(u_char) I(u_char)
binary pointwise commutative operator& subop=operator&& I(u_char) u_char I(u_char)
pointwise operator&= I(u_char) I(u_char)
pointwise operator&= I(u_char) u_char

binary pointwise commutative operator| subop=operator|| I(u_char) I(u_char) I(u_char)
binary pointwise commutative operator| subop=operator|| I(u_char) u_char I(u_char)
pointwise operator|= I(u_char) I(u_char)
pointwise operator|= I(u_char) u_char

binary pointwise commutative operator^ subop=logical_xor I(u_char) I(u_char) I(u_char)
binary pointwise commutative operator^ subop=logical_xor I(u_char) u_char I(u_char)
pointwise operator^= I(u_char) I(u_char)
pointwise operator^= I(u_char) u_char

unary pointwise operator~ subop=operator! I(u_char) I(u_char)
d31 1
a31 1
unary pointwise operator! I(u_char) I(u_char)
d33 2
a34 2
binary strictrel commutative operator== subop=logical_eq I(u_char) I(u_char) int
binary strictrel commutative operator== subop=logical_eq I(u_char) u_char int
d36 2
a37 2
binary strictrel commutative strict_ne subop=logical_xor I(u_char) I(u_char) int 
binary strictrel commutative strict_ne subop=logical_xor I(u_char) u_char int
@
