OpenRTM-aist
2.1.0
Toggle main menu visibility
読み取り中…
検索中…
一致する文字列を見つけられません
LogstreamFile.h
[詳解]
1
// -*- C++ -*-
17
18
#ifndef RTC_LOGSTREAMFILE_H
19
#define RTC_LOGSTREAMFILE_H
20
21
#include <string>
22
#include <fstream>
23
#include <iostream>
24
#include <coil/stringutil.h>
25
#include <
rtm/LogstreamBase.h
>
26
27
namespace
RTC
28
{
42
class
FileStreamBase
:
public
coil::LogStreamBuffer
43
{
44
public
:
62
FileStreamBase
() =
default
;
78
~FileStreamBase
()
override
=
default
;
104
void
header
(
int
level,
const
std::string &name,
const
std::string &date,
bool
es_enable =
false
);
105
118
void
flush
()
override
;
136
void
enableEscapeSequence
();
154
void
disableEscapeSequence
();
155
182
void
write
(
int
level,
const
std::string &name,
const
std::string &date,
const
std::string &mes)
override
;
183
184
protected
:
185
std::basic_ostream<char> *
m_stream
;
186
bool
m_esEnable
;
187
};
188
202
class
StdoutStream
:
public
FileStreamBase
203
{
204
public
:
222
StdoutStream
();
238
~StdoutStream
()
override
;
239
240
241
242
};
243
257
class
StderrStream
:
public
FileStreamBase
258
{
259
public
:
277
StderrStream
();
293
~StderrStream
()
override
;
294
295
296
297
};
298
312
class
FileStream
:
public
FileStreamBase
313
{
314
public
:
336
FileStream
(
const
std::string& filename);
352
~FileStream
()
override
;
368
bool
is_open
();
383
void
close
();
384
385
386
private
:
387
std::filebuf m_fileout;
388
};
389
413
class
LogstreamFile
414
:
public
LogstreamBase
415
{
416
public
:
428
LogstreamFile
();
429
441
~LogstreamFile
()
override
;
442
464
bool
init
(
const
coil::Properties& prop)
override
;
465
485
coil::LogStreamBuffer*
getStreamBuffer
()
override
;
486
487
protected
:
488
static
coil::vstring
s_files
;
489
std::string
m_fileName
;
490
FileStreamBase
*
m_stdout
{
nullptr
};
491
FileStream
*
m_fileout
{
nullptr
};
492
};
493
}
// namespace RTC
494
495
extern
"C"
496
{
497
void
LogstreamFileInit
();
498
}
499
500
#endif
// RTC_LOGSTREAMFILE_H
LogstreamBase.h
Logger stream buffer base class
LogstreamFileInit
void LogstreamFileInit()
RTC::FileStreamBase
ファイル出力のストリーミングバッファ基底クラス
Definition
LogstreamFile.h:43
RTC::FileStreamBase::m_stream
std::basic_ostream< char > * m_stream
Definition
LogstreamFile.h:185
RTC::FileStreamBase::~FileStreamBase
~FileStreamBase() override=default
デストラクタ
RTC::FileStreamBase::m_esEnable
bool m_esEnable
Definition
LogstreamFile.h:186
RTC::FileStreamBase::disableEscapeSequence
void disableEscapeSequence()
エスケープシーケンスを無効にする
RTC::FileStreamBase::FileStreamBase
FileStreamBase()=default
コンストラクタ
RTC::FileStreamBase::enableEscapeSequence
void enableEscapeSequence()
エスケープシーケンスを有効にする
RTC::FileStreamBase::header
void header(int level, const std::string &name, const std::string &date, bool es_enable=false)
ログメッセージのヘッダーの設定
RTC::FileStreamBase::write
void write(int level, const std::string &name, const std::string &date, const std::string &mes) override
ログの出力
RTC::FileStreamBase::flush
void flush() override
標準出力のバッファのフラッシュ
RTC::FileStream
ファイル出力のストリーミングラッパークラス
Definition
LogstreamFile.h:313
RTC::FileStream::~FileStream
~FileStream() override
デストラクタ
RTC::FileStream::is_open
bool is_open()
ファイルを開くことに成功したかの確認
RTC::FileStream::FileStream
FileStream(const std::string &filename)
コンストラクタ
RTC::FileStream::close
void close()
ファイルを閉じる
RTC::LogstreamBase
Definition
LogstreamBase.h:57
RTC::LogstreamFile::getStreamBuffer
coil::LogStreamBuffer * getStreamBuffer() override
basic_strembuf へのポインタを返す
RTC::LogstreamFile::~LogstreamFile
~LogstreamFile() override
デストラクタ
RTC::LogstreamFile::s_files
static coil::vstring s_files
Definition
LogstreamFile.h:488
RTC::LogstreamFile::m_fileout
FileStream * m_fileout
Definition
LogstreamFile.h:491
RTC::LogstreamFile::LogstreamFile
LogstreamFile()
コンストラクタ
RTC::LogstreamFile::m_fileName
std::string m_fileName
Definition
LogstreamFile.h:489
RTC::LogstreamFile::init
bool init(const coil::Properties &prop) override
設定初期化
RTC::LogstreamFile::m_stdout
FileStreamBase * m_stdout
Definition
LogstreamFile.h:490
RTC::StderrStream::StderrStream
StderrStream()
コンストラクタ
RTC::StderrStream::~StderrStream
~StderrStream() override
デストラクタ
RTC::StdoutStream::StdoutStream
StdoutStream()
コンストラクタ
RTC::StdoutStream::~StdoutStream
~StdoutStream() override
デストラクタ
RTC
RTコンポーネント
構築:
1.17.0