Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:01:22

0001 /*
0002   Copyright @ 1999 ImageMagick Studio LLC, a non-profit organization
0003   dedicated to making software imaging solutions freely available.
0004   
0005   You may not use this file except in compliance with the License.  You may
0006   obtain a copy of the License at
0007   
0008     https://imagemagick.org/script/license.php
0009   
0010   Unless required by applicable law or agreed to in writing, software
0011   distributed under the License is distributed on an "AS IS" BASIS,
0012   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
0013   See the License for the specific language governing permissions and
0014   limitations under the License.
0015 
0016   MagickCore progress monitor methods.
0017 */
0018 #ifndef MAGICKCORE_MONITOR_H
0019 #define MAGICKCORE_MONITOR_H
0020 
0021 #if defined(__cplusplus) || defined(c_plusplus)
0022 extern "C" {
0023 #endif
0024 
0025 typedef MagickBooleanType
0026   (*MagickProgressMonitor)(const char *,const MagickOffsetType,
0027     const MagickSizeType,void *);
0028 
0029 MagickExport MagickBooleanType
0030   SetImageProgress(const Image *,const char *,const MagickOffsetType,
0031     const MagickSizeType);
0032 
0033 MagickExport MagickProgressMonitor
0034   SetImageProgressMonitor(Image *,const MagickProgressMonitor,void *),
0035   SetImageInfoProgressMonitor(ImageInfo *,const MagickProgressMonitor,void *);
0036 
0037 static inline MagickBooleanType QuantumTick(const MagickOffsetType offset,
0038   const MagickSizeType span)
0039 {
0040   if (span <= 100)
0041     return(MagickTrue);
0042   if (offset == (MagickOffsetType) (span-1))
0043     return(MagickTrue);
0044   if ((offset % (MagickOffsetType) (span/100)) == 0)
0045     return(MagickTrue);
0046   return(MagickFalse);
0047 }
0048 
0049 #if defined(__cplusplus) || defined(c_plusplus)
0050 }
0051 #endif
0052 
0053 #endif