/dmagick/c/monitor.d

http://github.com/MikeWey/DMagick · D · 23 lines · 19 code · 4 blank · 0 comment · 5 complexity · 29ed7edfdced0ba6bd8df9fc079e1560 MD5 · raw file

  1. module dmagick.c.monitor;
  2. import dmagick.c.image;
  3. import dmagick.c.magickType;
  4. extern(C)
  5. {
  6. alias MagickBooleanType function(const(char)*, const MagickOffsetType, const MagickSizeType, void*) MagickProgressMonitor;
  7. MagickProgressMonitor SetImageProgressMonitor(Image*, const MagickProgressMonitor, void*);
  8. MagickProgressMonitor SetImageInfoProgressMonitor(ImageInfo*, const MagickProgressMonitor, void*);
  9. }
  10. static pure nothrow MagickBooleanType QuantumTick(const MagickOffsetType offset, const MagickSizeType span)
  11. {
  12. if (span <= 100)
  13. return(true);
  14. if (offset == cast(MagickOffsetType) (span-1))
  15. return(true);
  16. if ((offset % (span/100)) == 0)
  17. return(true);
  18. return(false);
  19. }