@@ -49,16 +49,7 @@ TextWriter2::
49
49
TextWriter2 (const String& filename)
50
50
: m_p(new Impl())
51
51
{
52
- open (filename);
53
- }
54
-
55
- /* ---------------------------------------------------------------------------*/
56
- /* ---------------------------------------------------------------------------*/
57
-
58
- TextWriter2::
59
- TextWriter2 ()
60
- : m_p(new Impl())
61
- {
52
+ _open (filename);
62
53
}
63
54
64
55
/* ---------------------------------------------------------------------------*/
@@ -74,7 +65,7 @@ TextWriter2::
74
65
/* ---------------------------------------------------------------------------*/
75
66
76
67
void TextWriter2::
77
- open (const String& filename)
68
+ _open (const String& filename)
78
69
{
79
70
m_p->m_filename = filename;
80
71
std::ios::openmode mode = std::ios::out | std::ios::binary;
@@ -90,7 +81,7 @@ open(const String& filename)
90
81
void TextWriter2::
91
82
write (Span<const std::byte> values)
92
83
{
93
- _binaryWrite (values. data (), values. size () );
84
+ _binaryWrite (values);
94
85
}
95
86
96
87
/* ---------------------------------------------------------------------------*/
@@ -120,22 +111,25 @@ fileOffset()
120
111
return m_p->m_ostream .tellp ();
121
112
}
122
113
114
+ /* ---------------------------------------------------------------------------*/
115
+ /* ---------------------------------------------------------------------------*/
116
+
123
117
void TextWriter2::
124
- _binaryWrite (const void * bytes, Int64 len )
118
+ _binaryWrite (Span< const std::byte> values )
125
119
{
126
120
std::ostream& o = m_p->m_ostream ;
127
121
// cout << "** BINARY WRITE len=" << len << " deflater=" << m_data_compressor << '\n';
128
122
IDataCompressor* d = m_p->m_data_compressor .get ();
129
- if (d && len > d->minCompressSize ()) {
123
+ if (d && values. size () > d->minCompressSize ()) {
130
124
UniqueArray<std::byte> compressed_values;
131
- m_p->m_data_compressor ->compress (Span< const std::byte>(( const std::byte*)bytes, len) , compressed_values);
125
+ m_p->m_data_compressor ->compress (values , compressed_values);
132
126
Int64 compressed_size = compressed_values.largeSize ();
133
- o. write (( const char *) &compressed_size, sizeof (Int64 ));
134
- o. write (( const char *)compressed_values. data (), compressed_size );
127
+ binaryWrite (o, asBytes (SmallSpan<Int64>( &compressed_size, 1 ) ));
128
+ binaryWrite (o, compressed_values );
135
129
// cout << "** BINARY WRITE len=" << len << " compressed_len=" << compressed_size << '\n';
136
130
}
137
131
else
138
- o. write (( const char *)bytes, len );
132
+ binaryWrite (o, values );
139
133
}
140
134
141
135
/* ---------------------------------------------------------------------------*/
0 commit comments