Quote Originariamente inviata da giuseppe500 Visualizza il messaggio
ciao .
Sto provando a creare un oggetto trasformator che prende in ingresso due o tre parametri e crea un dato idn ucita, chiamando una funzione statica che ha i parametri come parametro scusate il gioco di parole.
I due o tre parametri sono i dati che passo alla classe host ,il mio problema č come gestire l'aggancio tra i dati e l''oggetto transformation per es ho fatto un oggetto data che č un vector alla fine che contiene punti.
ci sono 6 di questi oggetti data e vorrei in qualche modo passare un parametro template che mi dice : "quest oggetto trasformator prende in ingresso idati 1, 4,e 6 e ritorna qualcosa risultato della trasformazione"

l'oggetto trasformator č qualcosa del genere:
codice:
class TransformNormals
{
   public static Data doTrasformation(data data1, data data2, data data3){
   . . .trasformazione
   }
}
e lo vorrei passare cosi alla host class:
codice:
template<class Transform<1,4,6>, data1,data2,data3,data4,data5,data6>
class transformhost
{
void initialize(){
   Transform::doTransformation(data1,data4,data6);
   }
}

esistono casistiche di questo tipo o risolvere con un traits o un convertitore da tipo a numerico ?
o risolvere con un function object.
grazie in anticipo.
forse ho capito , posso usare una mappa con max 10 chiavi dato che al massimo ne ho 10 che sono le semantiche dell'opengl position,normal(i dati sono quindi inseriti per chiave) ecc....e posso trasformare ogni semantica in un indice che va da 0 a 10 e recuperare o agganciare quelle che corrispondono per chiave, quello che non so č come posso recuperare gli indici o la stringa per la mappa passandola da un parametro template ad es:
č posibile fare cosi:
codice:
Transform<1,4,6>
e recuperare per ogni oggetto l'1 ,4,6 ?relativa pero' a quell oggetto , č un template parameter?

quello che voglio fare č configurare a design time poi a runtime posso usare la mappa e i transformer.