Esempio n. 1
0
 uint32_t getRasterLayerFilterName(Layer* pLayer, uint32_t index, int enabled, char* pName, uint32_t nameSize)
 {
    RasterLayer* pRaster = dynamic_cast<RasterLayer*>(pLayer);
    if (pRaster == NULL || pName == NULL)
    {
       setLastError(SIMPLE_BAD_PARAMS);
       return 0;
    }
    std::vector<std::string> filters =
       (enabled != 0) ? pRaster->getEnabledFilterNames() : pRaster->getSupportedFilters();
    if (index >= filters.size())
    {
       setLastError(SIMPLE_BAD_PARAMS);
       return 0;
    }
    std::string name = filters[index];
    if (nameSize == 0)
    {
       return name.size() + 1;
    }
    else if (name.size() > nameSize - 1) // extra char for the null
    {
       setLastError(SIMPLE_BUFFER_SIZE);
       return 0;
    }
    memcpy(pName, name.c_str(), name.size());
    pName[name.size()] = '\0';
    setLastError(SIMPLE_NO_ERROR);
    return name.size();
 }
Esempio n. 2
0
 uint32_t getRasterLayerFilterCount(Layer* pLayer, int enabled)
 {
    RasterLayer* pRaster = dynamic_cast<RasterLayer*>(pLayer);
    if (pRaster == NULL)
    {
       setLastError(SIMPLE_BAD_PARAMS);
       return 0;
    }
    setLastError(SIMPLE_NO_ERROR);
    return (enabled != 0) ? pRaster->getEnabledFilterNames().size() : pRaster->getSupportedFilters().size();
 }