topical media & game development
lib-of-vs-libs-QTDevWin-CIncludes-CMScriptingPlugin.h / h
/*
File: CMScriptingPlugin.h
Contains: ColorSync Scripting Plugin API
Version: Technology: ColorSync 2.5
Release: QuickTime 6.0.2
Copyright: (c) 1998-2001 by Apple Computer, Inc., all rights reserved.
Bugs?: For bug reports, consult the following page on
the World Wide Web:
http://developer.apple.com/bugreporter/
*/
ifndef __CMSCRIPTINGPLUGIN__
define __CMSCRIPTINGPLUGIN__
ifndef __FILES__
include <Files.h>
endif
ifndef __CMAPPLICATION__
include <CMApplication.h>
endif
ifndef __CODEFRAGMENTS__
include <CodeFragments.h>
endif
if PRAGMA_ONCE
#pragma once
endif
ifdef __cplusplus
extern "C" {
endif
if PRAGMA_IMPORT
#pragma import on
endif
if PRAGMA_STRUCT_ALIGN
#pragma options align=mac68k
#elif PRAGMA_STRUCT_PACKPUSH
#pragma pack(push, 2)
#elif PRAGMA_STRUCT_PACK
#pragma pack(2)
endif
enum {
/* ColorSync Scripting AppleEvent Errors */
cmspInvalidImageFile = -4220, /* Plugin cannot handle this image file type */
cmspInvalidImageSpace = -4221, /* Plugin cannot create an image file of this colorspace */
cmspInvalidProfileEmbed = -4222, /* Specific invalid profile errors */
cmspInvalidProfileSource = -4223,
cmspInvalidProfileDest = -4224,
cmspInvalidProfileProof = -4225,
cmspInvalidProfileLink = -4226
};
** embedFlags field ***
/* reserved for future use: currently 0 */
** matchFlags field ***
enum {
cmspFavorEmbeddedMask = 0x00000001 /* if bit 0 is 0 then use srcProf profile, if 1 then use profile embedded in image if present*/
};
** scripting plugin entry points ***
typedef CALLBACK_API_C( CMError , ValidateImageProcPtr )(const FSSpec *spec);
typedef CALLBACK_API_C( CMError , GetImageSpaceProcPtr )(const FSSpec *spec, OSType *space);
typedef CALLBACK_API_C( CMError , ValidateSpaceProcPtr )(const FSSpec *spec, OSType *space);
typedef CALLBACK_API_C( CMError , EmbedImageProcPtr )(const FSSpec *specFrom, const FSSpec *specInto, CMProfileRef embedProf, UInt32 embedFlags);
typedef CALLBACK_API_C( CMError , UnembedImageProcPtr )(const FSSpec *specFrom, const FSSpec *specInto);
typedef CALLBACK_API_C( CMError , MatchImageProcPtr )(const FSSpec *specFrom, const FSSpec *specInto, UInt32 qual, UInt32 srcIntent, CMProfileRef srcProf, CMProfileRef dstProf, CMProfileRef prfProf, UInt32 matchFlags);
typedef CALLBACK_API_C( CMError , CountImageProfilesProcPtr )(const FSSpec *spec, UInt32 *count);
typedef CALLBACK_API_C( CMError , GetIndImageProfileProcPtr )(const FSSpec *spec, UInt32 index, CMProfileRef *prof);
typedef CALLBACK_API_C( CMError , SetIndImageProfileProcPtr )(const FSSpec *specFrom, const FSSpec *specInto, UInt32 index, CMProfileRef prof, UInt32 embedFlags);
** CSScriptingLib API ***
EXTERN_API_C( CMError )
CMValidImage (const FSSpec * spec);
EXTERN_API_C( CMError )
CMGetImageSpace (const FSSpec * spec,
OSType * space);
EXTERN_API_C( CMError )
CMEmbedImage (const FSSpec * specFrom,
const FSSpec * specInto,
Boolean repl,
CMProfileRef embProf);
EXTERN_API_C( CMError )
CMUnembedImage (const FSSpec * specFrom,
const FSSpec * specInto,
Boolean repl);
EXTERN_API_C( CMError )
CMMatchImage (const FSSpec * specFrom,
const FSSpec * specInto,
Boolean repl,
UInt32 qual,
CMProfileRef srcProf,
UInt32 srcIntent,
CMProfileRef dstProf);
EXTERN_API_C( CMError )
CMProofImage (const FSSpec * specFrom,
const FSSpec * specInto,
Boolean repl,
UInt32 qual,
CMProfileRef srcProf,
UInt32 srcIntent,
CMProfileRef dstProf,
CMProfileRef prfProf);
EXTERN_API_C( CMError )
CMLinkImage (const FSSpec * specFrom,
const FSSpec * specInto,
Boolean repl,
UInt32 qual,
CMProfileRef lnkProf,
UInt32 lnkIntent);
EXTERN_API_C( CMError )
CMCountImageProfiles (const FSSpec * spec,
UInt32 * count);
EXTERN_API_C( CMError )
CMGetIndImageProfile (const FSSpec * spec,
UInt32 index,
CMProfileRef * prof);
EXTERN_API_C( CMError )
CMSetIndImageProfile (const FSSpec * specFrom,
const FSSpec * specInto,
Boolean repl,
UInt32 index,
CMProfileRef prof);
if PRAGMA_STRUCT_ALIGN
#pragma options align=reset
#elif PRAGMA_STRUCT_PACKPUSH
#pragma pack(pop)
#elif PRAGMA_STRUCT_PACK
#pragma pack()
endif
ifdef PRAGMA_IMPORT_OFF
#pragma import off
#elif PRAGMA_IMPORT
#pragma import reset
endif
ifdef __cplusplus
}
endif
endif /* __CMSCRIPTINGPLUGIN__ */
(C) Æliens
04/09/2009
You may not copy or print any of this material without explicit permission of the author or the publisher.
In case of other copyright issues, contact the author.