36#ifndef COLUMNDATAWRITER_HPP_
37#define COLUMNDATAWRITER_HPP_
42#include "AbstractDataWriter.hpp"
43#include "DataWriterVariable.hpp"
44#include "OutputFileHandler.hpp"
147 const std::string& rBaseName,
148 bool cleanDirectory=
true,
149 unsigned precision=8);
165 const std::string& rDimensionUnits);
177 const std::string& rDimensionUnits,
189 const std::string& rVariableUnits);
220 virtual void PutVariable(
int variableID,
double variableValue,
long dimensionPosition = -1);
225 virtual void Close();
void SetCommentForInfoFile(std::string comment)
void CreateInfoFile(const std::string &rFileName)
bool mIsFixedDimensionSet
void CreateFixedDimensionFile(const std::string &rFileName)
std::string mFileExtension
void CheckUnitsName(const std::string &rName)
std::string mUnlimitedDimensionUnits
std::string mUnlimitedDimensionName
const unsigned mFieldWidth
static const int FIXED_DIMENSION_VAR_ID
virtual void EndDefineMode()
bool mIsUnlimitedDimensionSet
virtual void AdvanceAlongUnlimitedDimension()
OutputFileHandler mOutputFileHandler
int DefineVariable(const std::string &rVariableName, const std::string &rVariableUnits)
int DefineUnlimitedDimension(const std::string &rDimensionName, const std::string &rDimensionUnits)
DataWriterVariable * mpFixedDimensionVariable
std::string mCommentForInfoFile
int mAncillaryRowStartPosition
DataWriterVariable * mpUnlimitedDimensionVariable
static const int UNLIMITED_DIMENSION_VAR_ID
long mUnlimitedDimensionPosition
bool mNeedAdvanceAlongUnlimitedDimension
out_stream mpCurrentOutputFile
out_stream mpCurrentAncillaryFile
std::string GetOutputDirectory()
void DoAdvanceAlongUnlimitedDimension()
int DefineFixedDimension(const std::string &rDimensionName, const std::string &rDimensionUnits, long dimensionSize)
void CheckVariableName(const std::string &rName)
std::string mFixedDimensionUnits
std::vector< DataWriterVariable > mVariables
std::string mFixedDimensionName
const unsigned mPrecision
virtual void PutVariable(int variableID, double variableValue, long dimensionPosition=-1)
virtual ~ColumnDataWriter()