Bonjour,
Je cherche à implémenter une priority_queue de pixels dans laquelle la priorité est donnée au pixel ayant le niveau de gris le plus proche d'une certaine valeur v (qui n'est pas connue avant l'exécution)
Le code de la structure est
1 2 3 4 5
| typedef struct mystruct
{
int x;
int y;
} point; |
ensuite, pour la file
std::priority_queue<point, std::vector<point>, compare> points;
Il me reste l'opérateur compare :
1 2 3
| struct compare {
bool operator()(point a, point b) {return abs(t[a.x,a.y]-v)<abs(t[b.x,b.y]-v)}
}; |
La question est : comment passer le buffer t et la valeur v à l'opérateur compare ?
Merci d'avance
Partager