Commit Graph

713 Commits

Author SHA1 Message Date
John Cupitt
90849a44c5 sync 2011-11-08 14:46:50 +00:00
John Cupitt
9493ea7e29 sync 2011-11-08 09:06:13 +00:00
John Cupitt
c80a19747f im_multiply() redone, fixes to max/min 2011-11-07 09:42:44 +00:00
John Cupitt
77d386cdaf redo im_max()/im_maxpos() as classes 2011-11-06 17:00:44 +00:00
John Cupitt
132c962f96 fix a few error messages 2011-11-06 13:13:58 +00:00
John Cupitt
11d0a28ccb redo im_abs as a class 2011-11-06 11:54:52 +00:00
John Cupitt
ebc0e54217 better leak checl output 2011-11-06 10:20:47 +00:00
John Cupitt
ac2fb4a823 fixed a fd leak
image rewind was not closing the fd
2011-11-06 09:58:02 +00:00
John Cupitt
5a5c3a527e use "rd" mode more often 2011-11-05 14:55:41 +00:00
John Cupitt
8e7d7063b2 change SMALLTILE down to 128x128
512x512 was just too big for large images
2011-11-05 14:20:36 +00:00
John Cupitt
7352d51053 redo im_rot*() as a class 2011-11-04 14:45:56 +00:00
John Cupitt
5f0db6a093 rebuild exif on save
on save, rebuild the whole of the exif block from vips metadata ...
users can now alter tags by updating attached strings
2011-11-03 18:35:41 +00:00
John Cupitt
86fa10d474 new exif tag format
jpeg2vips now attaches exif in a way that can be modified by client
programs
2011-11-03 10:50:58 +00:00
John Cupitt
52c8678b23 flush on too many open files
start to drop cached operations when there are too many files open

also, CLI args to control the cache limit, and more informative
--vips-leak messages
2011-11-02 14:51:39 +00:00
John Cupitt
b34c07a88f reorganise sink base class
the thread state made by sinkmemory was missing a member needed by the
base class ... move ->stop into vips thread state
2011-11-02 10:27:33 +00:00
John Cupitt
f2d9001cce rename function members
some function members were not named with a trailing _fn, causing
confusion
2011-11-02 09:22:30 +00:00
John Cupitt
550b914fa6 remove vipspool
vips_object_local_array() is much better ... get embed using this as
well
2011-11-01 14:45:56 +00:00
John Cupitt
3107ec0d34 sort out SET_ONCE usage 2011-11-01 13:31:08 +00:00
John Cupitt
5cd0b89981 sync 2011-11-01 12:31:59 +00:00
John Cupitt
4c74266017 remove 1-ary path in VipsLinear
the many-constant path is no slower, just keep that
2011-11-01 12:14:35 +00:00
John Cupitt
3e72edf1b5 rewrite im_black() as a class 2011-10-31 14:49:39 +00:00
John Cupitt
735749a4a2 add VipsLinear
remove im_lintra*(), redone as a class
2011-10-31 14:25:27 +00:00
John Cupitt
c2efba5162 invert works for all formats 2011-10-31 09:04:59 +00:00
John Cupitt
b4531ff24b add unary and invert
add a base class for unary operators, try it out with VipsInvert
2011-10-30 21:45:18 +00:00
John Cupitt
e14c5607b1 refactor ready for unary arithmetic
move most of the logic in binary.c into arithmetic.c ready to share with
unary
2011-10-30 18:31:45 +00:00
John Cupitt
7807efcfbe remove some dbg 2011-10-29 20:59:32 +01:00
John Cupitt
441ae2305e sync 2011-10-28 17:36:20 +01:00
John Cupitt
d503e710e2 fix array double -> gstring 2011-10-28 15:13:55 +01:00
John Cupitt
2da5560992 bandjoin done and dusted 2011-10-28 14:12:39 +01:00
John Cupitt
7dcda5c0c9 starting to factor out VipsArea 2011-10-27 22:13:21 +01:00
John Cupitt
5821f6cb40 done im_gbandjoin()
but needs testing, also see TODO for notes
2011-10-27 17:40:39 +01:00
John Cupitt
a09929ef94 added image array args 2011-10-27 15:27:03 +01:00
John Cupitt
c027528b82 im_clip2fmt() redone as a class
plus some rationalisation of member names
2011-10-27 12:10:24 +01:00
John Cupitt
85420c4f7e sync 2011-10-26 16:53:39 +01:00
John Cupitt
014763a845 rewrite im_replicate() as a class 2011-10-26 16:51:27 +01:00
John Cupitt
7e6f885ea1 redo im_extract*() as a class 2011-10-26 15:09:01 +01:00
John Cupitt
b969ce2aa5 im_*join() redone as a class 2011-10-26 13:26:20 +01:00
John Cupitt
e159aba7c7 small fixes, work on join.c 2011-10-26 09:39:14 +01:00
John Cupitt
b35e43c31e merge insert 2011-10-25 16:22:03 +01:00
John Cupitt
3f93f60d91 fix im_copy_set() 2011-10-25 15:44:54 +01:00
John Cupitt
2b39626b54 stdarg processing bug
optional output arg fubar
2011-10-25 09:58:10 +01:00
John Cupitt
a1e7188f82 im_embed() fix
vips7 compat wrapper was broken
2011-10-24 22:47:43 +01:00
John Cupitt
0c74ac2ebf insert works fully
switched im_insert over, though nip2 make check still fails
2011-10-24 16:21:42 +01:00
John Cupitt
045c2b37aa sync 2011-10-24 08:57:13 +01:00
John Cupitt
a5b8a21a54 VipsInsert is working
but array_double from CLI still needs work, see TODO
2011-10-23 22:05:21 +01:00
John Cupitt
2c4cbedc70 insert.c compiles
and we have VipsArea as a public struct for array arguments
2011-10-22 13:10:47 +01:00
John Cupitt
210668edc2 sync 2011-10-21 14:50:34 +01:00
John Cupitt
9ea6fc6653 sync 2011-10-21 09:35:05 +01:00
John Cupitt
02d8f0925f sybnc 2011-10-20 14:56:13 +01:00
John Cupitt
5ad2861b30 initial insert hack 2011-10-20 11:22:49 +01:00
John Cupitt
5f0bf05f2c TODO notes
and fix a typo
2011-10-19 12:06:02 +01:00
John Cupitt
07396c8b11 operation cache fixes
was not working for enums, cleaned up a bit
2011-10-19 11:35:56 +01:00
John Cupitt
7fdeb1789b vips7wrap works for non-image output
"vips max x.jpg" now works
2011-10-19 10:53:18 +01:00
John Cupitt
9078df3c7b TODO notes on exif problems 2011-10-18 14:50:47 +01:00
John Cupitt
932bc3585a work on wrapvips7 2011-10-17 14:48:20 +01:00
John Cupitt
ac377c143b im_dlip*() redone as a class
VipsFlip replaces  im_fliphor() and im_flipver().
2011-10-17 07:15:51 +01:00
John Cupitt
26792ed4e1 bugfixes
get the new arg system working
2011-10-16 17:48:28 +01:00
John Cupitt
8dfb3056ac added VipsEmbed
added VipsEmbed class, new macros for arg boilerplate, new priority
thing for arg ordering
2011-10-16 14:48:47 +01:00
John Cupitt
fba3d000a3 handle offset correctly in convsep
separable convolutions didn't handle offset correctly, thanks Nicolas
2011-10-15 13:12:46 +01:00
John Cupitt
173afe2169 better CSV parsing 2011-10-15 12:48:30 +01:00
John Cupitt
d25e94d0d2 squash compiler warnings
and rename vips_image_write_filename() to vips_image_write_to_file() to
be more consistent
2011-10-15 12:22:57 +01:00
John Cupitt
7f797e8a07 Merge remote-tracking branch 'origin/master' 2011-10-11 21:36:01 +01:00
John Cupitt
66126c1076 hackery to move to vips_copy()
half-way through moving over to the new vips_copy()
2011-10-11 17:47:06 +01:00
John Cupitt
d6526f7814 allow quoted strings in CSV files 2011-10-11 14:30:44 +01:00
John Cupitt
3acf9fd2aa vipscopy copies
but some work still needed on arg processing, see TODO
2011-10-02 10:22:21 +01:00
John Cupitt
c0610db15d more VipsImage props
expose more fields of VipsImage as props
2011-09-30 13:59:05 +01:00
John Cupitt
1c65d74325 VipsCopy can change props
VipsCopy has a set of optional input args that you can use to change
header fields
2011-09-30 09:39:47 +01:00
John Cupitt
45b2a9a525 add arg lookup
convenience function to look up vipsargs
2011-09-29 23:26:10 +01:00
John Cupitt
952199e92a add VipsCopy
add a basic VipsCopy operation, also demand_hint is now void
2011-09-29 13:34:14 +01:00
John Cupitt
0f46696f16 add --vips-leak
add --vips-leak flag for exit
2011-09-24 10:27:21 +01:00
John Cupitt
13e354e869 add vips_shutdown()
vips_shutdown() flushes caches, closes plugins and does a leak check
2011-09-24 10:17:32 +01:00
John Cupitt
2003b5b524 csv read knows about quoted strings
you can "enclose strings in \", and" it shouldn't get confused
2011-09-23 22:01:32 +01:00
John Cupitt
ae8faf6597 remove dmalloc support
we never used it and valgrind etc. is better anyway
2011-09-23 17:12:47 +01:00
John Cupitt
fbc3b1f608 allow NULLs for output params
so you can now do im_minpos (im, &min, NULL, NULL);
2011-09-23 17:03:02 +01:00
John Cupitt
9c6f08f22f TODO notes 2011-09-23 14:25:03 +01:00
John Cupitt
2959dbff39 oops memory problems
removed unnecessary and broken im_malloc() compat functions, fixed a
memleak
2011-09-23 12:27:37 +01:00
John Cupitt
ea84ce8ed0 add CLI args for new cache stuff
cache params now have CLI controls
2011-09-22 17:53:23 +01:00
John Cupitt
ed73e8cf08 add cache drop and trim
the operation cache now has drop and trim and can report stats
2011-09-22 14:07:12 +01:00
John Cupitt
9c84b0dfd9 add vips_tracked_malloc()
new malloc()/free() pair do tracked allocations ... use g_new()/g_free()
everywhere else
2011-09-21 14:50:32 +01:00
John Cupitt
414d6c8ddf sync 2011-09-20 21:22:47 +01:00
John Cupitt
0e0cf1481c g_free/im_free mixups 2011-09-20 14:52:02 +01:00
John Cupitt
4b2c8587b2 vips_malloc() size tracking
vips_malloc() now tracks allocation size and can report total mem use.
It seems to trigger quite a few nip2 bugs though, I guess we are
g_free()ing the result in places (or vice versa).

======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x78a8f)[0x2aae8e011a8f]
/lib/x86_64-linux-gnu/libc.so.6(cfree+0x73)[0x2aae8e0158e3]
/home/john/vips/lib/libvips.so.15(vips_free+0xc2)[0x2aae88f7717e]
/home/john/GIT/nip2/src/nip2[0x4c9ce2]
/home/john/GIT/nip2/src/nip2(path_map_exact+0x63)[0x4ca127]
/home/john/GIT/nip2/src/nip2[0x4b5381]
2011-09-19 16:44:51 +01:00
John Cupitt
359ce3208e cleanup
file in git which should be blocked, also TODO note
2011-09-12 14:55:22 +01:00
John Cupitt
5d1accfc83 fallback vips_init()
call vips_init() for the user if they forget
2011-09-09 17:14:27 +01:00
John Cupitt
e7cd1147ce cache in and working, at a basic level
reverted the switch thing as well, annoying
2011-09-09 17:01:29 +01:00
John Cupitt
d9883cbd8e cache fixups
fix various problems ... getting closer
2011-09-07 14:10:59 +01:00
John Cupitt
53b3018f41 add vipsobject cache
added the cache ... compiles, but not yet in use
2011-09-06 16:41:37 +01:00
John Cupitt
e99f6cc49e fix up VipsPool
vipspool working, test program in ~/try, passes valgrind
2011-09-06 10:37:00 +01:00
John Cupitt
b5cadc1815 move C API back to int operations
always return results through params
2011-09-05 21:28:35 +01:00
John Cupitt
b28cda68a7 TODO update 2011-09-05 18:21:21 +01:00
John Cupitt
ad016c53a2 C API supports optional output args
you can do stuff like

	int x;
	vips_min( fred, &min, "x", &x, NULL );

to get the x pos of the minimum
2011-09-05 18:16:32 +01:00
John Cupitt
4ce3346a4f VipsMin stops early if it can
if VipsMin sees a minimum value (eg. 0 for uchar) it'll stop searching
early
2011-09-05 14:10:56 +01:00
John Cupitt
7fe104fee6 support optional output args in the cli
the cli interface now supports optional output args ... C API next
2011-09-04 10:10:39 +01:00
John Cupitt
bbaef3dad1 sync 2011-09-02 18:21:28 +01:00
John Cupitt
958544e5cd sync 2011-09-02 09:10:33 +01:00
John Cupitt
07eb155462 allow optional output args
optional output args in C API startup ... need to fix up C API shutdown,
plus CLI, see TODO notes
2011-08-31 11:37:12 +01:00
John Cupitt
5b7de5e594 added VipsMin
though there's a problem with the cli interface, see TODO
2011-08-30 16:33:25 +01:00
John Cupitt
1a38d60efb check args more carefully
check input and output args have been supplied in different places ...
so ins can be all checked before outputs are made
2011-08-28 13:29:53 +01:00
John Cupitt
ac3ce8b010 add VIPS_ARGUMENT_APPEND
to give more control over arg ordering, fixes a problem in avg
2011-08-28 12:46:50 +01:00
John Cupitt
b26dcb284d sync 2011-08-27 14:03:52 +01:00
John Cupitt
7a392d4789 im_avg() is a class 2011-08-26 10:15:39 +01:00
John Cupitt
7111ff2433 version bump for next cycle
s Please enter the commit message for your changes. Lines starting
2011-08-21 18:06:19 +01:00
John Cupitt
a6255af981 sync 2011-08-17 09:25:11 +01:00
John Cupitt
11eb90cdb3 itest for C++ compiler
automatically disable C++ support if no compiler found
2011-08-16 13:26:57 +01:00
John Cupitt
3383344a31 TODO notes 2011-08-15 18:27:43 +01:00
John Cupitt
e5effaba94 oop debugging was enabled for disc write 2011-08-09 13:11:03 +01:00
John Cupitt
53589638d0 Merge remote-tracking branch 'origin/master'
Conflicts:
	TODO
2011-08-09 12:47:05 +01:00
John Cupitt
b494ce7a52 stuff! 2011-08-09 12:45:42 +01:00
John Cupitt
f5397a68af sync 2011-08-09 11:15:09 +01:00
John Cupitt
1bded6682e todo update 2011-07-29 13:24:52 +01:00
John Cupitt
8cc0d033ea allow <> enclosing argument lists 2011-07-28 12:55:54 +01:00
John Cupitt
e7dbd89938 bump version again, doc fixes 2011-07-26 22:37:03 +01:00
John Cupitt
1b5803af2e new man pages
restored and updated man.1 pages
2011-07-26 09:27:06 +01:00
John Cupitt
a92e500132 more CLI fixes
"vips add" shows output args, clearer display, spot too few args
2011-07-22 17:28:08 +01:00
John Cupitt
9627f889b0 reenable wrap7 for nicked vips7 ops
so now "vips im_subtract" gets you the old interface, "vips subtract"
the new one
2011-07-22 16:12:47 +01:00
John Cupitt
cfb076f726 make enum names work again
allow old names in enums, so edivips --format allows IM_BANDFMT_UCHAR,
VIPS_FORMAT_UCHAR and uchar
2011-07-22 15:56:31 +01:00
John Cupitt
0a4e314194 start fixing char->int enums use
oops was doing chart->int incorrectly for glib enums
2011-07-22 13:51:20 +01:00
John Cupitt
ed5cb531bd wrap7 works, for images at least
still need to add masks, doubles, strings, etc.
2011-07-18 17:10:41 +01:00
John Cupitt
681e3c893e update notes 2011-07-18 09:03:33 +01:00
John Cupitt
fde23c93ef vipsobject cleanups
vipsobject always goes via set_prop so it can work with subclasses
which override these funcs (eg. wrap7)
2011-07-17 14:36:57 +01:00
John Cupitt
e11fbbb23f move vips.c usage and nickname
wrap7 now has the old vips.c nickname maker and usage code
2011-07-16 13:33:20 +01:00
John Cupitt
03226f6f67 vips7 wrap runs
"vips list clases" now works, not tested actually supplying any args
2011-07-15 21:28:33 +01:00
John Cupitt
a9dc321afd add wrap7
add a thing to wrap vips7 functions as vips8 classes

in and in use, but not yet working
2011-07-15 14:37:20 +01:00
John Cupitt
5b97d5210a more vips7 wrapper hackery
small changes to vipsobject etc. as well ... warn on read of unset
props, for example, and dont pointlessly set the set/set ops in
subclasses
2011-07-13 14:51:02 +01:00
John Cupitt
2ee4fefa46 better temp files for im_vips2tiff() pyramids
im_vips2tiff() used to keep intermediate files in the same directory as
the destination file ... instead, make temp files using im__temp_name(),
see im_system_image().
2011-07-12 15:27:22 +01:00
John Cupitt
0f20f9152b icc import/export cast inputs 2011-07-12 14:56:58 +01:00
John Cupitt
e84640af58 im_falsecolour() does implicit conversion
convert input automatically to mono 8-bit in falsecolour
2011-07-12 13:30:25 +01:00
John Cupitt
c78e3382fc TODO notes
updated the TODO again
2011-07-08 14:28:08 +01:00
John Cupitt
6131388cc4 jpeg cmyk write was not inverting
the change to vips_sink_disc() for vips2jpeg make CMYK write fail, argh

thanks to Ole for the report
2011-07-08 11:34:26 +01:00
John Cupitt
b04daa4849 added deprecated wrapper for im_remainderconst_vec
forgot to add a dispatch wrapper for im_remainderconst_vec when we reanmed to
im_remainder_vec
2011-06-27 15:47:01 +01:00
John Cupitt
180fa919e2 blend does sizealike
added sizealike to im_blend()
2011-06-27 12:28:10 +01:00
John Cupitt
3628692799 add experimental ctypes Python binding
start hacking on a new Python interface
2011-06-17 14:50:14 +01:00
John Cupitt
3920f5dc7e get im_system_image() working again
chop stuff about to get system image working again.
2011-06-16 13:54:13 +01:00
John Cupitt
953a315755 more im_aconv() speedups
now uses rolling boxes for the vertical pass too
2011-06-09 17:53:53 +01:00
John Cupitt
ecf344ec0f more tweaks, still not working
argh, can't see the problem
2011-06-08 22:13:30 +01:00
John Cupitt
0aa9f81c30 started im_aconv()
started hacking non-separable version of im_aconvsep()
2011-06-06 17:35:32 +01:00
John Cupitt
7b6bc4267b better vips error msg
"vips mpouikh" makes a better error message
2011-06-06 12:31:12 +01:00
John Cupitt
710294f889 rename aconv as aconvsep 2011-06-04 17:44:54 +01:00
John Cupitt
56d8f75500 fix an edge problem in aconv
aconv no longer has tiling artifacts
2011-06-04 10:01:52 +01:00
John Cupitt
3fab0cbbd4 fix vips8 CLI
the vips8 CLI needed updating for the new refcount strategy
2011-06-02 15:53:30 +01:00
John Cupitt
35a7515e3f small bugfixes
various bugfixes ... nip2 runs reliably again now
2011-06-02 15:34:57 +01:00
John Cupitt
971615d6ae back to fixed refs, add a pool system instead
floating refs were very confusing and annoying, instead use simple fixed
refs and add a pool system to track refs for you

also fixed a couple of dumb errors in close callbacks
2011-06-02 12:23:56 +01:00
John Cupitt
6819919f0c im_aconv() works
got im_aconv() working, woo
2011-06-01 17:36:17 +01:00
John Cupitt
c0cbbbf415 free im_malloc() mem in postclose 2011-05-30 19:40:56 +01:00
John Cupitt
a9045c9ec3 oops vipsthumbnail needed updating 2011-05-30 11:41:02 +01:00
John Cupitt
47a3bd6689 TODO updates 2011-05-25 14:06:23 +01:00
John Cupitt
cba1ea0024 vipsobject fallback for new_from_string() as well 2011-05-25 13:43:53 +01:00
John Cupitt
1a75cf5be2 object new from string() is now a vfunc
and the inverse too ... interpolate and format need fixing still
2011-05-25 12:24:01 +01:00
John Cupitt
5492e0dbda TODO updates 2011-05-25 08:51:19 +01:00
John Cupitt
ff44680022 get the CLI working again
get the cli working with the new vfunc thing
2011-05-24 17:01:23 +01:00