1 /* 2 * This file is part of gtkD. 3 * 4 * gtkD is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU Lesser General Public License 6 * as published by the Free Software Foundation; either version 3 7 * of the License, or (at your option) any later version, with 8 * some exceptions, please read the COPYING file. 9 * 10 * gtkD is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public License 16 * along with gtkD; if not, write to the Free Software 17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA 18 */ 19 20 // generated automatically - do not change 21 // find conversion definition on APILookup.txt 22 // implement new conversion functionalities on the wrap.utils pakage 23 24 25 module gobject.CClosure; 26 27 private import glib.ConstructionException; 28 private import gobject.Closure; 29 private import gobject.ObjectG; 30 private import gobject.Value; 31 private import gtkc.gobject; 32 public import gtkc.gobjecttypes; 33 34 35 /** 36 * A #GCClosure is a specialization of #GClosure for C function callbacks. 37 */ 38 public class CClosure 39 { 40 /** the main Gtk struct */ 41 protected GCClosure* gCClosure; 42 protected bool ownedRef; 43 44 /** Get the main Gtk struct */ 45 public GCClosure* getCClosureStruct() 46 { 47 return gCClosure; 48 } 49 50 /** the main Gtk struct as a void* */ 51 protected void* getStruct() 52 { 53 return cast(void*)gCClosure; 54 } 55 56 /** 57 * Sets our main struct and passes it to the parent class. 58 */ 59 public this (GCClosure* gCClosure, bool ownedRef = false) 60 { 61 this.gCClosure = gCClosure; 62 this.ownedRef = ownedRef; 63 } 64 65 /** 66 * Creates a new closure which invokes callbackFunc with userData as 67 * the last parameter. 68 * 69 * Params: 70 * callbackFunc = the function to invoke 71 * userData = user data to pass to callbackFunc 72 * destroyData = destroy notify to be called when userData is no longer used 73 * swap = if true invoce with usrData as the first parameter 74 * 75 * Throws: ConstructionException GTK+ fails to create the object. 76 */ 77 public this(GCallback callbackFunc, void* userData, GClosureNotify destroyData, bool swap) 78 { 79 GClosure* p; 80 81 if ( swap ) 82 p = g_cclosure_new_swap(callbackFunc, userData, destroyData); 83 else 84 p = g_cclosure_new(callbackFunc, userData, destroyData); 85 86 if(p is null) 87 { 88 throw new ConstructionException("null returned by new"); 89 } 90 91 this(cast(GCClosure*) p); 92 } 93 94 /** 95 * A variant of this() which uses object as userData and 96 * calls ObjectG.watchClosure() on object and the created 97 * closure. This function is useful when you have a callback closely 98 * associated with a gobject.ObjectG, and want the callback to no longer run 99 * after the object is is freed. 100 * 101 * Params: 102 * callbackFunc = the function to invoke 103 * object = a gobject.ObjectG.ObjectG to pass to callbackFunc 104 * swap = if true invoce with usrData as the first parameter 105 * 106 * Throws: ConstructionException GTK+ fails to create the object. 107 */ 108 public this(GCallback callbackFunc, ObjectG object, bool swap) 109 { 110 GClosure* p; 111 112 if ( swap ) 113 p = g_cclosure_new_object_swap(callbackFunc, (object is null) ? null : object.getObjectGStruct()); 114 else 115 p = g_cclosure_new_object(callbackFunc, (object is null) ? null : object.getObjectGStruct()); 116 117 if(p is null) 118 { 119 throw new ConstructionException("null returned by new_object"); 120 } 121 122 this(cast(GCClosure*) p); 123 } 124 125 /** 126 */ 127 128 /** 129 * A #GClosureMarshal function for use with signals with handlers that 130 * take two boxed pointers as arguments and return a boolean. If you 131 * have such a signal, you will probably also need to use an 132 * accumulator, such as g_signal_accumulator_true_handled(). 133 * 134 * Params: 135 * closure = A #GClosure. 136 * returnValue = A #GValue to store the return value. May be %NULL 137 * if the callback of closure doesn't return a value. 138 * nParamValues = The length of the @param_values array. 139 * paramValues = An array of #GValues holding the arguments 140 * on which to invoke the callback of closure. 141 * invocationHint = The invocation hint given as the last argument to 142 * g_closure_invoke(). 143 * marshalData = Additional data specified when registering the 144 * marshaller, see g_closure_set_marshal() and 145 * g_closure_set_meta_marshal() 146 */ 147 public static void marshalBOOLEANBOXEDBOXED(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 148 { 149 g_cclosure_marshal_BOOLEAN__BOXED_BOXED((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 150 } 151 152 /** 153 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_BOOLEAN__BOXED_BOXED(). 154 * 155 * Params: 156 * closure = the #GClosure to which the marshaller belongs 157 * returnValue = a #GValue to store the return 158 * value. May be %NULL if the callback of @closure doesn't return a 159 * value. 160 * instanc = the instance on which the closure is invoked. 161 * args = va_list of arguments to be passed to the closure. 162 * marshalData = additional data specified when 163 * registering the marshaller, see g_closure_set_marshal() and 164 * g_closure_set_meta_marshal() 165 * nParams = the length of the @param_types array 166 * paramTypes = the #GType of each argument from 167 * @args. 168 */ 169 public static void marshalBOOLEANBOXEDBOXEDv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 170 { 171 g_cclosure_marshal_BOOLEAN__BOXED_BOXEDv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 172 } 173 174 /** 175 * A marshaller for a #GCClosure with a callback of type 176 * `gboolean (*callback) (gpointer instance, gint arg1, gpointer user_data)` where the #gint parameter 177 * denotes a flags type. 178 * 179 * Params: 180 * closure = the #GClosure to which the marshaller belongs 181 * returnValue = a #GValue which can store the returned #gboolean 182 * nParamValues = 2 183 * paramValues = a #GValue array holding instance and arg1 184 * invocationHint = the invocation hint given as the last argument 185 * to g_closure_invoke() 186 * marshalData = additional data specified when registering the marshaller 187 */ 188 public static void marshalBOOLEANFLAGS(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 189 { 190 g_cclosure_marshal_BOOLEAN__FLAGS((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 191 } 192 193 /** 194 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_BOOLEAN__FLAGS(). 195 * 196 * Params: 197 * closure = the #GClosure to which the marshaller belongs 198 * returnValue = a #GValue to store the return 199 * value. May be %NULL if the callback of @closure doesn't return a 200 * value. 201 * instanc = the instance on which the closure is invoked. 202 * args = va_list of arguments to be passed to the closure. 203 * marshalData = additional data specified when 204 * registering the marshaller, see g_closure_set_marshal() and 205 * g_closure_set_meta_marshal() 206 * nParams = the length of the @param_types array 207 * paramTypes = the #GType of each argument from 208 * @args. 209 */ 210 public static void marshalBOOLEANFLAGSv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 211 { 212 g_cclosure_marshal_BOOLEAN__FLAGSv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 213 } 214 215 /** 216 * A marshaller for a #GCClosure with a callback of type 217 * `gchar* (*callback) (gpointer instance, GObject *arg1, gpointer arg2, gpointer user_data)`. 218 * 219 * Params: 220 * closure = the #GClosure to which the marshaller belongs 221 * returnValue = a #GValue, which can store the returned string 222 * nParamValues = 3 223 * paramValues = a #GValue array holding instance, arg1 and arg2 224 * invocationHint = the invocation hint given as the last argument 225 * to g_closure_invoke() 226 * marshalData = additional data specified when registering the marshaller 227 */ 228 public static void marshalSTRINGOBJECTPOINTER(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 229 { 230 g_cclosure_marshal_STRING__OBJECT_POINTER((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 231 } 232 233 /** 234 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_STRING__OBJECT_POINTER(). 235 * 236 * Params: 237 * closure = the #GClosure to which the marshaller belongs 238 * returnValue = a #GValue to store the return 239 * value. May be %NULL if the callback of @closure doesn't return a 240 * value. 241 * instanc = the instance on which the closure is invoked. 242 * args = va_list of arguments to be passed to the closure. 243 * marshalData = additional data specified when 244 * registering the marshaller, see g_closure_set_marshal() and 245 * g_closure_set_meta_marshal() 246 * nParams = the length of the @param_types array 247 * paramTypes = the #GType of each argument from 248 * @args. 249 */ 250 public static void marshalSTRINGOBJECTPOINTERv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 251 { 252 g_cclosure_marshal_STRING__OBJECT_POINTERv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 253 } 254 255 /** 256 * A marshaller for a #GCClosure with a callback of type 257 * `void (*callback) (gpointer instance, gboolean arg1, gpointer user_data)`. 258 * 259 * Params: 260 * closure = the #GClosure to which the marshaller belongs 261 * returnValue = ignored 262 * nParamValues = 2 263 * paramValues = a #GValue array holding the instance and the #gboolean parameter 264 * invocationHint = the invocation hint given as the last argument 265 * to g_closure_invoke() 266 * marshalData = additional data specified when registering the marshaller 267 */ 268 public static void marshalVOIDBOOLEAN(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 269 { 270 g_cclosure_marshal_VOID__BOOLEAN((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 271 } 272 273 /** 274 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__BOOLEAN(). 275 * 276 * Params: 277 * closure = the #GClosure to which the marshaller belongs 278 * returnValue = a #GValue to store the return 279 * value. May be %NULL if the callback of @closure doesn't return a 280 * value. 281 * instanc = the instance on which the closure is invoked. 282 * args = va_list of arguments to be passed to the closure. 283 * marshalData = additional data specified when 284 * registering the marshaller, see g_closure_set_marshal() and 285 * g_closure_set_meta_marshal() 286 * nParams = the length of the @param_types array 287 * paramTypes = the #GType of each argument from 288 * @args. 289 */ 290 public static void marshalVOIDBOOLEANv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 291 { 292 g_cclosure_marshal_VOID__BOOLEANv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 293 } 294 295 /** 296 * A marshaller for a #GCClosure with a callback of type 297 * `void (*callback) (gpointer instance, GBoxed *arg1, gpointer user_data)`. 298 * 299 * Params: 300 * closure = the #GClosure to which the marshaller belongs 301 * returnValue = ignored 302 * nParamValues = 2 303 * paramValues = a #GValue array holding the instance and the #GBoxed* parameter 304 * invocationHint = the invocation hint given as the last argument 305 * to g_closure_invoke() 306 * marshalData = additional data specified when registering the marshaller 307 */ 308 public static void marshalVOIDBOXED(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 309 { 310 g_cclosure_marshal_VOID__BOXED((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 311 } 312 313 /** 314 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__BOXED(). 315 * 316 * Params: 317 * closure = the #GClosure to which the marshaller belongs 318 * returnValue = a #GValue to store the return 319 * value. May be %NULL if the callback of @closure doesn't return a 320 * value. 321 * instanc = the instance on which the closure is invoked. 322 * args = va_list of arguments to be passed to the closure. 323 * marshalData = additional data specified when 324 * registering the marshaller, see g_closure_set_marshal() and 325 * g_closure_set_meta_marshal() 326 * nParams = the length of the @param_types array 327 * paramTypes = the #GType of each argument from 328 * @args. 329 */ 330 public static void marshalVOIDBOXEDv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 331 { 332 g_cclosure_marshal_VOID__BOXEDv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 333 } 334 335 /** 336 * A marshaller for a #GCClosure with a callback of type 337 * `void (*callback) (gpointer instance, gchar arg1, gpointer user_data)`. 338 * 339 * Params: 340 * closure = the #GClosure to which the marshaller belongs 341 * returnValue = ignored 342 * nParamValues = 2 343 * paramValues = a #GValue array holding the instance and the #gchar parameter 344 * invocationHint = the invocation hint given as the last argument 345 * to g_closure_invoke() 346 * marshalData = additional data specified when registering the marshaller 347 */ 348 public static void marshalVOIDCHAR(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 349 { 350 g_cclosure_marshal_VOID__CHAR((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 351 } 352 353 /** 354 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__CHAR(). 355 * 356 * Params: 357 * closure = the #GClosure to which the marshaller belongs 358 * returnValue = a #GValue to store the return 359 * value. May be %NULL if the callback of @closure doesn't return a 360 * value. 361 * instanc = the instance on which the closure is invoked. 362 * args = va_list of arguments to be passed to the closure. 363 * marshalData = additional data specified when 364 * registering the marshaller, see g_closure_set_marshal() and 365 * g_closure_set_meta_marshal() 366 * nParams = the length of the @param_types array 367 * paramTypes = the #GType of each argument from 368 * @args. 369 */ 370 public static void marshalVOIDCHARv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 371 { 372 g_cclosure_marshal_VOID__CHARv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 373 } 374 375 /** 376 * A marshaller for a #GCClosure with a callback of type 377 * `void (*callback) (gpointer instance, gdouble arg1, gpointer user_data)`. 378 * 379 * Params: 380 * closure = the #GClosure to which the marshaller belongs 381 * returnValue = ignored 382 * nParamValues = 2 383 * paramValues = a #GValue array holding the instance and the #gdouble parameter 384 * invocationHint = the invocation hint given as the last argument 385 * to g_closure_invoke() 386 * marshalData = additional data specified when registering the marshaller 387 */ 388 public static void marshalVOIDDOUBLE(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 389 { 390 g_cclosure_marshal_VOID__DOUBLE((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 391 } 392 393 /** 394 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__DOUBLE(). 395 * 396 * Params: 397 * closure = the #GClosure to which the marshaller belongs 398 * returnValue = a #GValue to store the return 399 * value. May be %NULL if the callback of @closure doesn't return a 400 * value. 401 * instanc = the instance on which the closure is invoked. 402 * args = va_list of arguments to be passed to the closure. 403 * marshalData = additional data specified when 404 * registering the marshaller, see g_closure_set_marshal() and 405 * g_closure_set_meta_marshal() 406 * nParams = the length of the @param_types array 407 * paramTypes = the #GType of each argument from 408 * @args. 409 */ 410 public static void marshalVOIDDOUBLEv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 411 { 412 g_cclosure_marshal_VOID__DOUBLEv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 413 } 414 415 /** 416 * A marshaller for a #GCClosure with a callback of type 417 * `void (*callback) (gpointer instance, gint arg1, gpointer user_data)` where the #gint parameter denotes an enumeration type.. 418 * 419 * Params: 420 * closure = the #GClosure to which the marshaller belongs 421 * returnValue = ignored 422 * nParamValues = 2 423 * paramValues = a #GValue array holding the instance and the enumeration parameter 424 * invocationHint = the invocation hint given as the last argument 425 * to g_closure_invoke() 426 * marshalData = additional data specified when registering the marshaller 427 */ 428 public static void marshalVOIDENUM(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 429 { 430 g_cclosure_marshal_VOID__ENUM((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 431 } 432 433 /** 434 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__ENUM(). 435 * 436 * Params: 437 * closure = the #GClosure to which the marshaller belongs 438 * returnValue = a #GValue to store the return 439 * value. May be %NULL if the callback of @closure doesn't return a 440 * value. 441 * instanc = the instance on which the closure is invoked. 442 * args = va_list of arguments to be passed to the closure. 443 * marshalData = additional data specified when 444 * registering the marshaller, see g_closure_set_marshal() and 445 * g_closure_set_meta_marshal() 446 * nParams = the length of the @param_types array 447 * paramTypes = the #GType of each argument from 448 * @args. 449 */ 450 public static void marshalVOIDENUMv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 451 { 452 g_cclosure_marshal_VOID__ENUMv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 453 } 454 455 /** 456 * A marshaller for a #GCClosure with a callback of type 457 * `void (*callback) (gpointer instance, gint arg1, gpointer user_data)` where the #gint parameter denotes a flags type. 458 * 459 * Params: 460 * closure = the #GClosure to which the marshaller belongs 461 * returnValue = ignored 462 * nParamValues = 2 463 * paramValues = a #GValue array holding the instance and the flags parameter 464 * invocationHint = the invocation hint given as the last argument 465 * to g_closure_invoke() 466 * marshalData = additional data specified when registering the marshaller 467 */ 468 public static void marshalVOIDFLAGS(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 469 { 470 g_cclosure_marshal_VOID__FLAGS((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 471 } 472 473 /** 474 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__FLAGS(). 475 * 476 * Params: 477 * closure = the #GClosure to which the marshaller belongs 478 * returnValue = a #GValue to store the return 479 * value. May be %NULL if the callback of @closure doesn't return a 480 * value. 481 * instanc = the instance on which the closure is invoked. 482 * args = va_list of arguments to be passed to the closure. 483 * marshalData = additional data specified when 484 * registering the marshaller, see g_closure_set_marshal() and 485 * g_closure_set_meta_marshal() 486 * nParams = the length of the @param_types array 487 * paramTypes = the #GType of each argument from 488 * @args. 489 */ 490 public static void marshalVOIDFLAGSv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 491 { 492 g_cclosure_marshal_VOID__FLAGSv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 493 } 494 495 /** 496 * A marshaller for a #GCClosure with a callback of type 497 * `void (*callback) (gpointer instance, gfloat arg1, gpointer user_data)`. 498 * 499 * Params: 500 * closure = the #GClosure to which the marshaller belongs 501 * returnValue = ignored 502 * nParamValues = 2 503 * paramValues = a #GValue array holding the instance and the #gfloat parameter 504 * invocationHint = the invocation hint given as the last argument 505 * to g_closure_invoke() 506 * marshalData = additional data specified when registering the marshaller 507 */ 508 public static void marshalVOIDFLOAT(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 509 { 510 g_cclosure_marshal_VOID__FLOAT((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 511 } 512 513 /** 514 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__FLOAT(). 515 * 516 * Params: 517 * closure = the #GClosure to which the marshaller belongs 518 * returnValue = a #GValue to store the return 519 * value. May be %NULL if the callback of @closure doesn't return a 520 * value. 521 * instanc = the instance on which the closure is invoked. 522 * args = va_list of arguments to be passed to the closure. 523 * marshalData = additional data specified when 524 * registering the marshaller, see g_closure_set_marshal() and 525 * g_closure_set_meta_marshal() 526 * nParams = the length of the @param_types array 527 * paramTypes = the #GType of each argument from 528 * @args. 529 */ 530 public static void marshalVOIDFLOATv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 531 { 532 g_cclosure_marshal_VOID__FLOATv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 533 } 534 535 /** 536 * A marshaller for a #GCClosure with a callback of type 537 * `void (*callback) (gpointer instance, gint arg1, gpointer user_data)`. 538 * 539 * Params: 540 * closure = the #GClosure to which the marshaller belongs 541 * returnValue = ignored 542 * nParamValues = 2 543 * paramValues = a #GValue array holding the instance and the #gint parameter 544 * invocationHint = the invocation hint given as the last argument 545 * to g_closure_invoke() 546 * marshalData = additional data specified when registering the marshaller 547 */ 548 public static void marshalVOIDINT(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 549 { 550 g_cclosure_marshal_VOID__INT((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 551 } 552 553 /** 554 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__INT(). 555 * 556 * Params: 557 * closure = the #GClosure to which the marshaller belongs 558 * returnValue = a #GValue to store the return 559 * value. May be %NULL if the callback of @closure doesn't return a 560 * value. 561 * instanc = the instance on which the closure is invoked. 562 * args = va_list of arguments to be passed to the closure. 563 * marshalData = additional data specified when 564 * registering the marshaller, see g_closure_set_marshal() and 565 * g_closure_set_meta_marshal() 566 * nParams = the length of the @param_types array 567 * paramTypes = the #GType of each argument from 568 * @args. 569 */ 570 public static void marshalVOIDINTv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 571 { 572 g_cclosure_marshal_VOID__INTv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 573 } 574 575 /** 576 * A marshaller for a #GCClosure with a callback of type 577 * `void (*callback) (gpointer instance, glong arg1, gpointer user_data)`. 578 * 579 * Params: 580 * closure = the #GClosure to which the marshaller belongs 581 * returnValue = ignored 582 * nParamValues = 2 583 * paramValues = a #GValue array holding the instance and the #glong parameter 584 * invocationHint = the invocation hint given as the last argument 585 * to g_closure_invoke() 586 * marshalData = additional data specified when registering the marshaller 587 */ 588 public static void marshalVOIDLONG(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 589 { 590 g_cclosure_marshal_VOID__LONG((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 591 } 592 593 /** 594 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__LONG(). 595 * 596 * Params: 597 * closure = the #GClosure to which the marshaller belongs 598 * returnValue = a #GValue to store the return 599 * value. May be %NULL if the callback of @closure doesn't return a 600 * value. 601 * instanc = the instance on which the closure is invoked. 602 * args = va_list of arguments to be passed to the closure. 603 * marshalData = additional data specified when 604 * registering the marshaller, see g_closure_set_marshal() and 605 * g_closure_set_meta_marshal() 606 * nParams = the length of the @param_types array 607 * paramTypes = the #GType of each argument from 608 * @args. 609 */ 610 public static void marshalVOIDLONGv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 611 { 612 g_cclosure_marshal_VOID__LONGv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 613 } 614 615 /** 616 * A marshaller for a #GCClosure with a callback of type 617 * `void (*callback) (gpointer instance, GObject *arg1, gpointer user_data)`. 618 * 619 * Params: 620 * closure = the #GClosure to which the marshaller belongs 621 * returnValue = ignored 622 * nParamValues = 2 623 * paramValues = a #GValue array holding the instance and the #GObject* parameter 624 * invocationHint = the invocation hint given as the last argument 625 * to g_closure_invoke() 626 * marshalData = additional data specified when registering the marshaller 627 */ 628 public static void marshalVOIDOBJECT(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 629 { 630 g_cclosure_marshal_VOID__OBJECT((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 631 } 632 633 /** 634 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__OBJECT(). 635 * 636 * Params: 637 * closure = the #GClosure to which the marshaller belongs 638 * returnValue = a #GValue to store the return 639 * value. May be %NULL if the callback of @closure doesn't return a 640 * value. 641 * instanc = the instance on which the closure is invoked. 642 * args = va_list of arguments to be passed to the closure. 643 * marshalData = additional data specified when 644 * registering the marshaller, see g_closure_set_marshal() and 645 * g_closure_set_meta_marshal() 646 * nParams = the length of the @param_types array 647 * paramTypes = the #GType of each argument from 648 * @args. 649 */ 650 public static void marshalVOIDOBJECTv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 651 { 652 g_cclosure_marshal_VOID__OBJECTv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 653 } 654 655 /** 656 * A marshaller for a #GCClosure with a callback of type 657 * `void (*callback) (gpointer instance, GParamSpec *arg1, gpointer user_data)`. 658 * 659 * Params: 660 * closure = the #GClosure to which the marshaller belongs 661 * returnValue = ignored 662 * nParamValues = 2 663 * paramValues = a #GValue array holding the instance and the #GParamSpec* parameter 664 * invocationHint = the invocation hint given as the last argument 665 * to g_closure_invoke() 666 * marshalData = additional data specified when registering the marshaller 667 */ 668 public static void marshalVOIDPARAM(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 669 { 670 g_cclosure_marshal_VOID__PARAM((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 671 } 672 673 /** 674 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__PARAM(). 675 * 676 * Params: 677 * closure = the #GClosure to which the marshaller belongs 678 * returnValue = a #GValue to store the return 679 * value. May be %NULL if the callback of @closure doesn't return a 680 * value. 681 * instanc = the instance on which the closure is invoked. 682 * args = va_list of arguments to be passed to the closure. 683 * marshalData = additional data specified when 684 * registering the marshaller, see g_closure_set_marshal() and 685 * g_closure_set_meta_marshal() 686 * nParams = the length of the @param_types array 687 * paramTypes = the #GType of each argument from 688 * @args. 689 */ 690 public static void marshalVOIDPARAMv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 691 { 692 g_cclosure_marshal_VOID__PARAMv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 693 } 694 695 /** 696 * A marshaller for a #GCClosure with a callback of type 697 * `void (*callback) (gpointer instance, gpointer arg1, gpointer user_data)`. 698 * 699 * Params: 700 * closure = the #GClosure to which the marshaller belongs 701 * returnValue = ignored 702 * nParamValues = 2 703 * paramValues = a #GValue array holding the instance and the #gpointer parameter 704 * invocationHint = the invocation hint given as the last argument 705 * to g_closure_invoke() 706 * marshalData = additional data specified when registering the marshaller 707 */ 708 public static void marshalVOIDPOINTER(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 709 { 710 g_cclosure_marshal_VOID__POINTER((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 711 } 712 713 /** 714 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__POINTER(). 715 * 716 * Params: 717 * closure = the #GClosure to which the marshaller belongs 718 * returnValue = a #GValue to store the return 719 * value. May be %NULL if the callback of @closure doesn't return a 720 * value. 721 * instanc = the instance on which the closure is invoked. 722 * args = va_list of arguments to be passed to the closure. 723 * marshalData = additional data specified when 724 * registering the marshaller, see g_closure_set_marshal() and 725 * g_closure_set_meta_marshal() 726 * nParams = the length of the @param_types array 727 * paramTypes = the #GType of each argument from 728 * @args. 729 */ 730 public static void marshalVOIDPOINTERv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 731 { 732 g_cclosure_marshal_VOID__POINTERv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 733 } 734 735 /** 736 * A marshaller for a #GCClosure with a callback of type 737 * `void (*callback) (gpointer instance, const gchar *arg1, gpointer user_data)`. 738 * 739 * Params: 740 * closure = the #GClosure to which the marshaller belongs 741 * returnValue = ignored 742 * nParamValues = 2 743 * paramValues = a #GValue array holding the instance and the #gchar* parameter 744 * invocationHint = the invocation hint given as the last argument 745 * to g_closure_invoke() 746 * marshalData = additional data specified when registering the marshaller 747 */ 748 public static void marshalVOIDSTRING(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 749 { 750 g_cclosure_marshal_VOID__STRING((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 751 } 752 753 /** 754 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__STRING(). 755 * 756 * Params: 757 * closure = the #GClosure to which the marshaller belongs 758 * returnValue = a #GValue to store the return 759 * value. May be %NULL if the callback of @closure doesn't return a 760 * value. 761 * instanc = the instance on which the closure is invoked. 762 * args = va_list of arguments to be passed to the closure. 763 * marshalData = additional data specified when 764 * registering the marshaller, see g_closure_set_marshal() and 765 * g_closure_set_meta_marshal() 766 * nParams = the length of the @param_types array 767 * paramTypes = the #GType of each argument from 768 * @args. 769 */ 770 public static void marshalVOIDSTRINGv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 771 { 772 g_cclosure_marshal_VOID__STRINGv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 773 } 774 775 /** 776 * A marshaller for a #GCClosure with a callback of type 777 * `void (*callback) (gpointer instance, guchar arg1, gpointer user_data)`. 778 * 779 * Params: 780 * closure = the #GClosure to which the marshaller belongs 781 * returnValue = ignored 782 * nParamValues = 2 783 * paramValues = a #GValue array holding the instance and the #guchar parameter 784 * invocationHint = the invocation hint given as the last argument 785 * to g_closure_invoke() 786 * marshalData = additional data specified when registering the marshaller 787 */ 788 public static void marshalVOIDUCHAR(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 789 { 790 g_cclosure_marshal_VOID__UCHAR((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 791 } 792 793 /** 794 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__UCHAR(). 795 * 796 * Params: 797 * closure = the #GClosure to which the marshaller belongs 798 * returnValue = a #GValue to store the return 799 * value. May be %NULL if the callback of @closure doesn't return a 800 * value. 801 * instanc = the instance on which the closure is invoked. 802 * args = va_list of arguments to be passed to the closure. 803 * marshalData = additional data specified when 804 * registering the marshaller, see g_closure_set_marshal() and 805 * g_closure_set_meta_marshal() 806 * nParams = the length of the @param_types array 807 * paramTypes = the #GType of each argument from 808 * @args. 809 */ 810 public static void marshalVOIDUCHARv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 811 { 812 g_cclosure_marshal_VOID__UCHARv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 813 } 814 815 /** 816 * A marshaller for a #GCClosure with a callback of type 817 * `void (*callback) (gpointer instance, guint arg1, gpointer user_data)`. 818 * 819 * Params: 820 * closure = the #GClosure to which the marshaller belongs 821 * returnValue = ignored 822 * nParamValues = 2 823 * paramValues = a #GValue array holding the instance and the #guint parameter 824 * invocationHint = the invocation hint given as the last argument 825 * to g_closure_invoke() 826 * marshalData = additional data specified when registering the marshaller 827 */ 828 public static void marshalVOIDUINT(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 829 { 830 g_cclosure_marshal_VOID__UINT((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 831 } 832 833 /** 834 * A marshaller for a #GCClosure with a callback of type 835 * `void (*callback) (gpointer instance, guint arg1, gpointer arg2, gpointer user_data)`. 836 * 837 * Params: 838 * closure = the #GClosure to which the marshaller belongs 839 * returnValue = ignored 840 * nParamValues = 3 841 * paramValues = a #GValue array holding instance, arg1 and arg2 842 * invocationHint = the invocation hint given as the last argument 843 * to g_closure_invoke() 844 * marshalData = additional data specified when registering the marshaller 845 */ 846 public static void marshalVOIDUINTPOINTER(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 847 { 848 g_cclosure_marshal_VOID__UINT_POINTER((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 849 } 850 851 /** 852 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__UINT_POINTER(). 853 * 854 * Params: 855 * closure = the #GClosure to which the marshaller belongs 856 * returnValue = a #GValue to store the return 857 * value. May be %NULL if the callback of @closure doesn't return a 858 * value. 859 * instanc = the instance on which the closure is invoked. 860 * args = va_list of arguments to be passed to the closure. 861 * marshalData = additional data specified when 862 * registering the marshaller, see g_closure_set_marshal() and 863 * g_closure_set_meta_marshal() 864 * nParams = the length of the @param_types array 865 * paramTypes = the #GType of each argument from 866 * @args. 867 */ 868 public static void marshalVOIDUINTPOINTERv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 869 { 870 g_cclosure_marshal_VOID__UINT_POINTERv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 871 } 872 873 /** 874 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__UINT(). 875 * 876 * Params: 877 * closure = the #GClosure to which the marshaller belongs 878 * returnValue = a #GValue to store the return 879 * value. May be %NULL if the callback of @closure doesn't return a 880 * value. 881 * instanc = the instance on which the closure is invoked. 882 * args = va_list of arguments to be passed to the closure. 883 * marshalData = additional data specified when 884 * registering the marshaller, see g_closure_set_marshal() and 885 * g_closure_set_meta_marshal() 886 * nParams = the length of the @param_types array 887 * paramTypes = the #GType of each argument from 888 * @args. 889 */ 890 public static void marshalVOIDUINTv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 891 { 892 g_cclosure_marshal_VOID__UINTv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 893 } 894 895 /** 896 * A marshaller for a #GCClosure with a callback of type 897 * `void (*callback) (gpointer instance, gulong arg1, gpointer user_data)`. 898 * 899 * Params: 900 * closure = the #GClosure to which the marshaller belongs 901 * returnValue = ignored 902 * nParamValues = 2 903 * paramValues = a #GValue array holding the instance and the #gulong parameter 904 * invocationHint = the invocation hint given as the last argument 905 * to g_closure_invoke() 906 * marshalData = additional data specified when registering the marshaller 907 */ 908 public static void marshalVOIDULONG(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 909 { 910 g_cclosure_marshal_VOID__ULONG((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 911 } 912 913 /** 914 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__ULONG(). 915 * 916 * Params: 917 * closure = the #GClosure to which the marshaller belongs 918 * returnValue = a #GValue to store the return 919 * value. May be %NULL if the callback of @closure doesn't return a 920 * value. 921 * instanc = the instance on which the closure is invoked. 922 * args = va_list of arguments to be passed to the closure. 923 * marshalData = additional data specified when 924 * registering the marshaller, see g_closure_set_marshal() and 925 * g_closure_set_meta_marshal() 926 * nParams = the length of the @param_types array 927 * paramTypes = the #GType of each argument from 928 * @args. 929 */ 930 public static void marshalVOIDULONGv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 931 { 932 g_cclosure_marshal_VOID__ULONGv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 933 } 934 935 /** 936 * A marshaller for a #GCClosure with a callback of type 937 * `void (*callback) (gpointer instance, GVariant *arg1, gpointer user_data)`. 938 * 939 * Params: 940 * closure = the #GClosure to which the marshaller belongs 941 * returnValue = ignored 942 * nParamValues = 2 943 * paramValues = a #GValue array holding the instance and the #GVariant* parameter 944 * invocationHint = the invocation hint given as the last argument 945 * to g_closure_invoke() 946 * marshalData = additional data specified when registering the marshaller 947 * 948 * Since: 2.26 949 */ 950 public static void marshalVOIDVARIANT(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 951 { 952 g_cclosure_marshal_VOID__VARIANT((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 953 } 954 955 /** 956 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__VARIANT(). 957 * 958 * Params: 959 * closure = the #GClosure to which the marshaller belongs 960 * returnValue = a #GValue to store the return 961 * value. May be %NULL if the callback of @closure doesn't return a 962 * value. 963 * instanc = the instance on which the closure is invoked. 964 * args = va_list of arguments to be passed to the closure. 965 * marshalData = additional data specified when 966 * registering the marshaller, see g_closure_set_marshal() and 967 * g_closure_set_meta_marshal() 968 * nParams = the length of the @param_types array 969 * paramTypes = the #GType of each argument from 970 * @args. 971 */ 972 public static void marshalVOIDVARIANTv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 973 { 974 g_cclosure_marshal_VOID__VARIANTv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 975 } 976 977 /** 978 * A marshaller for a #GCClosure with a callback of type 979 * `void (*callback) (gpointer instance, gpointer user_data)`. 980 * 981 * Params: 982 * closure = the #GClosure to which the marshaller belongs 983 * returnValue = ignored 984 * nParamValues = 1 985 * paramValues = a #GValue array holding only the instance 986 * invocationHint = the invocation hint given as the last argument 987 * to g_closure_invoke() 988 * marshalData = additional data specified when registering the marshaller 989 */ 990 public static void marshalVOIDVOID(Closure closure, Value returnValue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 991 { 992 g_cclosure_marshal_VOID__VOID((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 993 } 994 995 /** 996 * The #GVaClosureMarshal equivalent to g_cclosure_marshal_VOID__VOID(). 997 * 998 * Params: 999 * closure = the #GClosure to which the marshaller belongs 1000 * returnValue = a #GValue to store the return 1001 * value. May be %NULL if the callback of @closure doesn't return a 1002 * value. 1003 * instanc = the instance on which the closure is invoked. 1004 * args = va_list of arguments to be passed to the closure. 1005 * marshalData = additional data specified when 1006 * registering the marshaller, see g_closure_set_marshal() and 1007 * g_closure_set_meta_marshal() 1008 * nParams = the length of the @param_types array 1009 * paramTypes = the #GType of each argument from 1010 * @args. 1011 */ 1012 public static void marshalVOIDVOIDv(Closure closure, Value returnValue, void* instanc, void* args, void* marshalData, GType[] paramTypes) 1013 { 1014 g_cclosure_marshal_VOID__VOIDv((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, args, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 1015 } 1016 1017 /** 1018 * A generic marshaller function implemented via 1019 * [libffi](http://sourceware.org/libffi/). 1020 * 1021 * Normally this function is not passed explicitly to g_signal_new(), 1022 * but used automatically by GLib when specifying a %NULL marshaller. 1023 * 1024 * Params: 1025 * closure = A #GClosure. 1026 * returnGvalue = A #GValue to store the return value. May be %NULL 1027 * if the callback of closure doesn't return a value. 1028 * nParamValues = The length of the @param_values array. 1029 * paramValues = An array of #GValues holding the arguments 1030 * on which to invoke the callback of closure. 1031 * invocationHint = The invocation hint given as the last argument to 1032 * g_closure_invoke(). 1033 * marshalData = Additional data specified when registering the 1034 * marshaller, see g_closure_set_marshal() and 1035 * g_closure_set_meta_marshal() 1036 * 1037 * Since: 2.30 1038 */ 1039 public static void marshalGeneric(Closure closure, Value returnGvalue, uint nParamValues, Value paramValues, void* invocationHint, void* marshalData) 1040 { 1041 g_cclosure_marshal_generic((closure is null) ? null : closure.getClosureStruct(), (returnGvalue is null) ? null : returnGvalue.getValueStruct(), nParamValues, (paramValues is null) ? null : paramValues.getValueStruct(), invocationHint, marshalData); 1042 } 1043 1044 /** 1045 * A generic #GVaClosureMarshal function implemented via 1046 * [libffi](http://sourceware.org/libffi/). 1047 * 1048 * Params: 1049 * closure = the #GClosure to which the marshaller belongs 1050 * returnValue = a #GValue to store the return 1051 * value. May be %NULL if the callback of @closure doesn't return a 1052 * value. 1053 * instanc = the instance on which the closure is invoked. 1054 * argsList = va_list of arguments to be passed to the closure. 1055 * marshalData = additional data specified when 1056 * registering the marshaller, see g_closure_set_marshal() and 1057 * g_closure_set_meta_marshal() 1058 * nParams = the length of the @param_types array 1059 * paramTypes = the #GType of each argument from 1060 * @args_list. 1061 * 1062 * Since: 2.30 1063 */ 1064 public static void marshalGenericVa(Closure closure, Value returnValue, void* instanc, void* argsList, void* marshalData, GType[] paramTypes) 1065 { 1066 g_cclosure_marshal_generic_va((closure is null) ? null : closure.getClosureStruct(), (returnValue is null) ? null : returnValue.getValueStruct(), instanc, argsList, marshalData, cast(int)paramTypes.length, paramTypes.ptr); 1067 } 1068 }