50 #ifndef _ZOLTAN2_MATRIXPARTITIONINGSOLUTION_HPP_
51 #define _ZOLTAN2_MATRIXPARTITIONINGSOLUTION_HPP_
85 template <
typename Adapter>
90 #ifndef DOXYGEN_SHOULD_SKIP_THIS
91 typedef typename Adapter::gno_t gno_t;
92 typedef typename Adapter::scalar_t scalar_t;
93 typedef typename Adapter::lno_t lno_t;
95 typedef typename Adapter::user_t user_t;
114 const RCP<
const Comm<int> > &comm,
138 void setIDLists(ArrayRCP<part_t> &rowIDs,ArrayRCP<part_t> &colIDs,
139 ArrayRCP<part_t> &domainIDs, ArrayRCP<part_t> &rangeIDs);
197 if (rowIDs_.size() > 0)
198 return rowIDs_.getRawPtr();
208 if (colIDs_.size() > 0)
209 return colIDs_.getRawPtr();
258 RCP<const Environment> env_;
259 const RCP<const Comm<int> > comm_;
295 ArrayRCP<gno_t> rowIDs_;
296 ArrayRCP<gno_t> colIDs_;
298 ArrayRCP<gno_t> domainIDs_;
299 ArrayRCP<gno_t> rangeIDs_;
308 const RCP<Algorithm<Adapter> > algorithm_;
313 template <
typename Adapter>
316 : env_(env), comm_(comm), rowIDs_(), colIDs_(), haveSolution_(false),
317 algorithm_(algorithm)
319 env_->memory(
"After construction of solution");
325 template <
typename Adapter>
327 ArrayRCP<part_t> &domainIDs, ArrayRCP<part_t> &rangeIDs)
333 domainIDs_=domainIDs;
336 haveSolution_ =
true;
338 env_->memory(
"After Solution has processed algorithm's answer");