From 63a054734193e482230ab22b840e5eadc696c9bb Mon Sep 17 00:00:00 2001 From: Mark Spruiell Date: Wed, 7 Feb 2018 08:56:00 -0800 Subject: ICE-7996 & ICE-7976 - Proxy updates for MATLAB --- matlab/src/ObjectPrx.cpp | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) (limited to 'matlab/src/ObjectPrx.cpp') diff --git a/matlab/src/ObjectPrx.cpp b/matlab/src/ObjectPrx.cpp index f7b2a5e842c..d6261c9269d 100644 --- a/matlab/src/ObjectPrx.cpp +++ b/matlab/src/ObjectPrx.cpp @@ -965,6 +965,20 @@ Ice_ObjectPrx_ice_compress(void* self, void** r, unsigned char b) return 0; } +mxArray* +Ice_ObjectPrx_ice_getCompress(void* self) +{ + auto v = deref(self)->ice_getCompress(); + if(v.has_value()) + { + return createResultValue(createOptionalValue(true, createBool(v.value()))); + } + else + { + return createResultValue(createOptionalValue(false, 0)); + } +} + mxArray* Ice_ObjectPrx_ice_timeout(void* self, void** r, int t) { @@ -981,6 +995,37 @@ Ice_ObjectPrx_ice_timeout(void* self, void** r, int t) return 0; } +mxArray* +Ice_ObjectPrx_ice_getTimeout(void* self) +{ + auto v = deref(self)->ice_getTimeout(); + if(v.has_value()) + { + return createResultValue(createOptionalValue(true, createInt(v.value()))); + } + else + { + return createResultValue(createOptionalValue(false, 0)); + } +} + +mxArray* +Ice_ObjectPrx_ice_fixed(void* self, void** r, void* connection) +{ + assert(connection); // Wrapper only calls this function for non-nil arguments. + try + { + auto proxy = deref(self); + auto newProxy = proxy->ice_fixed(deref(connection)); + *r = newProxy == proxy ? 0 : new shared_ptr(move(newProxy)); + } + catch(const std::exception& ex) + { + return convertException(ex); + } + return 0; +} + mxArray* Ice_ObjectPrx_ice_getConnection(void* self, void** r) { -- cgit v1.2.3