本文整理汇总了C++中lem::Stream::write_int方法的典型用法代码示例。如果您正苦于以下问题:C++ Stream::write_int方法的具体用法?C++ Stream::write_int怎么用?C++ Stream::write_int使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类lem::Stream
的用法示例。
在下文中一共展示了Stream::write_int方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: SaveBin
void PatternConstraint::SaveBin( lem::Stream &bin ) const
{
bin.write( &from_marker, sizeof(from_marker) );
bin.write( &to_marker, sizeof(to_marker) );
bin.write_int( from_coord_id );
bin.write_int( to_coord_id );
bin.write( &constraint_func, sizeof(constraint_func) );
return;
}
示例2: SaveBin
void SG_calibrator::SaveBin(lem::Stream &bin) const
{
bin.write_int(freq_type);
bin.write(&word, sizeof(word));
bin.write_int(id_class);
coords.SaveBin(bin);
bin.write_int(freq);
return;
}
示例3: SaveBin
/**************************************************
Сохраняет содержимое в указанном бинарном потоке.
***************************************************/
void Word_Form::SaveBin( lem::Stream &bin ) const
{
bool p = !!name;
bin.write_bool( p );
if( p )
name->SaveBin(bin);
p = !!normalized;
bin.write_bool(p);
if(p)
normalized->SaveBin(bin);
// lexem_owner.SaveBin(bin);
// e_list.SaveBin(bin);
pair.SaveBin(bin);
// bin.write( &tfield, sizeof(tfield) );
bin.write( &entry_key, sizeof(entry_key) );
bin.write( &val, sizeof(val) );
bin.write( &score, sizeof(score) );
// bin.write( &icenter, sizeof(icenter) );
bin.write( &origin_pos, sizeof(origin_pos) );
bin.write_int( CastSizeToInt(alt.size()) );
for( lem::Container::size_type i=0; i<alt.size(); ++i )
alt[i]->SaveBin(bin);
return;
}
示例4: SaveBin
void LEMM_Compiler::SaveBin( lem::Stream & bin ) const
{
bin.write_bool(true);
const lem::uint32_t model_flags = 0x0000000E;
bin.write( &model_flags, sizeof(model_flags) );
bin.write_int( suffix_len );
bin.write_int( CastSizeToInt(suffices.size()) );
for( lem::Container::size_type i=0; i<suffices.size(); ++i )
{
bin.write( &suffices[i].first, sizeof(suffices[i].first) );
lem::Save_Packed(suffices[i].second,bin);
}
bin.write_int( CastSizeToInt(words.size()) );
for( lem::Container::size_type i=0; i<words.size(); ++i )
{
bin.write( &words[i].first, sizeof(words[i].first) );
lem::Save_Packed(words[i].second,bin);
}
bin.write_int( CastSizeToInt(ngram2.size()) );
for( lem::Container::size_type i=0; i<ngram2.size(); ++i )
bin.write( &ngram2[i], sizeof(ngram2[i]) );
bin.write_int( CastSizeToInt(ngram2_1.size()) );
for( lem::Container::size_type i=0; i<ngram2_1.size(); ++i )
bin.write( &ngram2_1[i], sizeof(ngram2_1[i]) );
bin.write_int( CastSizeToInt(ngram3.size()) );
for( lem::Container::size_type i=0; i<ngram3.size(); ++i )
bin.write( &ngram3[i], sizeof(ngram3[i]) );
bin.write_int( CastSizeToInt(ngram3_1.size()) );
for( lem::Container::size_type i=0; i<ngram3_1.size(); ++i )
bin.write( &ngram3_1[i], sizeof(ngram3_1[i]) );
bin.write_int( CastSizeToInt(ngram3_2.size()) );
for( lem::Container::size_type i=0; i<ngram3_2.size(); ++i )
bin.write( &ngram3_2[i], sizeof(ngram3_2[i]) );
bin.write_int( CastSizeToInt(ngram4.size()) );
for( lem::Container::size_type i=0; i<ngram4.size(); ++i )
bin.write( &ngram4[i], sizeof(ngram4[i]) );
return;
}
示例5: SaveBin
void TreeDimension::SaveBin( lem::Stream &bin ) const
{
bin.write( &name, sizeof(name) );
bin.write_int( CastSizeToInt(nodes.size()) );
for( lem::Container::size_type i=0; i<nodes.size(); ++i )
nodes[i]->SaveBin(bin);
return;
}
示例6: SaveBin
void ExportCoordFunction::SaveBin(lem::Stream & bin) const
{
bin.write_int(type);
}
示例7: SaveBin
void WordEntries_File::SaveBin(lem::Stream &bin) const
{
#if defined SOL_SAVEBIN
ml_ref.SaveBin(bin);
coord_ref.SaveBin(bin);
lookup_table.SaveBin(bin);
/*
// #if LEM_DEBUGGING==1
lem::mout->eol();
for( int kkk=0; kkk<lookup_table.lexem_slot.size(); ++kkk )
{
WordEntries_LookUpItem xxx = lookup_table.lexem_slot[kkk];
lem::mout->printf( "x[%d]=%d,%d ", kkk, xxx.start_index, xxx.len );
}
lem::mout->eol();
// #endif
*/
ientry.SaveBin(bin);
u_entry.SaveBin(bin);
ML_entry_key_list.SaveBin(bin);
ML_entry_lex_list.SaveBin(bin);
ML_entry_pre_list.SaveBin(bin);
bin.write(&max_ml_len, sizeof(max_ml_len));
bin.write(predefined_entry, sizeof(predefined_entry));
bin.write_int(CastSizeToInt(entry.size()));
lem::Stream::pos_type p1 = bin.tellp();
lem::Stream::pos_type epos_begin_pos = 0;
lem::Stream::pos_type entries_begin_pos = 0;
lem::Stream::pos_type end_pos = 0;
bin.write(&epos_begin_pos, sizeof(epos_begin_pos)); // сюда впишем позицию списка позиций статей
bin.write(&entries_begin_pos, sizeof(entries_begin_pos)); // а сюда - начало списка статей
bin.write(&end_pos, sizeof(end_pos)); // а сюда - позицию после лексикона, чтобы другие модули могли продолжить загрузку из бинарного файла
lem::MCollect<lem::Stream::pos_type> entry_pos_tmp;
entry_pos_tmp.resize(entry.size());
epos_begin_pos = bin.tellp();
entry_pos_tmp.SaveBin(bin);
lem::MCollect< std::pair<int, int> > key_to_index_tmp;
key_to_index_tmp.reserve(key_to_index.size());
for (std::map< int/*entry_key*/, int/*entry_index*/ >::const_iterator it = key_to_index.begin(); it != key_to_index.end(); ++it)
{
key_to_index_tmp.push_back(*it);
}
key_to_index_tmp.SaveBin(bin);
lem::MCollect<Lexem> ML_fronts_tmp;
ML_fronts_tmp.reserve(ML_fronts.size());
for (std::set<Lexem>::const_iterator it = ML_fronts.begin(); it != ML_fronts.end(); ++it)
ML_fronts_tmp.push_back(*it);
ML_fronts_tmp.SaveBin(bin);
lem::MCollect<Lexem> ML_ML_tmp;
ML_ML_tmp.reserve(ML_ML.size());
for (std::set<Lexem>::const_iterator it = ML_ML.begin(); it != ML_ML.end(); ++it)
ML_ML_tmp.push_back(*it);
ML_ML_tmp.SaveBin(bin);
entries_begin_pos = bin.tellp();
for (lem::Container::size_type i = 0; i < entry.size(); i++)
{
entry_pos_tmp[i] = bin.tellp();
entry[i]->SaveBin(bin);
}
end_pos = bin.tellp();
bin.seekp(p1);
bin.write(&epos_begin_pos, sizeof(epos_begin_pos));
bin.write(&entries_begin_pos, sizeof(entries_begin_pos));
bin.write(&end_pos, sizeof(end_pos));
entry_pos_tmp.SaveBin(bin);
bin.seekp(end_pos);
#endif
return;
}