<commit_before>/* cocos2d for iPhone
 *
 * http://www.cocos2d-iphone.org
 *
 * Copyright (C) 2009 <NAME>
 * Copyright (C) 2009 <NAME>
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the 'cocos2d for iPhone' license.
 *
 * You will find a copy of this license within the cocos2d for iPhone
 * distribution inside the "LICENSE" file.
 *
 */

#import "CCNode.h"
#import "CCProtocols.h"
#import "CCTextureAtlas.h"
#import "ccMacros.h"
#import "Support/ccArray.h"

#pragma mark CCSpriteSheet

@class CCSprite;

/** CCSpriteSheet is the object that draws all the CCSprite objects that belongs to this object.
 *
 * A CCSpriteSheet can reference one and only one texture (one image file, one texture atlas).
 * Only the CCSprites that are contained in that texture can be added to the CCSpriteSheet.
 * All CCSprites added to a CCSpriteSheet are drawn in one OpenGL ES draw call.
 * If the CCSprites are not added to a CCSpriteSheet then an OpenGL ES draw call will be needed for each one, which is less efficient.
 *
 *
 * Limitations:
 *  - The only object that is accepted as child, grandchild, is CCSprite
 *  - It's children are all Aliased or all Antialiased.
 * 
 * @since v0.7.1
 */
@interface CCSpriteSheet : CCNode <CCTextureProtocol>
{
	CCTextureAtlas	*textureAtlas_;<commit_msg>Improved doxygen string in CCSpriteSheet. [#827 milestone:0.99.2 status:Fixed]<commit_after>/* cocos2d for iPhone
 *
 * http://www.cocos2d-iphone.org
 *
 * Copyright (C) 2009 <NAME>
 * Copyright (C) 2009 Ricardo Quesada
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the 'cocos2d for iPhone' license.
 *
 * You will find a copy of this license within the cocos2d for iPhone
 * distribution inside the "LICENSE" file.
 *
 */

#import "CCNode.h"
#import "CCProtocols.h"
#import "CCTextureAtlas.h"
#import "ccMacros.h"
#import "Support/ccArray.h"

#pragma mark CCSpriteSheet

@class CCSprite;

/** CCSpriteSheet an optimization node: if it contains children, then it will draw in 1 single OpenGL call
 * (ofter know as a batch draw).
 *
 * A CCSpriteSheet can reference one and only one texture (one image file, one texture atlas).
 * Only the CCSprites that are contained in that texture can be added to the CCSpriteSheet.
 * All CCSprites added to a CCSpriteSheet are drawn in one OpenGL ES draw call.
 * If the CCSprites are not added to a CCSpriteSheet then an OpenGL ES draw call will be needed for each one, which is less efficient.
 *
 *
 * Limitations:
 *  - The only object that is accepted as child, grandchild, is CCSprite
 *  - It's children are all Aliased or all Antialiased.
 * 
 * @since v0.7.1
 */
@interface CCSpriteSheet : CCNode <CCTextureProtocol>
{
	CCTextureAtlas	*textureAtlas_;
{'fraction_non_alphanumeric': 0.08144958736993183, 'fraction_numerical': 0.013634732687477575, 'mean_word_length': 3.9432624113475176, 'pattern_counts': {'":': 0, '<': 8, '<?xml version=': 0, '>': 8, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '776137', 'n_tokens_mistral': 917, 'n_tokens_neox': 898, 'n_words': 373}