Added file header support

This commit is contained in:
Puasonych 2018-05-22 08:27:34 +03:00
parent d6b700eaf2
commit bd3f8a3b92

View File

@ -57,10 +57,23 @@ struct default_step_file_name_calculator
}
};
/*
* The default action when recording starts
*/
struct default_action_when_recording_starts
{
// Write the start message to the beginning of the file and return its size
static size_t beginning_of_file()
{
return 0;
}
};
/*
* Rotating file sink based on size and a specified time step
*/
template<class Mutex, class FileNameCalc = default_step_file_name_calculator>
template<class Mutex, class FileNameCalc = default_step_file_name_calculator,
class RecordingStartActions = default_action_when_recording_starts>
class step_file_sink SPDLOG_FINAL : public base_sink<Mutex>
{
public:
@ -113,7 +126,7 @@ protected:
std::tie(_current_filename, std::ignore) = FileNameCalc::calc_filename(_base_filename, _tmp_ext);
_file_helper.open(_current_filename);
_tp = _next_tp();
_current_size = msg.formatted.size();
_current_size = msg.formatted.size() + RecordingStartActions::beginning_of_file();
}
_file_helper.write(msg);
}