47 #ifndef __Teko_RequestMesg_hpp__
48 #define __Teko_RequestMesg_hpp__
53 #include "Teuchos_RCP.hpp"
54 #include "Teuchos_ParameterList.hpp"
67 explicit RequestMesg(
const std::string& name,
unsigned int tag = 0) : name_(name), tag_(tag) {}
75 explicit RequestMesg(
const Teuchos::RCP<const Teuchos::ParameterList>& pl) : paramList_(pl) {
76 fromParameterList(*paramList_);
80 virtual ~RequestMesg() {}
83 std::string getName()
const {
return name_; }
86 unsigned int getTag()
const {
return tag_; }
89 const Teuchos::RCP<const Teuchos::ParameterList> getParameterList()
const {
90 return paramList_.getConst();
94 void fromParameterList(
const Teuchos::ParameterList& pl) {
95 name_ =
"Parameter List";
97 if (pl.isParameter(
"Name")) name_ = pl.get<std::string>(
"Name");
98 if (pl.isParameter(
"Tag")) tag_ = pl.get<
unsigned int>(
"Tag");
103 Teuchos::RCP<const Teuchos::ParameterList> paramList_;
107 inline std::ostream& operator<<(std::ostream& os,
const Teko::RequestMesg& rm) {
108 os <<
"RequestMesg <"
109 <<
"name = \"" << rm.getName() <<
"\", "
110 <<
"tag = " << rm.getTag() <<
">";