/Users/riq/progs/cocos2d-iphone/branches/branch-0.7/cocos2d/Support/ccArray.h File Reference

#import <Foundation/Foundation.h>
#import <stdlib.h>
#import <string.h>

Include dependency graph for ccArray.h:


Functions

static ccArray * ccArrayNew (NSUInteger capacity)
static void ccArrayRemoveAllObjects (ccArray *arr)
static void ccArrayFree (ccArray *arr)
static void ccArrayDoubleCapacity (ccArray *arr)
static void ccArrayAppendObject (ccArray *arr, id object)
static NSUInteger ccArrayGetIndexOfObject (ccArray *arr, id object)
static void ccArrayRemoveObjectAtIndex (ccArray *arr, NSUInteger index)
static void ccArrayFastRemoveObjectAtIndex (ccArray *arr, NSUInteger index)
static void ccArrayRemoveObject (ccArray *arr, id object)
static BOOL ccArrayContainsObject (ccArray *arr, id object)
static void ccArrayRemoveArray (ccArray *arr, ccArray *minusArr)
static void ccArrayFullRemoveArray (ccArray *arr, ccArray *minusArr)
static void ccArrayAppendArrayWithResize (ccArray *arr, ccArray *plusArr)
static void ccArrayMakeObjectsPerformSelector (ccArray *arr, SEL sel)

Detailed Description

Based on Chipmunk cpArray. ccArray is a faster alternative to NSMutableArray, it does pretty much the same thing (stores NSObjects and retains/releases them appropriately). It's faster because:

Function Documentation

static void ccArrayAppendArrayWithResize ( ccArray *  arr,
ccArray *  plusArr 
) [inline, static]

Appends objects from plusArr to arr. Capacity of arr is increased if needed.

static void ccArrayAppendObject ( ccArray *  arr,
id  object 
) [inline, static]

Appends an object. Bahaviour undefined if array doesn't have enough capacity.

static BOOL ccArrayContainsObject ( ccArray *  arr,
id  object 
) [inline, static]

Returns a Boolean value that indicates whether object is present in array.

static void ccArrayDoubleCapacity ( ccArray *  arr  )  [inline, static]

Doubles array capacity

static void ccArrayFastRemoveObjectAtIndex ( ccArray *  arr,
NSUInteger  index 
) [inline, static]

Removes object at specified index and fills the gap with the last object, thereby avoiding the need to push back subsequent objects. Behaviour undefined if index outside [0, num-1].

static void ccArrayFree ( ccArray *  arr  )  [inline, static]

Frees array after removing all remaining objects. Silently ignores nil arr.

static void ccArrayFullRemoveArray ( ccArray *  arr,
ccArray *  minusArr 
) [inline, static]

Removes from arr all objects in minusArr. For each object in minusArr, all matching instances in arr will be removed.

static NSUInteger ccArrayGetIndexOfObject ( ccArray *  arr,
id  object 
) [inline, static]

Returns index of first occurence of object, NSNotFound if object not found.

static void ccArrayMakeObjectsPerformSelector ( ccArray *  arr,
SEL  sel 
) [inline, static]

Sends to each object in arr the message identified by given selector.

static ccArray* ccArrayNew ( NSUInteger  capacity  )  [inline, static]

Allocates and initializes a new array with specified capacity

static void ccArrayRemoveAllObjects ( ccArray *  arr  )  [inline, static]

Removes all objects from arr

static void ccArrayRemoveArray ( ccArray *  arr,
ccArray *  minusArr 
) [inline, static]

Removes from arr all objects in minusArr. For each object in minusArr, the first matching instance in arr will be removed.

static void ccArrayRemoveObject ( ccArray *  arr,
id  object 
) [inline, static]

Searches for the first occurance of object and removes it. If object is not found the function has no effect.

static void ccArrayRemoveObjectAtIndex ( ccArray *  arr,
NSUInteger  index 
) [inline, static]

Removes object at specified index and pushes back all subsequent objects. Behaviour undefined if index outside [0, num-1].


Generated on Tue Jun 9 10:39:27 2009 for cocos2d for iPhone 0.7.3 by  doxygen 1.5.8