  The problem of deciding whether CSP instances admit solutions has been deeply
studied in the literature, and several structural tractability results have
been derived so far. However, constraint satisfaction comes in practice as a
computation problem where the focus is either on finding one solution, or on
enumerating all solutions, possibly projected to some given set of output
variables. The paper investigates the structural tractability of the problem of
enumerating (possibly projected) solutions, where tractability means here
computable with polynomial delay (WPD), since in general exponentially many
solutions may be computed. A general framework based on the notion of tree
projection of hypergraphs is considered, which generalizes all known
decomposition methods. Tractability results have been obtained both for classes
of structures where output variables are part of their specification, and for
classes of structures where computability WPD must be ensured for any possible
set of output variables. These results are shown to be tight, by exhibiting
dichotomies for classes of structures having bounded arity and where the tree
decomposition method is considered.
