Teuchos Package Browser (Single Doxygen Collection)
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
numerics
src
Teuchos_MatrixMarket_Banner.hpp
Go to the documentation of this file.
1
// @HEADER
2
// ***********************************************************************
3
//
4
// Tpetra: Templated Linear Algebra Services Package
5
// Copyright (2008) Sandia Corporation
6
//
7
// Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
8
// the U.S. Government retains certain rights in this software.
9
//
10
// Redistribution and use in source and binary forms, with or without
11
// modification, are permitted provided that the following conditions are
12
// met:
13
//
14
// 1. Redistributions of source code must retain the above copyright
15
// notice, this list of conditions and the following disclaimer.
16
//
17
// 2. Redistributions in binary form must reproduce the above copyright
18
// notice, this list of conditions and the following disclaimer in the
19
// documentation and/or other materials provided with the distribution.
20
//
21
// 3. Neither the name of the Corporation nor the names of the
22
// contributors may be used to endorse or promote products derived from
23
// this software without specific prior written permission.
24
//
25
// THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
26
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
28
// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
29
// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
30
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
31
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
32
// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
33
// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
34
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
35
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36
//
37
// Questions? Contact Michael A. Heroux (maherou@sandia.gov)
38
//
39
// ************************************************************************
40
// @HEADER
41
42
#ifndef __Teuchos_MatrixMarket_Banner_hpp
43
#define __Teuchos_MatrixMarket_Banner_hpp
44
45
#include <complex>
46
#include <ostream>
47
#include <string>
48
49
#include "
Teuchos_ConfigDefs.hpp
"
50
51
namespace
Teuchos
{
52
namespace
MatrixMarket
{
53
67
class
TEUCHOSNUMERICS_LIB_DLL_EXPORT
Banner
{
68
public
:
77
Banner
(
const
std::string& line,
const
bool
tolerant=
false
);
78
86
const
std::string&
objectType
()
const
{
return
objectType_
; }
87
93
const
std::string&
matrixType
()
const
{
return
matrixType_
; }
94
99
const
std::string&
dataType
()
const
{
return
dataType_
; }
100
122
const
std::string&
symmType
()
const
{
return
symmType_
; }
123
124
private
:
125
static
std::string validateObjectType (
const
std::string& objectType,
const
bool
tolerant=
false
);
126
static
std::string validateMatrixType (
const
std::string& matrixType,
const
bool
tolerant=
false
);
127
static
std::string validateDataType (
const
std::string& dataType,
const
bool
tolerant=
false
);
128
static
std::string validateSymmType (
const
std::string& symmType,
const
bool
tolerant=
false
);
129
131
void
setDefaults (
const
int
howMany);
132
133
std::string
objectType_
,
matrixType_
,
dataType_
,
symmType_
;
134
};
135
151
TEUCHOSNUMERICS_LIB_DLL_EXPORT
std::ostream&
operator<<
(std::ostream& out,
const
Banner
& banner);
152
153
}
// namespace MatrixMarket
154
}
// namespace Teuchos
155
156
#endif
// __Teuchos_MatrixMarket_Banner_hpp
Teuchos_ConfigDefs.hpp
Teuchos header file which uses auto-configuration information to include necessary C++ headers.
TEUCHOSNUMERICS_LIB_DLL_EXPORT
#define TEUCHOSNUMERICS_LIB_DLL_EXPORT
Definition
Teuchos_DLLExportMacro.h:39
Teuchos::MatrixMarket::Banner
Parse a Matrix Market banner line.
Definition
Teuchos_MatrixMarket_Banner.hpp:67
Teuchos::MatrixMarket::Banner::matrixType_
std::string matrixType_
Definition
Teuchos_MatrixMarket_Banner.hpp:133
Teuchos::MatrixMarket::Banner::objectType_
std::string objectType_
Definition
Teuchos_MatrixMarket_Banner.hpp:133
Teuchos::MatrixMarket::Banner::Banner
Banner(const std::string &line, const bool tolerant=false)
Definition
Teuchos_MatrixMarket_Banner.cpp:154
Teuchos::MatrixMarket::Banner::dataType_
std::string dataType_
Definition
Teuchos_MatrixMarket_Banner.hpp:133
Teuchos::MatrixMarket::Banner::symmType_
std::string symmType_
Definition
Teuchos_MatrixMarket_Banner.hpp:133
Teuchos::MatrixMarket::Banner::symmType
const std::string & symmType() const
Symmetric storage type.
Definition
Teuchos_MatrixMarket_Banner.hpp:122
Teuchos::MatrixMarket::Banner::objectType
const std::string & objectType() const
The object type.
Definition
Teuchos_MatrixMarket_Banner.hpp:86
Teuchos::MatrixMarket::Banner::dataType
const std::string & dataType() const
Data type of matrix entries.
Definition
Teuchos_MatrixMarket_Banner.hpp:99
Teuchos::MatrixMarket::Banner::matrixType
const std::string & matrixType() const
Storage type of the matrix.
Definition
Teuchos_MatrixMarket_Banner.hpp:93
Teuchos::MatrixMarket
Definition
Teuchos_MatrixMarket_assignScalar.hpp:51
Teuchos::MatrixMarket::operator<<
std::ostream & operator<<(std::ostream &out, const Banner &banner)
Definition
Teuchos_MatrixMarket_Banner.cpp:268
Teuchos
Definition
Teuchos_AbstractFactory.hpp:47
Generated by
1.17.0