4 #include "tools/ToolsConfig.h"
5 #include "tools/AutoPtr.h"
6 #include "tools/NoCopy.h"
9 #include "storage/CtrlInfo.h"
10 #include "storage/RawValue.h"
11 #include "storage/Index.h"
37 const stdString &channel_name,
88 dbr_time_string*
write1(
size_t size,
92 void write2(dbr_time_string* buffer,
size_t size,
96 void write3(dbr_time_string* buffer);
100 dbr_time_string* buffer,
111 void write6(dbr_time_string* buffer,
size_t size,
120 const stdString channel_name;
125 size_t raw_value_size;
127 void makeDataFileName(
int serial, stdString &name);
128 DataFile *createNewDataFile(
size_t headroom);
133 void calc_next_buffer_size(
size_t start);
134 size_t next_buffer_size;
140 void addNewHeader(
bool new_ctrl_info);
void write4(DbrType type, DbrCount count, dbr_time_string *buffer, size_t size, const RawValue::Data *value, class DataFile *datafile, FileOffset offset)
write 4
Binary Data File.
Definition: DataFile.h:32
unsigned short DbrType
DbrType is used to hold dbr_time_xxx types.
Definition: RawValue.h:24
void write6(dbr_time_string *buffer, size_t size, class DataFile *datafile, FileOffset offset)
write 6
Meta-information for values: Units, limits, etc .
Definition: CtrlInfo.h:75
static FileOffset file_size_limit
Data file size limit.
Definition: DataWriter.h:69
epicsTime getLastStamp()
Returns the last time stamp in the archive.
Writes data to storage.
Definition: DataWriter.h:21
void write(DbrType type, DbrCount count, size_t size, const RawValue::Data *value, MemoryBuffer< dbr_time_string > &cvt_buffer, class DataFile *datafile, FileOffset offset)
Write a value to binary file.
unsigned short DbrCount
DbrCount is used to hold the array size of CA channels.
Definition: RawValue.h:27
DataWriter(Index &index, const stdString &channel_name, const CtrlInfo &ctrl_info, DbrType dbr_type, DbrCount dbr_count, double period, size_t num_samples)
Create a writer for the given index.
uint32_t FileOffset
FileOffset is used as a system independent type for, well, offsets into files.
Definition: StorageTypes.h:13
static stdString data_file_name_base
Base name of data files.
Definition: DataWriter.h:73
void write3(dbr_time_string *buffer)
write 3
void write2(dbr_time_string *buffer, size_t size, const RawValue::Data *value)
write 2
void write5b(class DataFile *datafile, FileOffset offset)
write 5b
void write5a(class DataFile *datafile, FileOffset offset)
write 5a
Base interface for the archiver's indices.
Definition: Index.h:16
dbr_time_string * write1(size_t size, MemoryBuffer< dbr_time_string > &cvt_buffer, class DataFile *datafile)
write 1
dbr_time_double Data
Type for accessing the raw data and its common fields.
Definition: RawValue.h:55
bool add(const RawValue::Data *data)
Add a value.