{-# LANGUAGE PatternSynonyms, ScopedTypeVariables, ViewPatterns #-}


-- | Copyright  : Will Thompson and Iñaki García Etxebarria
-- License    : LGPL-2.1
-- Maintainer : Iñaki García Etxebarria

#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif

module GI.Vips.Constants
    ( 
    pattern TRANSFORM_SHIFT                 ,
    pattern TRANSFORM_SCALE                 ,
    pattern META_XMP_NAME                   ,
    pattern META_SEQUENTIAL                 ,
    pattern META_RESOLUTION_UNIT            ,
    pattern META_PHOTOSHOP_NAME             ,
    pattern META_PAGE_HEIGHT                ,
    pattern META_ORIENTATION                ,
    pattern META_N_SUBIFDS                  ,
    pattern META_N_PAGES                    ,
    pattern META_LOADER                     ,
    pattern META_IPTC_NAME                  ,
    pattern META_IMAGEDESCRIPTION           ,
    pattern META_ICC_NAME                   ,
    pattern META_EXIF_NAME                  ,
    pattern MAX_COORD                       ,
    pattern MAGIC_SPARC                     ,
    pattern MAGIC_INTEL                     ,
    pattern INTERPOLATE_SHIFT               ,
    pattern INTERPOLATE_SCALE               ,
    pattern E_Z0                            ,
    pattern E_Y0                            ,
    pattern E_X0                            ,
    pattern D93_Z0                          ,
    pattern D93_Y0                          ,
    pattern D93_X0                          ,
    pattern D75_Z0                          ,
    pattern D75_Y0                          ,
    pattern D75_X0                          ,
    pattern D65_Z0                          ,
    pattern D65_Y0                          ,
    pattern D65_X0                          ,
    pattern D55_Z0                          ,
    pattern D55_Y0                          ,
    pattern D55_X0                          ,
    pattern D50_Z0                          ,
    pattern D50_Y0                          ,
    pattern D50_X0                          ,
    pattern D3250_Z0                        ,
    pattern D3250_Y0                        ,
    pattern D3250_X0                        ,
    pattern C_Z0                            ,
    pattern C_Y0                            ,
    pattern C_X0                            ,
    pattern B_Z0                            ,
    pattern B_Y0                            ,
    pattern B_X0                            ,
    pattern A_Z0                            ,
    pattern A_Y0                            ,
    pattern A_X0                            ,
    pattern ARGUMENT_REQUIRED_OUTPUT        ,
    pattern ARGUMENT_REQUIRED_INPUT         ,
    pattern ARGUMENT_OPTIONAL_OUTPUT        ,
    pattern ARGUMENT_OPTIONAL_INPUT         ,

    ) where

import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P

import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Coerce as Coerce
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GHC.Records as R


-- | Many of the vips interpolators use fixed-point arithmetic for coordinate
-- calculation. This is how many bits of precision they use.
pattern $bTRANSFORM_SHIFT :: Int32
$mTRANSFORM_SHIFT :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
TRANSFORM_SHIFT = 6 :: Int32

-- | 'GI.Vips.Constants.TRANSFORM_SHIFT' as a multiplicative constant.
pattern $bTRANSFORM_SCALE :: Int32
$mTRANSFORM_SCALE :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
TRANSFORM_SCALE = 1 :: Int32

-- | The name that read and write operations use for the image\'s XMP data.
pattern $bMETA_XMP_NAME :: Text
$mMETA_XMP_NAME :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_XMP_NAME = "xmp-data" :: T.Text

-- | Images loaded via @/vips_sequential()/@ have this int field defined. Some
-- operations (eg. @/vips_shrinkv()/@) add extra caches if they see it on their
-- input.
pattern $bMETA_SEQUENTIAL :: Text
$mMETA_SEQUENTIAL :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_SEQUENTIAL = "vips-sequential" :: T.Text

-- | The JPEG and TIFF read and write operations use this to record the
-- file\'s preferred unit for resolution.
pattern $bMETA_RESOLUTION_UNIT :: Text
$mMETA_RESOLUTION_UNIT :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_RESOLUTION_UNIT = "resolution-unit" :: T.Text

-- | The name that TIFF read and write operations use for the image\'s
-- TIFFTAG_PHOTOSHOP data.
pattern $bMETA_PHOTOSHOP_NAME :: Text
$mMETA_PHOTOSHOP_NAME :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_PHOTOSHOP_NAME = "photoshop-data" :: T.Text

-- | If set, the height of each page when this image was loaded. If you save an
-- image with \"page-height\" set to a format that supports multiple pages, such
-- as tiff, the image will be saved as a series of pages.
pattern $bMETA_PAGE_HEIGHT :: Text
$mMETA_PAGE_HEIGHT :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_PAGE_HEIGHT = "page-height" :: T.Text

-- | The orientation tag for this image. An int from 1 - 8 using the standard
-- exif\/tiff meanings.
-- 
-- * 1 - The 0th row represents the visual top of the image, and the 0th column
--   represents the visual left-hand side.
-- * 2 - The 0th row represents the visual top of the image, and the 0th column
--   represents the visual right-hand side.
-- * 3 - The 0th row represents the visual bottom of the image, and the 0th
--   column represents the visual right-hand side.
-- * 4 - The 0th row represents the visual bottom of the image, and the 0th
--   column represents the visual left-hand side.
-- * 5 - The 0th row represents the visual left-hand side of the image, and the
--   0th column represents the visual top.
-- * 6 - The 0th row represents the visual right-hand side of the image, and the
--   0th column represents the visual top.
-- * 7 - The 0th row represents the visual right-hand side of the image, and the
--   0th column represents the visual bottom.
-- * 8 - The 0th row represents the visual left-hand side of the image, and the
--   0th column represents the visual bottom.
pattern $bMETA_ORIENTATION :: Text
$mMETA_ORIENTATION :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_ORIENTATION = "orientation" :: T.Text

-- | If set, the number of subifds in the first page of the file.
pattern $bMETA_N_SUBIFDS :: Text
$mMETA_N_SUBIFDS :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_N_SUBIFDS = "n-subifds" :: T.Text

-- | If set, the number of pages in the original file.
pattern $bMETA_N_PAGES :: Text
$mMETA_N_PAGES :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_N_PAGES = "n-pages" :: T.Text

-- | Record the name of the original loader here. Handy for hinting file formats
-- and for debugging.
pattern $bMETA_LOADER :: Text
$mMETA_LOADER :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_LOADER = "vips-loader" :: T.Text

-- | The name that read and write operations use for the image\'s IPTC data.
pattern $bMETA_IPTC_NAME :: Text
$mMETA_IPTC_NAME :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_IPTC_NAME = "iptc-data" :: T.Text

-- | The IMAGEDESCRIPTION tag. Often has useful metadata.
pattern $bMETA_IMAGEDESCRIPTION :: Text
$mMETA_IMAGEDESCRIPTION :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_IMAGEDESCRIPTION = "image-description" :: T.Text

-- | The name we use to attach an ICC profile. The file read and write
-- operations for TIFF, JPEG, PNG and others use this item of metadata to
-- attach and save ICC profiles. The profile is updated by the
-- @/vips_icc_transform()/@ operations.
pattern $bMETA_ICC_NAME :: Text
$mMETA_ICC_NAME :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_ICC_NAME = "icc-profile-data" :: T.Text

-- | The name that JPEG read and write operations use for the image\'s EXIF data.
pattern $bMETA_EXIF_NAME :: Text
$mMETA_EXIF_NAME :: forall {r}. Text -> ((# #) -> r) -> ((# #) -> r) -> r
META_EXIF_NAME = "exif-data" :: T.Text

-- | /No description available in the introspection data./
pattern $bMAX_COORD :: Int32
$mMAX_COORD :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
MAX_COORD = 10000000 :: Int32

-- | The first four bytes of a VIPS file in SPARC byte ordering.
pattern $bMAGIC_SPARC :: Word32
$mMAGIC_SPARC :: forall {r}. Word32 -> ((# #) -> r) -> ((# #) -> r) -> r
MAGIC_SPARC = 150120118 :: Word32

-- | The first four bytes of a VIPS file in Intel byte ordering.
pattern $bMAGIC_INTEL :: Word32
$mMAGIC_INTEL :: forall {r}. Word32 -> ((# #) -> r) -> ((# #) -> r) -> r
MAGIC_INTEL = 3064394248 :: Word32

-- | Many of the vips interpolators use fixed-point arithmetic for value
-- calcualtion. This is how many bits of precision they use.
pattern $bINTERPOLATE_SHIFT :: Int32
$mINTERPOLATE_SHIFT :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
INTERPOLATE_SHIFT = 12 :: Int32

-- | 'GI.Vips.Constants.INTERPOLATE_SHIFT' as a multiplicative constant.
pattern $bINTERPOLATE_SCALE :: Int32
$mINTERPOLATE_SCALE :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
INTERPOLATE_SCALE = 1 :: Int32

-- | /No description available in the introspection data./
pattern $bE_Z0 :: Double
$mE_Z0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
E_Z0 = 100.000000 :: Double

-- | /No description available in the introspection data./
pattern $bE_Y0 :: Double
$mE_Y0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
E_Y0 = 100.000000 :: Double

-- | Areas under curves for equal energy illuminant E.
pattern $bE_X0 :: Double
$mE_X0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
E_X0 = 100.000000 :: Double

-- | /No description available in the introspection data./
pattern $bD93_Z0 :: Double
$mD93_Z0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D93_Z0 = 130.770000 :: Double

-- | /No description available in the introspection data./
pattern $bD93_Y0 :: Double
$mD93_Y0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D93_Y0 = 100.000000 :: Double

-- | Areas under curves for D93, 2 degree observer.
pattern $bD93_X0 :: Double
$mD93_X0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D93_X0 = 89.740000 :: Double

-- | /No description available in the introspection data./
pattern $bD75_Z0 :: Double
$mD75_Z0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D75_Z0 = 122.571000 :: Double

-- | /No description available in the introspection data./
pattern $bD75_Y0 :: Double
$mD75_Y0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D75_Y0 = 100.000000 :: Double

-- | Areas under curves for D75, 2 degree observer.
pattern $bD75_X0 :: Double
$mD75_X0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D75_X0 = 94.968200 :: Double

-- | /No description available in the introspection data./
pattern $bD65_Z0 :: Double
$mD65_Z0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D65_Z0 = 108.882700 :: Double

-- | /No description available in the introspection data./
pattern $bD65_Y0 :: Double
$mD65_Y0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D65_Y0 = 100.000000 :: Double

-- | Areas under curves for D65, 2 degree observer.
pattern $bD65_X0 :: Double
$mD65_X0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D65_X0 = 95.047000 :: Double

-- | /No description available in the introspection data./
pattern $bD55_Z0 :: Double
$mD55_Z0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D55_Z0 = 92.087100 :: Double

-- | /No description available in the introspection data./
pattern $bD55_Y0 :: Double
$mD55_Y0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D55_Y0 = 100.000000 :: Double

-- | Areas under curves for D55, 2 degree observer.
pattern $bD55_X0 :: Double
$mD55_X0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D55_X0 = 95.683100 :: Double

-- | /No description available in the introspection data./
pattern $bD50_Z0 :: Double
$mD50_Z0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D50_Z0 = 82.468000 :: Double

-- | /No description available in the introspection data./
pattern $bD50_Y0 :: Double
$mD50_Y0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D50_Y0 = 100.000000 :: Double

-- | Areas under curves for D50, 2 degree observer.
pattern $bD50_X0 :: Double
$mD50_X0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D50_X0 = 96.425000 :: Double

-- | /No description available in the introspection data./
pattern $bD3250_Z0 :: Double
$mD3250_Z0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D3250_Z0 = 45.850100 :: Double

-- | /No description available in the introspection data./
pattern $bD3250_Y0 :: Double
$mD3250_Y0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D3250_Y0 = 100.000000 :: Double

-- | Areas under curves for black body at 3250K, 2 degree observer.
pattern $bD3250_X0 :: Double
$mD3250_X0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
D3250_X0 = 105.659000 :: Double

-- | /No description available in the introspection data./
pattern $bC_Z0 :: Double
$mC_Z0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
C_Z0 = 118.230000 :: Double

-- | /No description available in the introspection data./
pattern $bC_Y0 :: Double
$mC_Y0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
C_Y0 = 100.000000 :: Double

-- | Areas under curves for illuminant C (6774K), 2 degree observer.
pattern $bC_X0 :: Double
$mC_X0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
C_X0 = 98.070000 :: Double

-- | /No description available in the introspection data./
pattern $bB_Z0 :: Double
$mB_Z0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
B_Z0 = 85.223000 :: Double

-- | /No description available in the introspection data./
pattern $bB_Y0 :: Double
$mB_Y0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
B_Y0 = 100.000000 :: Double

-- | Areas under curves for illuminant B (4874K), 2 degree observer.
pattern $bB_X0 :: Double
$mB_X0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
B_X0 = 99.072000 :: Double

-- | /No description available in the introspection data./
pattern $bA_Z0 :: Double
$mA_Z0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
A_Z0 = 35.584900 :: Double

-- | /No description available in the introspection data./
pattern $bA_Y0 :: Double
$mA_Y0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
A_Y0 = 100.000000 :: Double

-- | Areas under curves for illuminant A (2856K), 2 degree observer.
pattern $bA_X0 :: Double
$mA_X0 :: forall {r}. Double -> ((# #) -> r) -> ((# #) -> r) -> r
A_X0 = 109.850300 :: Double

-- | /No description available in the introspection data./
pattern $bARGUMENT_REQUIRED_OUTPUT :: Int32
$mARGUMENT_REQUIRED_OUTPUT :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
ARGUMENT_REQUIRED_OUTPUT = 35 :: Int32

-- | /No description available in the introspection data./
pattern $bARGUMENT_REQUIRED_INPUT :: Int32
$mARGUMENT_REQUIRED_INPUT :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
ARGUMENT_REQUIRED_INPUT = 19 :: Int32

-- | /No description available in the introspection data./
pattern $bARGUMENT_OPTIONAL_OUTPUT :: Int32
$mARGUMENT_OPTIONAL_OUTPUT :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
ARGUMENT_OPTIONAL_OUTPUT = 34 :: Int32

-- | /No description available in the introspection data./
pattern $bARGUMENT_OPTIONAL_INPUT :: Int32
$mARGUMENT_OPTIONAL_INPUT :: forall {r}. Int32 -> ((# #) -> r) -> ((# #) -> r) -> r
ARGUMENT_OPTIONAL_INPUT = 18 :: Int32