42 #ifndef __Teuchos_MatrixMarket_SymmetrizingGraphAdder_hpp 
   43 #define __Teuchos_MatrixMarket_SymmetrizingGraphAdder_hpp 
   52 #if ! defined(TRILINOS_UNUSED_FUNCTION) 
   53 #  if defined(__GNUC__) || (defined(__INTEL_COMPILER)  && !defined(_MSC_VER)) 
   54 #    define TRILINOS_UNUSED_FUNCTION __attribute__((__unused__)) 
   55 #  elif defined(__clang__) 
   56 #    if __has_attribute(unused) 
   57 #      define TRILINOS_UNUSED_FUNCTION __attribute__((__unused__)) 
   59 #      define TRILINOS_UNUSED_FUNCTION 
   60 #    endif // Clang has 'unused' attribute 
   61 #  elif defined(__IBMCPP__) 
   65 #    define TRILINOS_UNUSED_FUNCTION 
   66 #  else // some other compiler 
   67 #    define TRILINOS_UNUSED_FUNCTION 
   69 #endif // ! defined(TRILINOS_UNUSED_FUNCTION) 
   73   namespace MatrixMarket {
 
   94     template<
class AdderType>
 
  107                          const std::string& symmType) :
 
  110         skew_ (isSkew (symmType))
 
  118         AdderType& theAdder = *
adder_;
 
  130           theAdder (j, i, 
false);
 
  153 #endif // __Teuchos_MatrixMarket_SymmetrizingGraphAdder_hpp 
AdderType::index_type index_type
The type of indices of the sparse graph. 
bool skew_
Whether to negate when symmetrizing. 
void operator()(const index_type i, const index_type j)
Add entry (i,j), and optionally symmetrize. 
bool symmetrize_
Whether to do symmetrization at all. 
Teuchos::RCP< AdderType > adder_
The wrapped AdderType instance. 
SymmetrizingGraphAdder(const Teuchos::RCP< AdderType > &adder, const std::string &symmType)
Constructor. 
Teuchos::RCP< AdderType > getAdder() const 
Persisting non-const view of the underlying adder object. 
Defines basic traits for the scalar field type. 
Definition of Teuchos::as, for conversions between types. 
Adds entries with optional symmetry to a sparse graph.