Example #1
0
 internal static uint AdvertiseMethod(
     QiObjectBuilder objBuilder,
     string completeSignature,
     QiApiObjectMethod method,
     IntPtr userdata
     )
 => qi_object_builder_advertise_method(objBuilder.Handle, completeSignature, method, userdata);
 internal static uint AdvertiseMethod(
     QiObjectBuilder objBuilder,
     string completeSignature,
     QiApiObjectMethod method,
     IntPtr userdata
     )
     => qi_object_builder_advertise_method(objBuilder.Handle, completeSignature, method, userdata);
Example #3
0
        public void AdvertiseMethod(string signature, Func <string, TupleValue, QiValue> method)
        {
            QiApiObjectMethod callback = (completeSignature, msg, ret, userData) =>
            {
                var result   = method(completeSignature, new TupleValue(new ValueSafeHandle(msg)));
                var retValue = new AnyValue(new ValueSafeHandle(ret));

                retValue.RawValue = result.RawValue;
                //QiValue.Swap(retValue, result);
            };

            uint id = ObjectBuilderNative.qi_object_builder_advertise_method(this._handle, signature, callback, IntPtr.Zero);
        }
 internal static extern uint qi_object_builder_advertise_method(
     ObjectBuilderSafeHandle qiObjBuilder, string completeSignature, QiApiObjectMethod function, IntPtr userdata
     );
Example #5
0
 private static extern uint qi_object_builder_advertise_method(
     IntPtr qiObjBuilder, string completeSignature, QiApiObjectMethod function, IntPtr userdata
     );
 private static extern uint qi_object_builder_advertise_method(
     IntPtr qiObjBuilder, string completeSignature, QiApiObjectMethod function, IntPtr userdata
     );