2012-09-17 14:27:17 +08:00
|
|
|
#ifndef __CCB_VALUE_H__
|
|
|
|
#define __CCB_VALUE_H__
|
|
|
|
|
|
|
|
#include "cocos2d.h"
|
|
|
|
#include "ExtensionMacros.h"
|
|
|
|
|
|
|
|
/*
|
|
|
|
These classes are wrapper of basic types, such as ccColor3B
|
|
|
|
*/
|
|
|
|
|
|
|
|
NS_CC_EXT_BEGIN
|
|
|
|
|
2012-09-24 11:08:10 +08:00
|
|
|
class ccColor3BWapper : public CCObject
|
2012-09-17 14:27:17 +08:00
|
|
|
{
|
|
|
|
private:
|
2012-09-24 11:08:10 +08:00
|
|
|
ccColor3B color;
|
2012-09-17 14:27:17 +08:00
|
|
|
|
|
|
|
public:
|
2012-09-24 11:08:10 +08:00
|
|
|
static ccColor3BWapper* create(const ccColor3B& color);
|
2012-09-17 14:27:17 +08:00
|
|
|
|
2012-11-20 16:34:55 +08:00
|
|
|
ccColor3B getColor();
|
2012-09-17 14:27:17 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
enum
|
|
|
|
{
|
|
|
|
kIntValue,
|
|
|
|
kFloatValue,
|
|
|
|
kPointerValue,
|
|
|
|
kBoolValue,
|
|
|
|
kUnsignedCharValue,
|
|
|
|
};
|
|
|
|
|
2012-09-24 11:08:10 +08:00
|
|
|
class CCBValue : public CCObject
|
2012-09-17 14:27:17 +08:00
|
|
|
{
|
|
|
|
private:
|
|
|
|
union
|
|
|
|
{
|
|
|
|
int nValue;
|
|
|
|
float fValue;
|
|
|
|
const void *pointer;
|
|
|
|
} mValue;
|
|
|
|
|
|
|
|
int mType;
|
|
|
|
|
|
|
|
public:
|
|
|
|
static CCBValue* create(int nValue);
|
|
|
|
static CCBValue* create(bool bValue);
|
|
|
|
static CCBValue* create(float fValue);
|
|
|
|
static CCBValue* create(unsigned char byte);
|
|
|
|
static CCBValue* create(const void *pPointer);
|
|
|
|
|
|
|
|
int getIntValue();
|
|
|
|
float getFloatValue();
|
|
|
|
bool getBoolValue();
|
|
|
|
unsigned char getByteValue();
|
|
|
|
const void* getPointer();
|
|
|
|
};
|
|
|
|
|
|
|
|
NS_CC_EXT_END
|
|
|
|
|
|
|
|
#endif // __CCB_VALUE_H__
|