MCPcopy Create free account
hub / github.com/Sapd/HeadsetControl / initializeHeadsetInfo

Function initializeHeadsetInfo

src/output.c:161–188  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

159}
160
161void initializeHeadsetInfo(HeadsetInfo* info, struct device* device)
162{
163 info->status = STATUS_SUCCESS;
164 _asprintf(&info->idVendor, "0x%04x", device->idVendor);
165 _asprintf(&info->idProduct, "0x%04x", device->idProduct);
166 info->device_name = device->device_name;
167 info->vendor_name = device->device_hid_vendorname;
168 info->product_name = device->device_hid_productname;
169
170 info->equalizer = device->equalizer;
171 info->equalizer_presets = device->equalizer_presets,
172 info->has_equalizer_info = info->equalizer != NULL;
173 info->has_equalizer_presets_info = info->equalizer_presets != NULL;
174
175 info->parametric_equalizer = device->parametric_equalizer,
176 info->has_parametric_equalizer_info = info->parametric_equalizer != NULL;
177
178 info->capabilities_amount = 0;
179
180 for (int i = 0; i < NUM_CAPABILITIES; i++) {
181 if (device->capabilities & B(i)) { // Check if the ith capability is supported
182 info->capabilities_enum[info->capabilities_amount] = i;
183 info->capabilities[info->capabilities_amount] = capabilities_str_enum[i];
184 info->capabilities_str[info->capabilities_amount] = capabilities_str[i];
185 info->capabilities_amount++;
186 }
187 }
188}
189
190/**
191 * @brief Iterates through all requested features and processes their responses

Callers 1

outputFunction · 0.85

Calls 1

_asprintfFunction · 0.85

Tested by

no test coverage detected