tomminno
08-06-2006, 17:36
Salve a tutti!
Avrei bisogno di creare una classe interfaccia per la gestione di svariati tipi di file audio.
Il problema che mi si presenta è che ogni tipo di file potrebbe lavorare con qualunque tipo di dato dal char al double, di conseguenza l'interfaccia dovrebbe poter rispettare questo requisito.
I template sembrerebbero la soluzione migliore, se non fosse che il tipo di dato con cui lavorare è definito a run-time, mentre i template prevedono che io conosca già il tipo di dato al tempo di compilazione.
Il problema mi si presenta immutato anche per la realizzazione del Buffer che utilizzo per lo scambio dei dati tra i vari thread.
Ho cercato tra i vari pattern se ce ne fosse uno che facesse al caso mio, ho guardato il pattern Template, ma non sono sicuro faccia al caso mio.
Qualcuno conosce un modo per affrontare nel migliore dei modi questo problema (che tra l'altro non dovrebbe essere raro)?
Vorrei evitare soluzioni come l'utilizzo del tipo void (come quella attuale) o istanziare 5 classi template ognuna del tipo appropriato e utilizzare poi quella effettivamente richiesta a run-time.
Grazie!
Avrei bisogno di creare una classe interfaccia per la gestione di svariati tipi di file audio.
Il problema che mi si presenta è che ogni tipo di file potrebbe lavorare con qualunque tipo di dato dal char al double, di conseguenza l'interfaccia dovrebbe poter rispettare questo requisito.
I template sembrerebbero la soluzione migliore, se non fosse che il tipo di dato con cui lavorare è definito a run-time, mentre i template prevedono che io conosca già il tipo di dato al tempo di compilazione.
Il problema mi si presenta immutato anche per la realizzazione del Buffer che utilizzo per lo scambio dei dati tra i vari thread.
Ho cercato tra i vari pattern se ce ne fosse uno che facesse al caso mio, ho guardato il pattern Template, ma non sono sicuro faccia al caso mio.
Qualcuno conosce un modo per affrontare nel migliore dei modi questo problema (che tra l'altro non dovrebbe essere raro)?
Vorrei evitare soluzioni come l'utilizzo del tipo void (come quella attuale) o istanziare 5 classi template ognuna del tipo appropriato e utilizzare poi quella effettivamente richiesta a run-time.
Grazie!