Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00047 #pragma once
00048
00049 #ifndef __PIAliasSuite__
00050 #define __PIAliasSuite__
00051
00052
00053
00054
00055 #include "PIGeneral.h"
00056
00057
00058
00059
00060 #ifdef __cplusplus
00061 extern "C" {
00062 #endif
00063
00064
00065
00066
00068 #define kPSAliasSuite "Photoshop Alias Utility Suite"
00069
00070
00071
00072
00073
00074
00075 #if MSWindows
00076 typedef struct AliasRecord* AliasPtr;
00077 typedef AliasPtr* AliasHandle;
00078 #endif
00079
00094 typedef SPAPI SPErr (*MacNewAliasFromCStringProc) (const char *cStringPathToFile, AliasHandle *alias );
00095
00103 typedef SPAPI SPErr (*MacNewAliasFromFSRefProc)( const void *fsRefToFile, AliasHandle *alias );
00104
00113 typedef SPAPI SPErr (*MacNewAliasFromNameAndFSRefProc)( const void *cfStringFilename, const void *fsRefToParentDir, AliasHandle *alias );
00114
00121 typedef SPAPI SPErr (*WinNewAliasFromWidePathProc)( const uint16 *filePathAsUTF16, AliasHandle *alias );
00122
00129 typedef SPAPI SPErr (*WinNewAliasFromPIDLProc)( const void *pidlToFile, AliasHandle *alias );
00130
00137 typedef SPAPI SPErr (*NewAliasFromCloudPathProc) ( const char *cloudPath, AliasHandle *alias );
00138
00145 typedef SPAPI SPErr (*IsCloudFileProc) ( AliasHandle alias, SPBoolean* isCloud );
00146
00155 typedef SPAPI SPErr (*CloudReferenceFromAliasProc) ( AliasHandle alias, ASZString* reference );
00156
00165 typedef SPAPI SPErr (*CloudPathFromAliasProc) ( AliasHandle alias, ASZString* reference );
00166
00172 typedef SPAPI SPErr (*NewAliasFromCloudReferenceProc) ( const char *reference, AliasHandle *alias );
00173
00179 typedef SPAPI SPErr (*UnicodePathToAliasProc)( const uint16 * unicodePath, AliasHandle* alias );
00180
00186 typedef SPAPI SPErr (*AliasToUnicodePathProc)( const AliasHandle alias, uint16 * unicodePath, uint32 length );
00187
00188
00189
00190
00191
00192
00193
00194
00196 #define kPSAliasSuiteVersion1 1
00197 #define kPSAliasSuiteVersion2 2
00198 #define kPSAliasSuiteVersion kPSAliasSuiteVersion2 // Current version.
00199
00201 typedef struct
00202 {
00203
00204 MacNewAliasFromCStringProc MacNewAliasFromCString;
00205 MacNewAliasFromFSRefProc MacNewAliasFromFSRef;
00206 MacNewAliasFromNameAndFSRefProc MacNewAliasFromNameAndFSRef;
00207 WinNewAliasFromWidePathProc WinNewAliasFromWidePath;
00208 WinNewAliasFromPIDLProc WinNewAliasFromPIDL;
00209 } PSAliasSuite1;
00210
00211 typedef struct
00212 {
00213
00214 MacNewAliasFromCStringProc MacNewAliasFromCString;
00215 MacNewAliasFromFSRefProc MacNewAliasFromFSRef;
00216 MacNewAliasFromNameAndFSRefProc MacNewAliasFromNameAndFSRef;
00217 WinNewAliasFromWidePathProc WinNewAliasFromWidePath;
00218 WinNewAliasFromPIDLProc WinNewAliasFromPIDL;
00220
00221 NewAliasFromCloudPathProc NewAliasFromCloudPath;
00222 IsCloudFileProc IsCloudFile;
00223 CloudReferenceFromAliasProc CloudReferenceFromAlias;
00224 CloudPathFromAliasProc CloudPathFromAlias;
00225 NewAliasFromCloudReferenceProc NewAliasFromCloudReference;
00226 UnicodePathToAliasProc UnicodePathToAlias;
00227 AliasToUnicodePathProc AliasToUnicodePath;
00228 } PSAliasSuite2;
00229
00230 typedef PSAliasSuite2 PSAliasSuite;
00231
00232
00233
00234
00235 #ifdef __cplusplus
00236 }
00237 #endif
00238
00240 #endif // __PIAliasSuite__
00241