root/trunk/ACPublic/ACComponentResources.r

Revision 1, 7.4 kB (checked in by gbooker, 3 years ago)

Initial Import

Line 
1 /*      Copyright:      © Copyright 2004 Apple Computer, Inc. All rights reserved.
2
3         Disclaimer:     IMPORTANT:  This Apple software is supplied to you by Apple Computer, Inc.
4                         ("Apple") in consideration of your agreement to the following terms, and your
5                         use, installation, modification or redistribution of this Apple software
6                         constitutes acceptance of these terms.  If you do not agree with these terms,
7                         please do not use, install, modify or redistribute this Apple software.
8
9                         In consideration of your agreement to abide by the following terms, and subject
10                         to these terms, Apple grants you a personal, non-exclusive license, under AppleÕs
11                         copyrights in this original Apple software (the "Apple Software"), to use,
12                         reproduce, modify and redistribute the Apple Software, with or without
13                         modifications, in source and/or binary forms; provided that if you redistribute
14                         the Apple Software in its entirety and without modifications, you must retain
15                         this notice and the following text and disclaimers in all such redistributions of
16                         the Apple Software.  Neither the name, trademarks, service marks or logos of
17                         Apple Computer, Inc. may be used to endorse or promote products derived from the
18                         Apple Software without specific prior written permission from Apple.  Except as
19                         expressly stated in this notice, no other rights or licenses, express or implied,
20                         are granted by Apple herein, including but not limited to any patent rights that
21                         may be infringed by your derivative works or by other works in which the Apple
22                         Software may be incorporated.
23
24                         The Apple Software is provided by Apple on an "AS IS" basis.  APPLE MAKES NO
25                         WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED
26                         WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR
27                         PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE OR IN
28                         COMBINATION WITH YOUR PRODUCTS.
29
30                         IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR
31                         CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
32                         GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
33                         ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION
34                         OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, TORT
35                         (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN
36                         ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37 */
38 /*=============================================================================
39         ACComponentResources.r
40
41 =============================================================================*/
42
43 #ifndef GEN_MISSING
44         #define GEN_MISSING 0
45 #endif
46
47 #ifndef thng_RezTemplateVersion
48         #define thng_RezTemplateVersion 2
49 #endif
50
51 //=============================================================================
52 //      Includes
53 //=============================================================================
54
55 #include "ConditionalMacros.r"
56 #include "MacTypes.r"
57 #include "Components.r"
58
59 //=============================================================================
60 //      Platform constants for the thng resources
61 //=============================================================================
62
63 #if     TARGET_OS_MAC && TARGET_API_MAC_OSX
64         #define Target_PlatformType             1000
65         #define Target_CodeResType              'dlle'
66         #define kUseDLLEResource                1
67 #elif TARGET_OS_WIN32
68         #define Target_PlatformType      platformWin32
69         #define Target_CodeResType              'dlle'
70         #define kUseDLLEResource                1
71 #else
72         #define Target_PlatformType             platformPowerPC
73         #define Target_CodeResType              'tppc'
74         #define kUseDLLEResource                0
75 #endif
76
77 #if kComponentIsThreadSafe
78         #ifndef cmpThreadSafeOnMac      // so we don't need Panther headers to build
79                 #define cmpThreadSafeOnMac      0x10000000
80         #endif
81         #define COMPONENT_FLAGS         cmpThreadSafeOnMac
82 #else
83         #define COMPONENT_FLAGS         0
84 #endif
85
86 //=============================================================================
87 //      The thng and related resources
88 //
89 //      The definitions below use the following macros, all of which must be
90 //      defined. Note that kPrimaryResourceID is used to define two 'STR '
91 //      resources with consecutive IDs so be sure to space them at least two'
92 //      apart. Here's a sample of how to do the defines:
93 //     
94 //      #define kPrimaryResourceID                              128
95 //      #define kComponentType                                  'aenc'
96 //      #define kComponentSubtype                               'ima4'
97 //      #define kComponentManufacturer                  'appl'
98 //      #define kComponentFlags                                 0
99 //      #define kComponentVersion                               0x00010000
100 //      #define kComponentName                                  "Apple IMA4 Encoder"
101 //      #define kComponentInfo                                  "An AudioCodec that encodes linear PCM data into IMA4"
102 //      #define kComponentEntryPoint                    "ACAppleIMA4EncoderEntry"
103 //      #define kComponentPublicResourceMapType 0
104 //      #define kComponentIsThreadSafe                  1
105 //=============================================================================
106
107 #ifndef AC_LOCALIZED
108 resource 'strn' (kPrimaryResourceID, purgeable)
109 {
110         kComponentName
111 };
112
113 resource 'stri' (kPrimaryResourceID, purgeable)
114 {
115         kComponentInfo
116 };
117 #endif
118
119 #if !GEN_MISSING
120
121 #if kUseDLLEResource
122
123         resource 'dlle' (kPrimaryResourceID)
124         {
125                 kComponentEntryPoint
126         };
127
128 #endif
129
130 #define kComponentRegistrationFlags     componentHasMultiplePlatforms | componentDoAutoVersion | componentLoadResident
131 resource 'thng' (kPrimaryResourceID, kComponentName)
132 {
133         kComponentType,                                                                                 //      Component type
134         kComponentSubtype,                                                                              //      Component subtype
135         kComponentManufacturer,                                                                 //      Component manufacturer
136         kComponentFlags,                                                                                //      Component flags
137         0,                                                                                                              //      Component flags mask
138         0, 0,                                                                                                   //      Code type, Code ID
139         'strn', kPrimaryResourceID,                                                             //      Name resource type, resource ID
140         'stri', kPrimaryResourceID,                                                             //      Info resource type, resource ID
141         0, 0,                                                                                                   //      Icon resource type, resource ID
142         kComponentVersion,                                                                              //      Component version
143         kComponentRegistrationFlags,                                                    //      Registration flags
144         0,                                                                                                              //      Icon family resource ID
145         {                                                                                                               //      Beginning of platform info
146                 COMPONENT_FLAGS,                                                                        //      Component flags
147                 Target_CodeResType, kPrimaryResourceID,                         //      Code resource type, resource ID
148                 Target_PlatformType,                                                            //      Platform type
149         },
150 #if thng_RezTemplateVersion >= 2
151         kComponentPublicResourceMapType, kPrimaryResourceID             //      Resource map type, resource map ID
152 #endif 
153 };
154
155 #else   //      GEN_MISSING
156
157 resource 'thga' (kPrimaryResourceID) {
158         kComponentType,                                                                                 //      Component type
159         kComponentSubtype,                                                                              //      Component subtype
160         kComponentManufacturer,                                                                 //      Component manufacturer
161         kComponentFlags,                                                                                //      Component flags
162         0,                                                                                                              //      Component flags mask
163         0, 0,                                                                                                   //      Code type, Code ID
164         'strn', kPrimaryResourceID,                                                             //      Name resource type, resource ID
165         'stri', kPrimaryResourceID,                                                             //      Info resource type, resource ID
166         0, 0,                                                                                                   //      Icon resource type, resource ID
167         'miss',                                                                                                 //      Alias component type
168         'base',                                                                                                 //      Alias component subtype
169         0,                                                                                                              //      Alias component manufacturer
170         0,                                                                                                              //      Alias component flags
171         0,                                                                                                              //      Alias component flags mask
172 #if thng_RezTemplateVersion >= 2
173         kComponentPublicResourceMapType, kPrimaryResourceID,    //      Resource map type, resource map ID
174         cmpAliasNoFlags                                                                                 //      Alias flags     
175 #endif
176 };
177
178 #endif  //      GEN_MISSING
179
180 #undef kPrimaryResourceID
181 #undef kComponentType
182 #undef kComponentSubtype
183 #undef kComponentManufacturer
184 #undef kComponentVersion
185 #undef kComponentRegistrationFlags
186 #undef kComponentName
187 #undef kComponentInfo
188 #undef kComponentEntryPoint
189 #undef kComponentPublicResourceMapType
190 #undef Target_PlatformType
191 #undef Target_CodeResType
192 #undef kUseDLLEResource
Note: See TracBrowser for help on using the browser.