13ed852eea50f9d4cd633efb8c2b054b8e33c253cristy/*
27ce65e7125a4e1df1a274ce373c537a9df9c16cdCristy  Copyright 1999-2016 ImageMagick Studio LLC, a non-profit organization
33ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  dedicated to making software imaging solutions freely available.
43ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
53ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  You may not use this file except in compliance with the License.
63ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  obtain a copy of the License at
73ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
83ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    http://www.imagemagick.org/script/license.php
93ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
103ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  Unless required by applicable law or agreed to in writing, software
113ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  distributed under the License is distributed on an "AS IS" BASIS,
123ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
133ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  See the License for the specific language governing permissions and
143ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  limitations under the License.
153ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
163ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  MagickCore image composite methods.
173ed852eea50f9d4cd633efb8c2b054b8e33c253cristy*/
1883bceaa5d7a1196e05c1ccba443f90f4b032fca6Cristy#ifndef MAGICKCORE_COMPOSITE_H
1983bceaa5d7a1196e05c1ccba443f90f4b032fca6Cristy#define MAGICKCORE_COMPOSITE_H
203ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
213ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#if defined(__cplusplus) || defined(c_plusplus)
223ed852eea50f9d4cd633efb8c2b054b8e33c253cristyextern "C" {
233ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#endif
243ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
253ed852eea50f9d4cd633efb8c2b054b8e33c253cristytypedef enum
263ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
27d650a777e50b5d147cc0a71b418632efa2b8c60cdirk  UndefinedCompositeOp,
28c8d636784204aa4d970c212b156bffc387836b93cristy  AlphaCompositeOp,
293ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  AtopCompositeOp,
303ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  BlendCompositeOp,
314c08aed51c5899665ade97263692328eea4af106cristy  BlurCompositeOp,
323ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  BumpmapCompositeOp,
333ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  ChangeMaskCompositeOp,
343ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  ClearCompositeOp,
353ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  ColorBurnCompositeOp,
363ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  ColorDodgeCompositeOp,
373ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  ColorizeCompositeOp,
383ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  CopyBlackCompositeOp,
393ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  CopyBlueCompositeOp,
403ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  CopyCompositeOp,
413ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  CopyCyanCompositeOp,
423ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  CopyGreenCompositeOp,
433ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  CopyMagentaCompositeOp,
44e4a404711bf20d9062d11ab28bc12e5acd307f9ccristy  CopyAlphaCompositeOp,
453ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  CopyRedCompositeOp,
463ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  CopyYellowCompositeOp,
473ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  DarkenCompositeOp,
484c08aed51c5899665ade97263692328eea4af106cristy  DarkenIntensityCompositeOp,
494c08aed51c5899665ade97263692328eea4af106cristy  DifferenceCompositeOp,
504c08aed51c5899665ade97263692328eea4af106cristy  DisplaceCompositeOp,
514c08aed51c5899665ade97263692328eea4af106cristy  DissolveCompositeOp,
524c08aed51c5899665ade97263692328eea4af106cristy  DistortCompositeOp,
534c08aed51c5899665ade97263692328eea4af106cristy  DivideDstCompositeOp,
544c08aed51c5899665ade97263692328eea4af106cristy  DivideSrcCompositeOp,
553ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  DstAtopCompositeOp,
563ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  DstCompositeOp,
573ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  DstInCompositeOp,
583ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  DstOutCompositeOp,
593ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  DstOverCompositeOp,
603ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  ExclusionCompositeOp,
613ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  HardLightCompositeOp,
6299fc217dffe2ed10ebefd0ac85900df37b60e3fdcristy  HardMixCompositeOp,
633ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  HueCompositeOp,
643ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  InCompositeOp,
659862146c74f51e378eeea80524fb85dd4a332b0acristy  IntensityCompositeOp,
663ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  LightenCompositeOp,
674c08aed51c5899665ade97263692328eea4af106cristy  LightenIntensityCompositeOp,
684c08aed51c5899665ade97263692328eea4af106cristy  LinearBurnCompositeOp,
694c08aed51c5899665ade97263692328eea4af106cristy  LinearDodgeCompositeOp,
703ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  LinearLightCompositeOp,
713ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  LuminizeCompositeOp,
724c08aed51c5899665ade97263692328eea4af106cristy  MathematicsCompositeOp,
737c9eaf7cdb3640167dc0978406eb4a4a42a0ff3aanthony  MinusDstCompositeOp,
744c08aed51c5899665ade97263692328eea4af106cristy  MinusSrcCompositeOp,
753ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  ModulateCompositeOp,
764c08aed51c5899665ade97263692328eea4af106cristy  ModulusAddCompositeOp,
774c08aed51c5899665ade97263692328eea4af106cristy  ModulusSubtractCompositeOp,
783ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  MultiplyCompositeOp,
794c08aed51c5899665ade97263692328eea4af106cristy  NoCompositeOp,
803ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  OutCompositeOp,
813ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  OverCompositeOp,
823ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  OverlayCompositeOp,
834c08aed51c5899665ade97263692328eea4af106cristy  PegtopLightCompositeOp,
844c08aed51c5899665ade97263692328eea4af106cristy  PinLightCompositeOp,
853ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  PlusCompositeOp,
863ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  ReplaceCompositeOp,
873ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  SaturateCompositeOp,
883ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  ScreenCompositeOp,
893ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  SoftLightCompositeOp,
903ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  SrcAtopCompositeOp,
913ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  SrcCompositeOp,
923ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  SrcInCompositeOp,
933ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  SrcOutCompositeOp,
943ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  SrcOverCompositeOp,
953ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  ThresholdCompositeOp,
963ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  VividLightCompositeOp,
974c08aed51c5899665ade97263692328eea4af106cristy  XorCompositeOp
983ed852eea50f9d4cd633efb8c2b054b8e33c253cristy} CompositeOperator;
993ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
1003ed852eea50f9d4cd633efb8c2b054b8e33c253cristyextern MagickExport MagickBooleanType
101feb3e9695150978a5d2372d3fe2f60466a7c8066cristy  CompositeImage(Image *,const Image *,const CompositeOperator,
102feb3e9695150978a5d2372d3fe2f60466a7c8066cristy    const MagickBooleanType,const ssize_t,const ssize_t,ExceptionInfo *),
103e941a75fe8bf344bc5c06a7f74bb5173c87db115cristy  TextureImage(Image *,const Image *,ExceptionInfo *);
1043ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
1053ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#if defined(__cplusplus) || defined(c_plusplus)
1063ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
1073ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#endif
1083ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
1093ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#endif
110