Commit Graph

138 Commits

Author SHA1 Message Date
John Cupitt d49eed6d20 Merge remote-tracking branch 'origin/master' into gate 2013-11-25 08:55:41 +00:00
John Cupitt 5b7b3cb591 small fixes for clang static analyzer
a few small things clang static analyzer found
2013-11-22 14:34:13 +00:00
John Cupitt 693ed09edd add --vips-profile
only added a few gates so far, try a visualiser next
2013-11-18 18:31:49 +00:00
John Cupitt 440b800e0e add a new unbuffered seq mode
things like

	vips copy huge.png x.v

now run with only a small line cache
2013-09-29 11:04:11 +01:00
John Cupitt 4c0ace34f0 docs cleanups 2013-06-17 14:54:11 +01:00
John Cupitt 55bfa92725 add a vips7 interface to the deepzoom writer 2013-06-11 12:32:46 +01:00
John Cupitt a2d06e640e small cppcheck-suggested polishes 2013-05-07 17:22:29 +01:00
Benjamin Gilbert 8cc76a6ba3 Update address for Free Software Foundation
Also update LGPLv2.1 license text from the copy currently on the GNU
website.
2013-03-07 00:40:19 -05:00
John Cupitt 797805f7e3 don't print output args on fail 2012-12-06 13:54:32 +00:00
John Cupitt 8f364a8b51 rename some _get funcs
all the _get_ funcs that returned a bool have become _isthing()
functions, eg.

vips_object_argument_get_assigned() ->
  vips_object_argument_isset()
2012-11-09 13:08:59 +00:00
John Cupitt 6e1e3d4be1 better cache trace, small fixes 2012-10-29 17:19:15 +00:00
John Cupitt 15ba5c2cab small fixes 2012-10-26 14:30:51 +01:00
John Cupitt 26f2105e5b make everything LGPL2.1+
some files were incorrectly tagged as GPL, thanks Dmitry
2012-09-17 11:52:32 +01:00
John Cupitt f5f0dda551 experiment with thread stalling 2012-08-21 16:18:25 +01:00
John Cupitt 0c35f461dc add "deprecated" flag to vips arguments
deprecated arguments still work, but are not shown in help, nor are they
checked for "have-been-set"

you can tag required and optional args as deprecated ... obviously if
you deprecate a required argument you must replace it with a new
argument or scripts will break
2012-08-07 12:52:50 +01:00
John Cupitt 25ad2b7a53 turn off seq mode in vips7
the new sequential mode readers for tiff/jpg/png were not working well
from the vips7 command-line: they either decompressed twice, or handed
over a sequential mode image

it should now work as well as it did pre-seq.
2012-07-12 09:05:14 +01:00
John Cupitt 643dc28950 turn on seq mode automatically in cli
cli operations turn on seq mode automatically when they can

vips_operation_get_flags() added: lets you attach a set of flags to an
operation

flags for now are "nocache" (replacing the old nocache system) and "seqential"

if vips_object_set_argument_from_string() from string sees "seq" flag on the
object for which it is setting the arg, it enables sequential mode

all operations which can run sequentially have been tagged

the operation printer knows about flags and can display them
2012-07-10 10:51:40 +01:00
John Cupitt af1f2b47c1 add "rs" image open mode 2012-07-09 21:35:53 +01:00
John Cupitt 911a1c7e71 move vips_operation_set_valist_optional() to obj
now a method on object, vips_object_set()
2012-07-09 14:51:37 +01:00
John Cupitt 2dde7ce256 Merge remote-tracking branch 'origin/7.28'
Conflicts:
	libvips/foreign/vips2tiff.c
	po/vips7.pot
2012-06-08 19:37:03 +01:00
John Cupitt 1ee48e4cd6 add nocache flag, use for sequential file ops
stop it caching sequential file read (eg. sequential tiff read), since
you can only read sequentially once
2012-06-06 19:33:11 +01:00
John Cupitt e8b83aa96e fail if numeric args to vips are malformed 2012-04-04 13:37:05 +01:00
John Cupitt d54c787e92 move COLLECT macros to object 2012-02-23 10:05:13 +00:00
John Cupitt 5fd317941d rationalise the dumpers 2012-01-16 14:54:29 +00:00
John Cupitt a6dc0b6fea operation cache works from Python 2012-01-04 13:50:10 +00:00
John Cupitt 6f82f1ad61 make the cache more goi-friendly 2012-01-03 16:02:52 +00:00
John Cupitt 7ae919e4f4 more hacking on gio warnings
all the serious ones seem to be fixed now
2012-01-01 12:04:46 +00:00
John Cupitt 94fcf5f362 added object summaries 2011-12-14 14:03:30 +00:00
John Cupitt a2ed2edb5d fix --without-tiff etc. 2011-12-13 13:19:20 +00:00
John Cupitt 05fbb6b3bc fix up openslideload
there was a problem with the tile cache ... plus some small tidies
2011-12-12 11:34:28 +00:00
John Cupitt 230e9ce63e move openslide to a new-style class 2011-12-11 22:01:39 +00:00
John Cupitt 24b3330487 tiff write works 2011-12-03 10:59:25 +00:00
John Cupitt ad099925d3 better usage messages 2011-12-02 13:30:37 +00:00
John Cupitt 5e037e4c68 foreign uses the cache 2011-12-02 13:15:05 +00:00
John Cupitt 8f1cf419d6 fix some reffing problems 2011-12-01 10:01:49 +00:00
John Cupitt 4fccf06e5d more work on refs 2011-11-30 22:06:52 +00:00
John Cupitt c0150ea3c3 better CLI imagevec handling 2011-11-22 09:26:31 +00:00
John Cupitt 951dc0f83e fail for too many args on the CLI 2011-11-21 18:09:28 +00:00
John Cupitt 7a42449868 finish VipsMeasure
plus a fix to operation.c
2011-11-09 10:17:40 +00:00
John Cupitt 132c962f96 fix a few error messages 2011-11-06 13:13:58 +00:00
John Cupitt d503e710e2 fix array double -> gstring 2011-10-28 15:13:55 +01:00
John Cupitt 2b39626b54 stdarg processing bug
optional output arg fubar
2011-10-25 09:58:10 +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 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 b948f17c02 Merge remote-tracking branch 'origin/7.26'
Conflicts:
	ChangeLog
	configure.in
	libvips/include/vips/vips.h
	libvips/include/vips/vips7compat.h
	libvips/iofuncs/image.c
	libvips/iofuncs/init.c
	po/vips7.pot
2011-10-11 21:49:06 +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 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 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 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 df599f2f55 better vips_init() fallback
the vips_init() fallback was not working well ... new, better one gets
called more often
2011-09-12 12:28:01 +01:00
John Cupitt f9b8e0d88f operation cache working
but see notes in file
2011-09-10 14:38:39 +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 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 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 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 1e21963f83 don't use G_VALUE_COLLECT_INIT 2011-08-15 13:59:47 +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 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 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 580536e412 indent class lists
"vips list classes" now indents the class lists by structure
2011-07-16 11:26:24 +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 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 26c0ce8fde fixed vips7 CLI
"vips im_add a b c" works again
2011-05-24 13:50:17 +01:00
John Cupitt 9515c5cb06 more fixes for im_add
still getting some dangling region refs though argh
2011-05-23 18:19:20 +01:00
John Cupitt 8036dda5b7 vips8 CLI works
bugs fixed, leaks plugged, hooked up output write
2011-05-23 17:12:09 +01:00
John Cupitt 0514485fa6 functional API
make all output args created by operation, so operations are now true
functions ... means we can do memoisation

various cleanups as well
2011-05-22 17:32:57 +01:00
John Cupitt 77caf201f1 vipsobject has floating refs
derive from GInitiallyUnused to get floating refs
2011-05-19 14:35:51 +01:00
John Cupitt efe1a19598 functional vipsoperation
vipsoperation now mostly creates output objects for you
2011-05-19 13:48:09 +01:00
John Cupitt b6185af194 more new API hackery
added some notes ot the TODO on a more functional approach
2011-05-19 09:22:48 +01:00
John Cupitt c4804b6fb3 argh 2011-05-17 14:45:51 +01:00
John Cupitt 9afe09a68f better bool CLI options 2011-05-17 11:35:29 +01:00
John Cupitt 6cb6d2289b new CLI done
the new cli interface is done, try "vips add a.jpg b.jpg out.jpg", or
"vips add".
2011-05-16 17:10:08 +01:00
John Cupitt 8c6697c40a misc CLI hackery sync 2011-05-16 08:31:55 +01:00
John Cupitt 1f3f20ee4e new cli working
some final testing needed
2011-05-13 14:47:23 +01:00
John Cupitt 825280b365 more cli hackery
almost there now, parsing strings to standard types
2011-05-13 10:08:53 +01:00
John Cupitt 67df101545 more command-line interface
more hacker ... this time a better way to do optional args
2011-05-11 14:51:47 +01:00
John Cupitt 620c02a833 cleanups
small tidies
2011-04-21 09:57:04 +01:00
John Cupitt b275f1dd26 started adding new CLI interface
Started hacking on the thing to let you call operations from the
command-line. The target syntax is something like:

	add a b c

where a, b, c are the required parameters. Optional params may be appended to
the operation name, eg.

	add{saturated=true} a b c

Required params which are subclasses of VipsObject may themselves have
required and optional params, eg.

	affine in.v out.v bilinear{12,sharp=true} 0 1 1 0 0 0
2011-04-20 17:41:55 +01:00
John Cupitt e3f18fb9d1 compiles phew 2011-04-05 17:02:12 +01:00
John Cupitt 75d209fd2c hackery
ops, half-done
2011-04-05 14:46:17 +01:00
John Cupitt 8d367998c6 VipsAdd works
done VipsAdd class and made an im_add() stub for compat
2011-04-04 15:46:57 +01:00
John Cupitt 370641d25b stuff
oops argh
2011-04-01 15:11:59 +01:00
John Cupitt db41b6ac4e add VipsOperation
abstract base class for all operations goes in
2011-03-29 12:12:20 +01:00