CCBValue

#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


class ccColor3BWapper : public CCObject

{

private:

    ccColor3B color;

    

public:

    static ccColor3BWapper* create(const ccColor3B& color);

    

    const ccColor3B& getColor() const;

};


enum

{

    kIntValue,

    kFloatValue,

    kBoolValue,

    kUnsignedCharValue,

    kStringValue,

    kArrayValue

};


class CCBValue : public CCObject

{

private:

    union 

    {

        int nValue;

        float fValue;

    } mValue;

    

    std::string m_strValue;

    CCArray* m_arrValue;

    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 char* pStr);

    static CCBValue* create(CCArray* pArr);


    

    int getIntValue();

    float getFloatValue();

    bool getBoolValue();

    unsigned char getByteValue();

    const char* getStringValue();

    CCArray *getArrayValue();

    

    int getType();

};


NS_CC_EXT_END


#endif // __CCB_VALUE_H__


版权声明:本文博客原创文章。博客,未经同意,不得转载。

posted @ 2015-08-10 21:35  yxwkaifa  阅读(177)  评论(0编辑  收藏  举报