• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/ap/gpl/iserver/alsa-lib-1.0.26/src/pcm/

Lines Matching refs:ioplug

892  * \brief Create an ioplug instance
893 * \param ioplug the ioplug handle
899 * Creates the ioplug instance.
901 * The callback is the mandatory field of ioplug handle. At least, start, stop and
905 int snd_pcm_ioplug_create(snd_pcm_ioplug_t *ioplug, const char *name,
912 assert(ioplug && ioplug->callback);
913 assert(ioplug->callback->start &&
914 ioplug->callback->stop &&
915 ioplug->callback->pointer);
918 if (ioplug->version < 0x010000 ||
919 ioplug->version > SND_PCM_IOPLUG_VERSION) {
920 SNDERR("ioplug: Plugin version mismatch: 0x%x\n",
921 ioplug->version);
929 io->data = ioplug;
930 ioplug->state = SND_PCM_STATE_OPEN;
931 ioplug->stream = stream;
939 ioplug->pcm = pcm;
944 snd_pcm_set_hw_ptr(pcm, &ioplug->hw_ptr, -1, 0);
945 snd_pcm_set_appl_ptr(pcm, &ioplug->appl_ptr, -1, 0);
947 snd_pcm_ioplug_reinit_status(ioplug);
953 * \brief Delete the ioplug instance
954 * \param ioplug the ioplug handle
957 int snd_pcm_ioplug_delete(snd_pcm_ioplug_t *ioplug)
959 return snd_pcm_close(ioplug->pcm);
964 * \brief Reset ioplug parameters
965 * \param ioplug the ioplug handle
967 * Resets the all parameters for the given ioplug handle.
969 void snd_pcm_ioplug_params_reset(snd_pcm_ioplug_t *ioplug)
971 ioplug_priv_t *io = ioplug->pcm->private_data;
977 * \param ioplug the ioplug handle
986 int snd_pcm_ioplug_set_param_list(snd_pcm_ioplug_t *ioplug, int type, unsigned int num_list, const unsigned int *list)
988 ioplug_priv_t *io = ioplug->pcm->private_data;
1000 * \param ioplug the ioplug handle
1010 int snd_pcm_ioplug_set_param_minmax(snd_pcm_ioplug_t *ioplug, int type, unsigned int min, unsigned int max)
1012 ioplug_priv_t *io = ioplug->pcm->private_data;
1028 * \param ioplug the ioplug handle
1032 * Call this function to propagate the status change in the ioplug instance to
1035 int snd_pcm_ioplug_reinit_status(snd_pcm_ioplug_t *ioplug)
1037 ioplug->pcm->poll_fd = ioplug->poll_fd;
1038 ioplug->pcm->poll_events = ioplug->poll_events;
1039 ioplug->pcm->monotonic = (ioplug->flags & SND_PCM_IOPLUG_FLAG_MONOTONIC) != 0;
1040 ioplug->pcm->mmap_rw = ioplug->mmap_rw;
1045 * \brief Get mmap area of ioplug
1046 * \param ioplug the ioplug handle
1052 const snd_pcm_channel_area_t *snd_pcm_ioplug_mmap_areas(snd_pcm_ioplug_t *ioplug)
1054 if (ioplug->mmap_rw)
1055 return snd_pcm_mmap_areas(ioplug->pcm);
1060 * \brief Change the ioplug PCM status
1061 * \param ioplug the ioplug handle
1065 * Changes the PCM status of the ioplug to the given value.
1069 int snd_pcm_ioplug_set_state(snd_pcm_ioplug_t *ioplug, snd_pcm_state_t state)
1071 ioplug->state = state;