Line data Source code
1 0 : /* 2 : 3 : OOTextureVerifierStage.h 4 : 5 : OOOXPVerifierStage which keeps track of textures (and images) that are used 6 : and ensures they are loadable. 7 : 8 : 9 : Oolite 10 : Copyright (C) 2004-2013 Giles C Williams and contributors 11 : 12 : This program is free software; you can redistribute it and/or 13 : modify it under the terms of the GNU General Public License 14 : as published by the Free Software Foundation; either version 2 15 : of the License, or (at your option) any later version. 16 : 17 : This program is distributed in the hope that it will be useful, 18 : but WITHOUT ANY WARRANTY; without even the implied warranty of 19 : MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 : GNU General Public License for more details. 21 : 22 : You should have received a copy of the GNU General Public License 23 : along with this program; if not, write to the Free Software 24 : Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 25 : MA 02110-1301, USA. 26 : 27 : */ 28 : 29 : #import "OOFileScannerVerifierStage.h" 30 : 31 : #if OO_OXP_VERIFIER_ENABLED 32 : 33 0 : @interface OOTextureVerifierStage: OOFileHandlingVerifierStage 34 : { 35 : @private 36 0 : NSMutableSet *_usedTextures; 37 : } 38 : 39 : // Returns name to be used in -dependents by other stages. 40 0 : + (NSString *)nameForReverseDependencyForVerifier:(OOOXPVerifier *)verifier; 41 : 42 : /* This can be called by other stages *before* the texture stage runs. 43 : The context specifies where the texture is used; something like 44 : "fooShip.dat" or "shipdata.plist materials dictionary for ship \"foo\"". 45 : It should make sense with "Texture \"foo\" referenced in " in front of it. 46 : */ 47 0 : - (void) textureNamed:(NSString *)name usedInContext:(NSString *)context; 48 : 49 : @end 50 : 51 : 52 : // Convenience base class for stages that need to run before OOTextureHandlingStage. 53 0 : @interface OOTextureHandlingStage: OOFileHandlingVerifierStage 54 : 55 : @end 56 : 57 : 58 : @interface OOOXPVerifier(OOTextureVerifierStage) 59 : 60 0 : - (OOTextureVerifierStage *)textureVerifierStage; 61 : 62 : @end 63 : 64 : #endif