/* Define the descriptor of a summation node resource */ struct sum { struct rsc rsc; /* Basic resource info */ unsignedchar idx[8];
};
/* Define sum resource request description info */ struct sum_desc { unsignedint msr;
};
struct sum_mgr { struct rsc_mgr mgr; /* Basic resource manager info */ struct snd_card *card; /* pointer to this card */
spinlock_t mgr_lock;
/* request one sum resource */ int (*get_sum)(struct sum_mgr *mgr, conststruct sum_desc *desc, struct sum **rsum); /* return one sum resource */ int (*put_sum)(struct sum_mgr *mgr, struct sum *sum);
};
/* Constructor and destructor of daio resource manager */ int sum_mgr_create(struct hw *hw, void **ptr); int sum_mgr_destroy(void *ptr);
/* Define the descriptor of a amixer resource */ struct amixer_rsc_ops;
struct amixer { struct rsc rsc; /* Basic resource info */ unsignedchar idx[8]; struct rsc *input; /* pointer to a resource acting as source */ struct sum *sum; /* Put amixer output to this summation node */ conststruct amixer_rsc_ops *ops; /* AMixer specific operations */
};
struct amixer_rsc_ops { int (*set_input)(struct amixer *amixer, struct rsc *rsc); int (*set_scale)(struct amixer *amixer, unsignedint scale); int (*set_invalid_squash)(struct amixer *amixer, unsignedint iv); int (*set_sum)(struct amixer *amixer, struct sum *sum); int (*commit_write)(struct amixer *amixer); /* Only for interleaved recording */ int (*commit_raw_write)(struct amixer *amixer); int (*setup)(struct amixer *amixer, struct rsc *input, unsignedint scale, struct sum *sum); int (*get_scale)(struct amixer *amixer);
};
struct amixer_mgr { struct rsc_mgr mgr; /* Basic resource manager info */ struct snd_card *card; /* pointer to this card */
spinlock_t mgr_lock;
/* request one amixer resource */ int (*get_amixer)(struct amixer_mgr *mgr, conststruct amixer_desc *desc, struct amixer **ramixer); /* return one amixer resource */ int (*put_amixer)(struct amixer_mgr *mgr, struct amixer *amixer);
};
/* Constructor and destructor of amixer resource manager */ int amixer_mgr_create(struct hw *hw, void **ramixer_mgr); int amixer_mgr_destroy(void *amixer_mgr);
#endif/* CTAMIXER_H */
Messung V0.5
¤ Dauer der Verarbeitung: 0.24 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.