Lines Matching defs:info

166     PortInfo* info = NULL;
180 info = (PortInfo*) malloc(sizeof(PortInfo));
181 if (info != NULL) {
182 memset(info, 0, sizeof(PortInfo));
183 info->fd = fd;
190 PORT_Close((void*) info);
191 info = NULL;
193 return info;
199 PortInfo* info = (PortInfo*) id;
200 if (info->fd >= 0) {
201 close(info->fd);
202 info->fd = -1;
204 if (info->controlIDs) {
205 free(info->controlIDs);
206 info->controlIDs = NULL;
208 free(info);
216 PortInfo* info = (PortInfo*) id;
217 if (info != NULL) {
218 if (!info->targetPortCount && !info->sourcePortCount) {
220 AUDIO_INITINFO(&info->audioInfo);
221 if (ioctl(info->fd, AUDIO_GETINFO, &info->audioInfo) >= 0) {
223 if (info->audioInfo.play.avail_ports & targetPorts[i]) {
224 info->ports[info->targetPortCount] = i;
225 info->targetPortCount++;
229 info->audioInfo.play.avail_ports & targetPorts[i]);
232 info->audioInfo.play.avail_ports & targetPorts[i],
233 info->audioInfo.play.mod_ports & targetPorts[i]);
237 if (info->audioInfo.record.avail_ports & sourcePorts[i]) {
238 info->ports[info->targetPortCount + info->sourcePortCount] = i;
239 info->sourcePortCount++;
243 info->audioInfo.record.avail_ports & sourcePorts[i]);
246 info->audioInfo.record.avail_ports & sourcePorts[i],
247 info->audioInfo.record.mod_ports & sourcePorts[i]);
252 ret = info->targetPortCount + info->sourcePortCount;
257 int isSourcePort(PortInfo* info, INT32 portIndex) {
258 return (portIndex >= info->targetPortCount);
262 PortInfo* info = (PortInfo*) id;
264 if (isSourcePort(info, portIndex)) {
265 return sourcePortJavaSoundMapping[info->ports[portIndex]];
267 return targetPortJavaSoundMapping[info->ports[portIndex]];
274 char* getPortName(PortInfo* info, INT32 portIndex) {
277 if (isSourcePort(info, portIndex)) {
278 ret = sourcePortNames[info->ports[portIndex]];
280 ret = targetPortNames[info->ports[portIndex]];
286 PortInfo* info = (PortInfo*) id;
290 n = getPortName(info, portIndex);
300 void createPortControl(PortInfo* info, PortControlCreator* creator, INT32 portIndex,
311 if (info->usedControlIDs >= info->maxControlCount) {
312 ERROR1("not enough free controlIDs !! maxControlIDs = %d\n", info->maxControlCount);
315 controlID = &(info->controlIDs[info->usedControlIDs]);
316 controlID->portInfo = info;
318 controlIndex = info->ports[portIndex];
319 if (isSourcePort(info, portIndex)) {
352 info->usedControlIDs++;
358 void addCompoundControl(PortInfo* info, PortControlCreator* creator, char* name, void** controlObjects, int* controlCount) {
374 void addAllControls(PortInfo* info, PortControlCreator* creator, void** controlObjects, int* controlCount) {
387 PortInfo* info = (PortInfo*) id;
396 id, portIndex, info->controlIDs, info->maxControlCount);
399 if (!info->controlIDs) {
406 maxCount += (2 * info->targetPortCount);
407 info->maxControlCount = maxCount;
408 info->controlIDs = (PortControlID*) malloc(sizeof(PortControlID) * maxCount);
410 if (!isSourcePort(info, portIndex)) {
413 createPortControl(info, creator, portIndex,
416 addAllControls(info, creator, controls, &controlCount);
418 selectable = info->audioInfo.play.avail_ports & targetPorts[info->ports[portIndex]];
420 selectable = info->audioInfo.play.mod_ports & targetPorts[info->ports[portIndex]];
425 selectable = info->audioInfo.record.avail_ports & sourcePorts[info->ports[portIndex]];
427 selectable = info->audioInfo.record.mod_ports & sourcePorts[info->ports[portIndex]];
431 createPortControl(info, creator, portIndex,
435 createPortControl(info, creator, portIndex,
440 createPortControl(info, creator, portIndex,
445 addCompoundControl(info, creator, getPortName(info, portIndex), controls, &controlCount);
449 createPortControl(info, creator, portIndex,
453 addCompoundControl(info, creator, MONITOR_GAIN_STRING, controls, &controlCount);