---
title: Create
framework: audiodriverkit
role: symbol
role_heading: Static Method
path: audiodriverkit/iouseraudiobooleancontrol/create
---

# Create

Allocates and initializes an instance of the Boolean control class.

## Declaration

```occ
static OSSharedPtr<IOUserAudioBooleanControl> Create(IOUserAudioDriver *in_driver, bool in_is_settable, bool in_control_value, IOUserAudioObjectPropertyElement in_control_element, IOUserAudioObjectPropertyScope in_control_scope, IOUserAudioClassID in_control_class_id);
```

## Parameters

- `in_driver`: The doc://com.apple.audiodriverkit/documentation/AudioDriverKit/IOUserAudioDriver that owns this object.
- `in_is_settable`: A Boolean value that indicates if the control can be set.
- `in_control_value`: A Boolean value that represents the control’s current value.
- `in_control_element`: An doc://com.apple.audiodriverkit/documentation/AudioDriverKit/AudioDriverKit/IOUserAudioObjectPropertyElement to identify the control.
- `in_control_scope`: A doc://com.apple.audiodriverkit/documentation/AudioDriverKit/AudioDriverKit/IOUserAudioObjectPropertyScope indicating the control’s scope: input, output, global, or play-through.
- `in_control_class_id`: The doc://com.apple.audiodriverkit/documentation/AudioDriverKit/AudioDriverKit/IOUserAudioClassID of the control.

## Return Value

Return Value A poiner to an IOUserAudioBooleanControl, if allocation and initialization succeeded.

## Discussion

Discussion If you subclass IOUserAudioBooleanControl to override this class’ behavior, don’t use Create to allocate and initialize the custom subclass.

## See Also

### Creating a Boolean Control

- [init](audiodriverkit/iouseraudiobooleancontrol/init.md)
- [IOUserAudioObjectPropertyElement](audiodriverkit/audiodriverkit/iouseraudioobjectpropertyelement.md)
- [IOUserAudioObjectPropertyScope](audiodriverkit/audiodriverkit/iouseraudioobjectpropertyscope.md)
