9 #include <fei_macros.hpp> 11 #include <test_utils/test_Factory_helper.hpp> 13 #include <test_utils/LibraryFactory.hpp> 15 #include <fei_Factory_Trilinos.hpp> 17 #include <snl_fei_Factory.hpp> 19 #include <fei_Vector_Impl.hpp> 21 #include <fei_Matrix_Impl.hpp> 24 #define fei_file "test_Factory_helper.cpp" 25 #include <fei_ErrMacros.hpp> 27 int test_Factory_helper::dyncastMatrix(
fei::Matrix* matrix,
30 std::string sname(libname);
32 if (sname ==
"TEST_LSC") {
36 if (smatrix2 == NULL) {
37 fei::console_out() <<
"dynamic_cast<fei::Matrix_Impl<LinearSystemCore>*> failed"<<FEI_ENDL;
42 if (sname ==
"Aztec") {
43 #ifdef HAVE_FEI_AZTECOO 46 if (smatrix == NULL) {
47 fei::console_out() <<
"dynamic_cast<fei::Matrix_Impl<LinearSystemCore>*> failed"<<FEI_ENDL;
51 fei::console_out() <<
"libname==Aztec but HAVE_FEI_AZTECOO not defined."<<FEI_ENDL;
56 if (sname ==
"Trilinos") {
57 #ifdef HAVE_FEI_EPETRA 60 if (smatrix == NULL) {
61 fei::console_out() <<
"dynamic_cast<fei::Matrix_Impl<Epetra_CrsMatrix>*> failed"<<FEI_ENDL;
65 fei::console_out() <<
"libname==Trilinos but HAVE_FEI_EPETRA not defined."<<FEI_ENDL;
73 int test_Factory_helper::dyncastVector(
fei::Vector* vector,
76 std::string sname(libname);
77 if (sname ==
"TEST_LSC") {
80 if (svector == NULL) {
81 fei::console_out() <<
"dynamic_cast<fei::Vector_Impl<LinearSystemCore>*> failed"<<FEI_ENDL;
86 if (sname ==
"Aztec") {
87 #ifdef HAVE_FEI_AZTECOO 90 if (svector == NULL) {
91 fei::console_out() <<
"dynamic_cast<fei::Vector_Impl<LinearSystemCore>*> failed"<<FEI_ENDL;
95 fei::console_out() <<
"libname==Aztec but HAVE_FEI_AZTECOO not defined."<<FEI_ENDL;
100 if (sname ==
"Trilinos") {
101 #ifdef HAVE_FEI_EPETRA 104 if (svector == NULL) {
105 fei::console_out() <<
"dynamic_cast<fei::Vector_Impl<Epetra_MultiVector>*> failed"<<FEI_ENDL;
109 fei::console_out() <<
"libname==Trilinos but HAVE_FEI_EPETRA not defined."<<FEI_ENDL;
std::ostream & console_out()