cocos2d for iPhone 1.0.0
2D engine for iOS and OS X
/Users/rquesada/progs/cocos2d-iphone/cocos2d/CCRenderTexture.h
00001 /*
00002  * cocos2d for iPhone: http://www.cocos2d-iphone.org
00003  *
00004  * Copyright (c) 2009 Jason Booth
00005  *
00006  * Permission is hereby granted, free of charge, to any person obtaining a copy
00007  * of this software and associated documentation files (the "Software"), to deal
00008  * in the Software without restriction, including without limitation the rights
00009  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
00010  * copies of the Software, and to permit persons to whom the Software is
00011  * furnished to do so, subject to the following conditions:
00012  * 
00013  * The above copyright notice and this permission notice shall be included in
00014  * all copies or substantial portions of the Software.
00015  * 
00016  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
00017  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
00018  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
00019  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
00020  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
00021  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
00022  * THE SOFTWARE.
00023  *
00024  */
00025 
00026 #import <Foundation/Foundation.h>
00027 #import "CCNode.h"
00028 #import "CCSprite.h"
00029 #import "Support/OpenGL_Internal.h"
00030 
00031 #import <Availability.h>
00032 #ifdef __IPHONE_OS_VERSION_MAX_ALLOWED
00033 #import <UIKit/UIKit.h>
00034 #endif // iPHone
00035 
00036 enum  
00037 {
00038         kCCImageFormatJPG = 0,
00039         kCCImageFormatPNG = 1,
00040         kCCImageFormatRawData =2
00041 };
00042 
00043 
00054 @interface CCRenderTexture : CCNode 
00055 {
00056         GLuint                          fbo_;
00057         GLint                           oldFBO_;
00058         CCTexture2D*            texture_;
00059         CCSprite*                       sprite_;
00060         
00061         GLenum                          pixelFormat_;
00062 }
00063 
00069 @property (nonatomic,readwrite, assign) CCSprite* sprite;
00070 
00072 +(id)renderTextureWithWidth:(int)w height:(int)h pixelFormat:(CCTexture2DPixelFormat) format;
00073 
00075 +(id)renderTextureWithWidth:(int)w height:(int)h;
00076 
00078 -(id)initWithWidth:(int)w height:(int)h pixelFormat:(CCTexture2DPixelFormat) format;
00079 
00081 -(void)begin;
00082 
00085 -(void)beginWithClear:(float)r g:(float)g b:(float)b a:(float)a;
00086 
00088 -(void)end;
00089 
00091 -(void)clear:(float)r g:(float)g b:(float)b a:(float)a;
00092 
00093 #ifdef __IPHONE_OS_VERSION_MAX_ALLOWED
00094 
00096 -(BOOL)saveBuffer:(NSString*)name;
00098 -(BOOL)saveBuffer:(NSString*)name format:(int)format;
00099 /* get buffer as UIImage, can only save a render buffer which has a RGBA8888 pixel format */
00100 -(NSData*)getUIImageAsDataFromBuffer:(int) format;
00101 /* get buffer as UIImage */
00102 -(UIImage *)getUIImageFromBuffer;
00103 
00104 #endif // __IPHONE_OS_VERSION_MAX_ALLOWED
00105 
00106 @end
00107 
00108 
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Properties Defines

cocos2d for iPhone API Reference - Generated using Doxygen 1.7.4