9 #if !defined(__AM_CSVSTREAM_H)
10 #define __AM_CSVSTREAM_H
12 #if !defined(__AM_HISTORYPVCONF_H)
13 #include "am_historypvconf.h"
16 #if !defined(__LINKLIST_H)
25 #include "unicodestringhandler.h"
27 #include "globals_enums.h"
30 #define EXCEL_DAYS_TO_1970 25569.0
33 #define AM_CSV_FNAME_EXTN ".csv"
34 #define AM_CSV_FNAME_EXTN_L 4
45 bool bInclColumnHeadings;
46 bool bUseTabDelimiter;
65 static const sint32 WRITE_OK;
72 const char * serverName,
73 const char * userName,
74 const char * password,
92 const char * pBatchName,
95 char ** pRetFileNameEndTime );
107 void close(
const char * fileName,
108 char * pFileNameEndTime,
110 uint32 historyFileTime );
119 const char * getDecimalChars();
128 char * getPvStatusText( uint8 status );
137 uint8 getTimeFormat();
146 const char * getServerName();
155 const char * getUserName();
164 const char * getPassword();
173 const char * getDirName();
182 uint32 getMaxFileSize();
202 const char * pInstrSerNo );
220 sint32 writeValues( time_t utcTimeStamp,
232 sint32 writeMessage( time_t utcTimeStamp,
234 const char * pText );
244 char * getTranslatedItemText( uint8 enumeration_id, uint8 enumeration_no );
254 char * getTranslatedGlobalsItemText( int8 enumeration_id, uint8 enumeration_no );
257 void determineSeparators();
259 char * fileName(
const char * groupName,
260 const char * pBatchName,
261 time_t batchStartTime,
262 time_t batchStopTime,
264 char ** pRetFileNameEndTime );
266 char * fileNameTime( time_t timestamp,
267 char * pRetFileNameTime );
269 sint32 writeTimestamp( time_t utcTimeStamp,
272 static const char * fileNameNoTime;
277 const char * m_ServerName;
278 const char * m_UserName;
279 const char * m_Password;
280 const char * m_DirName;
281 uint32 m_MaxFileSize;
298 inline const char * AM_CsvStream::getDecimalChars()
300 return m_pSetup->decimalChars;
310 inline char * AM_CsvStream::getPvStatusText( uint8 status )
312 return getTranslatedGlobalsItemText(GLOBALS_G_CHANNEL_STATUS_E_ER, status);
322 inline uint8 AM_CsvStream::getTimeFormat()
324 return m_pSetup->options.timeFormat;
334 inline const char * AM_CsvStream::getServerName()
346 inline const char * AM_CsvStream::getUserName()
358 inline const char * AM_CsvStream::getPassword()
370 inline const char * AM_CsvStream::getDirName()
382 inline uint32 AM_CsvStream::getMaxFileSize()
384 return m_MaxFileSize;
394 inline FILE * AM_CsvStream::getFp()
407 inline char * AM_CsvStream::getTranslatedItemText( uint8 enumeration_id, uint8 enumeration_no )
409 unicode_p t = PA_Get_Enum_String(enumeration_id, enumeration_no);
411 return unicode_toAscii((
char*)m_tmpStr, t);
422 inline char * AM_CsvStream::getTranslatedGlobalsItemText( int8 enumeration_id, uint8 enumeration_no )
424 unicode_p t = PA_Get_Globals_Enum_String(enumeration_id, enumeration_no);
426 return unicode_toAscii((
char*)m_tmpStr, t);
Definition: am_historyxorpv.h:16
Definition: am_csvstream.h:49
Definition: am_archiver.h:90
Definition: am_csvstream.h:62
Definition: am_csvstream.h:39