---
name: "SoCallbackList"
section: "3"
platform: "linux"
package: "coin"
version: "1:4.0.10-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/SoCallbackList"
---

# SoCallbackList(3)

The SoCallbackList is a container for callback function pointers.

## NAME

SoCallbackList - The **SoCallbackList** is a container for callback function pointers.

## SYNOPSIS

\#include \<Inventor/lists/SoCallbackList.h\>

### Public Member Functions

**SoCallbackList** (void)\
 **~SoCallbackList** ()\
 void **addCallback** (SoCallbackListCB \*f, void \*userData=NULL)\
 void **removeCallback** (SoCallbackListCB \*f, void \*userdata=NULL)\
 void **clearCallbacks** (void)\
 int **getNumCallbacks** (void) const\
 void **invokeCallbacks** (void \*callbackdata)\

## Detailed Description

The **SoCallbackList** is a container for callback function pointers.

This list stores callback function pointers (along with user-specified extra data to pass to the callbacks) and provides a method for triggering the callback functions.

## Constructor & Destructor Documentation

### SoCallbackList::SoCallbackList (void )

Default constructor.

### SoCallbackList::~SoCallbackList (void )

Destructor.

## Member Function Documentation

### void SoCallbackList::addCallback (SoCallbackListCB \* f, void \* userdata = NULL)

Append the callback function *f* to the list. It will be passed the *userdata* upon invocation.

### void SoCallbackList::removeCallback (SoCallbackListCB \* f, void \* userdata = NULL)

Remove callback *f* from the list.

### void SoCallbackList::clearCallbacks (void )

Remove all callbacks in the list.

### int SoCallbackList::getNumCallbacks (void ) const

Returns number of callback functions.

### void SoCallbackList::invokeCallbacks (void \* callbackdata)

Invoke all callback functions, passing the userdata and the *callbackdata* as the first and second argument, respectively.

All callbacks registered when the method is invoked will be triggered, even though if the code in one callback removes another callback.

It is safe for a callback to remove itself or any other callbacks during execution.

## Author

Generated automatically by Doxygen for Coin from the source code.
