Newer
Older
/*
* CTransport.h
*
* Created on: Oct 6, 2016
* Author: wfg
*/
#ifndef CTRANSPORT_H_
#define CTRANSPORT_H_
/// \cond EXCLUDE_FROM_DOXYGEN
#ifdef HAVE_MPI
#include <mpi.h>
#else
#include "public/mpidummy.h"
#endif
#include "core/CVariableBase.h"
namespace adios
{
class CTransport
{
public:
const std::string m_Method; ///< method name, must be defined in SSupport.h TransportMethods
const unsigned int m_Priority;
const unsigned int m_Iteration;
std::string m_FileName; ///< file name associated with a group that owns the transport
CTransport( const std::string method, const unsigned int priority, const unsigned int iteration,
m_Method( method ),
m_Priority( priority ),
m_Iteration( iteration ),
/**
* Open Output file accesing a mode
* @param fileName name of file
* @param accessMode r or read, w or write, a or append
*/
virtual void Open( const std::string fileName, const std::string accessMode ) = 0;
virtual void Write( const CVariableBase& variable ){ };
virtual void Close( ) = 0; //here think what needs to be passed
virtual void Finalize( );