1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
/**********************************************************************
* $Id$
*
* Name: cpl_error_internal.h
* Project: CPL - Common Portability Library
* Purpose: CPL Error handling
* Author: Even Rouault, <even.rouault at spatialys.com>
*
**********************************************************************
* Copyright (c) 2019, Even Rouault, <even.rouault at spatialys.com>
*
* SPDX-License-Identifier: MIT
****************************************************************************/
#ifndef CPL_ERROR_INTERNAL_H_INCLUDED
#define CPL_ERROR_INTERNAL_H_INCLUDED
#ifdef GDAL_COMPILATION
// internal only
#include "cpl_error.h"
#include "cpl_string.h"
#include <vector>
/************************************************************************/
/* ErrorHandlerAccumulator() */
/************************************************************************/
class CPL_DLL CPLErrorHandlerAccumulatorStruct
{
public:
CPLErr type;
CPLErrorNum no;
CPLString msg{};
CPLErrorHandlerAccumulatorStruct() : type(CE_None), no(CPLE_None)
{
}
CPLErrorHandlerAccumulatorStruct(CPLErr eErrIn, CPLErrorNum noIn,
const char *msgIn)
: type(eErrIn), no(noIn), msg(msgIn)
{
}
};
void CPL_DLL CPLInstallErrorHandlerAccumulator(
std::vector<CPLErrorHandlerAccumulatorStruct> &aoErrors);
void CPL_DLL CPLUninstallErrorHandlerAccumulator();
#endif
#endif // CPL_ERROR_INTERNAL_H_INCLUDED
|