Home | History | Annotate | Download | only in audioflinger

Lines Matching refs:Client

87 static const char kClientLockedString[] = "Client lock is taken\n";
326 sp<Client> client = mClients.valueAt(i).promote();
327 if (client != 0) {
328 snprintf(buffer, SIZE, " pid: %d\n", client->pid());
499 sp<AudioFlinger::Client> AudioFlinger::registerPid(pid_t pid)
503 // (for which promote() is always != 0), otherwise create a new entry and Client.
504 sp<Client> client = mClients.valueFor(pid).promote();
505 if (client == 0) {
506 client = new Client(this, pid);
507 mClients.add(pid, client);
510 return client;
590 sp<Client> client;
603 // client AudioTrack::set already implements AUDIO_STREAM_DEFAULT => AUDIO_STREAM_MUSIC,
647 client = registerPid(pid);
678 track = thread->createTrack_l(client, streamType, sampleRate, format,
711 // remove local strong reference to Client before deleting the Track so that the
712 // Client destructor is called by the TrackBase destructor with mClientLock held
717 client.clear();
723 // return handle to client
1307 void AudioFlinger::registerClient(const sp<IAudioFlingerClient>& client)
1310 if (client == 0) {
1318 client,
1320 ALOGV("registerClient() client %p, pid %d", notificationClient.get(), pid);
1324 sp<IBinder> binder = IInterface::asBinder(client);
1412 AudioFlinger::Client::Client(const sp<AudioFlinger>& audioFlinger, pid_t pid)
1423 mMemoryDealer = new MemoryDealer(heapSize, "AudioFlinger::Client");
1426 // Client destructor must be called with AudioFlinger::mClientLock held
1427 AudioFlinger::Client::~Client()
1432 sp<MemoryDealer> AudioFlinger::Client::heap() const
1440 const sp<IAudioFlingerClient>& client,
1442 : mAudioFlinger(audioFlinger), mPid(pid), mAudioFlingerClient(client)
1478 sp<Client> client;
1539 client = registerPid(pid);
1556 recordTrack = thread->createRecordTrack_l(client, sampleRate, format, channelMask,
1573 // remove local strong reference to Client before deleting the RecordTrack so that the
1574 // Client destructor is called by the TrackBase destructor with mClientLock held
1579 client.clear();
1588 // return handle to client
1917 // notify client processes of the new output creation
1953 // notify client processes of the new output creation
2082 // notify client processes of the new input creation
2241 // If we still have effect chains, it means that a client still holds a handle
2255 // first check if a record thread is already opened with a client on the same session.
2283 // we have a different lock for notification client
2320 // This is a binder API, so a malicious client could pass in a bad parameter.
2340 // Ignore requests received from processes not known as notification client. The request
2343 // to clear this reference if the client process dies.
2345 ALOGW("acquireAudioSessionId() unknown client %d for session %d", caller, audioSession);
2761 sp<Client> client = registerPid(pid);
2764 handle = thread->createEffect_l(client, effectClient, priority, sessionId,
2770 // remove local strong reference to Client with mClientLock held
2772 client.clear();