169 files changed, 64432 insertions, 116 deletions
diff --git a/tvapi/libtv/tvdb/CTvDimension.h b/tvapi/libtv/tvdb/CTvDimension.h new file mode 100644 index 0000000..6415871 --- a/dev/null +++ b/tvapi/libtv/tvdb/CTvDimension.h @@ -0,0 +1,99 @@ +// +// +// amlogic 2013 +// +// @ Project : tv +// @ File Name : CTvDimension.h +// @ Date : 2013-11 +// @ Author : +// +// + +#if !defined(_CTVDIMENSION_H) +#define _CTVDIMENSION_H +#include <utils/Vector.h> +#include "CTvDatabase.h" +#include <utils/String8.h> +#include <stdlib.h> + +#include "CTvLog.h" + +// TV ATSC rating dimension +class CTvDimension +{ +public: + class VChipRating + { + private: + int region; + int dimension; + int value; + + public: + VChipRating(int region, int dimension, int value); + VChipRating(); + ~VChipRating(); + int getRegion(); + int getDimension(); + int getValue()const; + }; + /* 'All' is a very special case, it links to dimension0 & dimension5 */ + void createFromCursor(CTvDatabase::Cursor &c); + static int getUSPGAllLockStatus(String8 abbrev); + static void setUSPGAllLockStatus(String8 abbrev, int lock); + static void selectByID(CTvDimension &dm, int id); + static int selectByIndex(CTvDimension &dm, int ratingRegionID, int index); + static void selectByName(CTvDimension &dm, int ratingRegionID, String8 dimensionName); + static void selectByRatingRegion(CTvDimension &dm, int ratingRegionID); + bool isBlocked(CTvDimension &dm, VChipRating *definedRating); + int getID(); + int getRatingRegion(); + String8 getRatingRegionName(); + String8 getName(); + int getGraduatedScale(); + int getDefinedValue(); + //int* getLockStatus(); + int getLockStatus(int valueIndex); + void getLockStatus(String8 abbrevs[], int lock[], int *array_len); + int getAbbrev(String8 abb[]); + String8 getAbbrev(int valueIndex); + int getText(String8 tx[]); + String8 getText(int valueIndex); + void setLockStatus(int valueIndex, int status); + void setLockStatus(int status[]); + void setLockStatus(String8 abbrevs[], int locks[], int abb_size); + /**Rating regions*/ +public: + static const int REGION_US = 0x1; + static const int REGION_CANADA = 0x2; + static const int REGION_TAIWAN = 0x3; + static const int REGION_SOUTHKOREA = 0x4; + + CTvDimension(CTvDatabase::Cursor &c); + CTvDimension(); + ~CTvDimension(); + + static void insertNewDimension(const int region, String8 regionName, String8 name, + int indexj, int *lock, const char **abbrev, const char **text, int size); + static void builtinAtscDimensions(); + static int isDimensionTblExist(); + String8 getCurdimension(); + String8 getCurAbbr(); + String8 getCurText(); +private: + int id; + int indexj; + int ratingRegion; + int graduatedScale; + int valuesDefined; + int *lockValues; + String8 name; + String8 ratingRegionName; + String8 *abbrevValues; + String8 *textValues; + bool isPGAll; + String8 CurvchipDimension; + String8 CurvchipAbbrev; + String8 CurvchipText; +}; +#endif //_CTVDIMENSION_H |