Panzer  Version of the Day
Panzer_Response_IPCoordinates.hpp
Go to the documentation of this file.
1 #ifndef __Panzer_Response_IPCoordinates_hpp__
2 #define __Panzer_Response_IPCoordinates_hpp__
3 
4 #include <string>
5 
6 
7 #include <mpi.h> // need for comm
8 
9 #include "Teuchos_RCP.hpp"
10 
11 #include "Thyra_VectorBase.hpp"
12 #include "Thyra_VectorSpaceBase.hpp"
13 
14 #include "Epetra_Map.h"
15 #include "Epetra_Vector.h"
16 #include "Epetra_MpiComm.h"
17 
20 
21 
22 namespace panzer {
23 
28 template <typename EvalT>
30 public:
31  typedef typename EvalT::ScalarT ScalarT;
32 
33  Response_IPCoordinates(const std::string & responseName)
34  : ResponseBase(responseName) {}
35 
36  virtual void scatterResponse() {}
37 
38  virtual void initializeResponse()
39  {
40  if(coords==Teuchos::null)
41  coords = Teuchos::rcp(new std::vector<panzer::Traits::Residual::ScalarT>);
42 
43  coords->clear();
44  }
45 
47  { return coords; }
48 
50  { return coords; }
51 
52 private:
53  // hide these methods
56 
58 };
59 
60 }
61 
62 #endif
Teuchos::RCP< const std::vector< panzer::Traits::Residual::ScalarT > > getCoords() const
Response_IPCoordinates(const std::string &responseName)
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
Teuchos::RCP< std::vector< panzer::Traits::Residual::ScalarT > > getNonconstCoords()
Teuchos::RCP< std::vector< panzer::Traits::Residual::ScalarT > > coords
virtual void scatterResponse()
Prepare the response for access by the user (do global communication)