From 9fc8b732737f139d3e466510d75668ab45578960 Mon Sep 17 00:00:00 2001 From: manuel Date: Tue, 8 Mar 2016 21:02:53 +0100 Subject: sync with upstream --- xbmc/addons/include/xbmc_addon_cpp_dll.h | 191 ------------------------------- 1 file changed, 191 deletions(-) delete mode 100644 xbmc/addons/include/xbmc_addon_cpp_dll.h (limited to 'xbmc/addons/include/xbmc_addon_cpp_dll.h') diff --git a/xbmc/addons/include/xbmc_addon_cpp_dll.h b/xbmc/addons/include/xbmc_addon_cpp_dll.h deleted file mode 100644 index 3944525..0000000 --- a/xbmc/addons/include/xbmc_addon_cpp_dll.h +++ /dev/null @@ -1,191 +0,0 @@ -#ifndef __XBMC_ADDON_CPP_H__ -#define __XBMC_ADDON_CPP_H__ - -/* - * Copyright (C) 2005-2013 Team XBMC - * http://xbmc.org - * - * This Program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * This Program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with XBMC; see the file COPYING. If not, see - * . - * - */ - -#include "xbmc_addon_types.h" - -#include -#include -#include - -class DllSetting -{ -public: - enum SETTING_TYPE { NONE=0, CHECK, SPIN }; - - DllSetting(SETTING_TYPE t, const char *n, const char *l) - { - id = NULL; - label = NULL; - if (n) - { - id = new char[strlen(n)+1]; - strcpy(id, n); - } - if (l) - { - label = new char[strlen(l)+1]; - strcpy(label, l); - } - current = 0; - type = t; - } - - DllSetting(const DllSetting &rhs) // copy constructor - { - id = NULL; - label = NULL; - if (rhs.id) - { - id = new char[strlen(rhs.id)+1]; - strcpy(id, rhs.id); - } - if (rhs.label) - { - label = new char[strlen(rhs.label)+1]; - strcpy(label, rhs.label); - } - current = rhs.current; - type = rhs.type; - for (unsigned int i = 0; i < rhs.entry.size(); i++) - { - char *lab = new char[strlen(rhs.entry[i]) + 1]; - strcpy(lab, rhs.entry[i]); - entry.push_back(lab); - } - } - - ~DllSetting() - { - delete[] id; - delete[] label; - for (unsigned int i=0; i < entry.size(); i++) - delete[] entry[i]; - } - - void AddEntry(const char *label) - { - if (!label || type != SPIN) return; - char *lab = new char[strlen(label) + 1]; - strcpy(lab, label); - entry.push_back(lab); - } - - // data members - SETTING_TYPE type; - char* id; - char* label; - int current; - std::vector entry; -}; - -class DllUtils -{ -public: - - static unsigned int VecToStruct(std::vector &vecSet, ADDON_StructSetting*** sSet) - { - *sSet = NULL; - if(vecSet.size() == 0) - return 0; - - unsigned int uiElements=0; - - *sSet = (ADDON_StructSetting**)malloc(vecSet.size()*sizeof(ADDON_StructSetting*)); - for(unsigned int i=0;iid = NULL; - (*sSet)[i]->label = NULL; - uiElements++; - - if (vecSet[i].id && vecSet[i].label) - { - (*sSet)[i]->id = strdup(vecSet[i].id); - (*sSet)[i]->label = strdup(vecSet[i].label); - (*sSet)[i]->type = vecSet[i].type; - (*sSet)[i]->current = vecSet[i].current; - (*sSet)[i]->entry_elements = 0; - (*sSet)[i]->entry = NULL; - if(vecSet[i].type == DllSetting::SPIN && vecSet[i].entry.size() > 0) - { - (*sSet)[i]->entry = (char**)malloc(vecSet[i].entry.size()*sizeof(char**)); - for(unsigned int j=0;j 0) - { - (*sSet)[i]->entry[j] = strdup(vecSet[i].entry[j]); - (*sSet)[i]->entry_elements++; - } - } - } - } - } - return uiElements; - } - - static void StructToVec(unsigned int iElements, ADDON_StructSetting*** sSet, std::vector *vecSet) - { - if(iElements == 0) - return; - - vecSet->clear(); - for(unsigned int i=0;itype, (*sSet)[i]->id, (*sSet)[i]->label); - if((*sSet)[i]->type == DllSetting::SPIN) - { - for(unsigned int j=0;j<(*sSet)[i]->entry_elements;j++) - { - vSet.AddEntry((*sSet)[i]->entry[j]); - } - } - vSet.current = (*sSet)[i]->current; - vecSet->push_back(vSet); - } - } - - static void FreeStruct(unsigned int iElements, ADDON_StructSetting*** sSet) - { - if(iElements == 0) - return; - - for(unsigned int i=0;itype == DllSetting::SPIN) - { - for(unsigned int j=0;j<(*sSet)[i]->entry_elements;j++) - { - free((*sSet)[i]->entry[j]); - } - free((*sSet)[i]->entry); - } - free((*sSet)[i]->id); - free((*sSet)[i]->label); - free((*sSet)[i]); - } - free(*sSet); - } -}; - -#endif -- cgit v1.2.3