One of the first things we did when we bought the house was to plan the wired house network prior to putting on the foam roof. This was a good move in a number of ways and we've gotten a lot of use out of it.
We wired each room (8 runs total) with cat-6 (data), cat-3 (phone) and RJ6 (cable) and installed plates in each room. We plumbed everything into a central wiring box that handles the distribution along with hubs to handle each of the cable runs and clusters. We were even able to get some speaker runs (back/surround) in place before the foam went on. Although not terribly complex or costly (comparatively... all-in, i think it was $500), it's a pretty robust system and definitely something to plan if you're putting on a new roof... along with some new electrical for exterior lighting. This was one of the things we liked when working with Rick at Abril roofing. He worked with us to separate the "scrape" from the "foam and coat" which allowed for this to happen.
(One of the things about writing this post is that it reminded me that I ran cat-6 instead of cat-5e wire... yay, me!)