Text this: Self-adaptive joint routing and spectrum allocation algorithm with QoS constraints in cognitive wireless Mesh networks