#pragma once
//
#include <string>
#include <vector>
//

class CICameraId
{
public:
    CICameraId(void);
    ~CICameraId(void);

    enum eCODE_TYPE {
        eSTATIC,
        eSOS,
        eEOS,
        MAX_CODE_TYPE,
    };

    virtual std::string id(int nIndex)  = 0;
    virtual std::string sos(int nIndex) = 0;
    virtual std::string eos(int nIndex) = 0;

    virtual int index(std::string strId) = 0;

    virtual int indexSOS(std::string strId) = 0;
    virtual int indexEOS(std::string strId) = 0;

protected:
    std::string& ltrim(std::string& str);
    std::string& rtrim(std::string& str);
    std::string& trim(std::string& str);

    std::vector<std::string> m_vecCode[MAX_CODE_TYPE];
};
