Changes between Initial Version and Version 1 of Ticket #175


Ignore:
Timestamp:
2023-03-31 10:27:21 (20 months ago)
Author:
jasper
Comment:

Current error handling code in adapters reads

			} catch (cape_open_error &ex) {
				static_cast<BaseClass*>(static_cast<ClassName*>(me))->setErrorFromCapeOpenError(COBIATEXT("ICapeArrayBooleanParameter::Value"),ex);
				resultCode=COBIAERR_CAPEOPENError;
			} catch (std::exception &ex) {
				COBIA_ASSERT(false,"unhandled std::exception");
				cape_open_error ex1(ex);
				static_cast<BaseClass*>(static_cast<ClassName*>(me))->setErrorFromCapeOpenError(COBIATEXT("ICapeArrayBooleanParameter::Value"),ex1);
				resultCode=COBIAERR_CAPEOPENError;
			} catch (...) {
				resultCode=COBIAERR_UnknownError;
				COBIA_ASSERT(false,"unhandled unknown exception");
			}

catching the cape_open error should return the error code associated with the cape_open_error.

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #175 – Description

    initial v1  
    1 C++ code can raise a cape_open_error, which is is translated by interface wrappers to returning a CAPE-OPEN error code and storing the internal error. 
     1C++ code can raise a cape_open_error, which is is translated by interface adapters to returning a CAPE-OPEN error code and storing the internal error. 
    22 
    33Here the generated error code is always COBIAErr_CAPEOPEN_error despite system error codes being used to construct the cape_open_error