| 151 | |
| 152 | template<typename T> |
| 153 | T *Array<T>::device() { |
| 154 | if (!isOwner() || getOffset() || data.use_count() > 1) { |
| 155 | *this = copyArray<T>(*this); |
| 156 | } |
| 157 | getQueue().sync(); |
| 158 | return this->get(); |
| 159 | } |
| 160 | |
| 161 | template<typename T> |
| 162 | void evalMultiple(vector<Array<T> *> array_ptrs) { |