当前位置: 首页>>代码示例>>C++>>正文


C++ SharedBuffer::readNextBAByte方法代码示例

本文整理汇总了C++中SharedBuffer::readNextBAByte方法的典型用法代码示例。如果您正苦于以下问题:C++ SharedBuffer::readNextBAByte方法的具体用法?C++ SharedBuffer::readNextBAByte怎么用?C++ SharedBuffer::readNextBAByte使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SharedBuffer的用法示例。


在下文中一共展示了SharedBuffer::readNextBAByte方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: innerLoad

void
SFDLoadableHeader::loadInitialHeader( SharedBuffer& buf )
{
   // Load initial header.
   const char* str = buf.readNextString();
   if ( strcmp( str, "storkafinger" ) != 0 ) {
      m_state = failed_to_load;
      m_nbrBytesToRead = 0;
      innerLoad();
      return;
   }

   // Version
   m_version = buf.readNextBAByte();
  
   // Encryption type.
   m_encryptionType = encryption_t( buf.readNextBAByte() );

   // Set the right xorbuffer depending on the encryption type.
   switch ( m_encryptionType ) {
      case ( no_encryption ) :
         m_xorBuffer = NULL;
         break;
      case ( uid_encryption ) :
         MC2_ASSERT( m_uidXorBuffer != NULL );
         m_xorBuffer = m_uidXorBuffer;
         break;
      case ( warez_encryption ) :
         MC2_ASSERT( m_warezXorBuffer != NULL );
         m_xorBuffer = m_warezXorBuffer;
         break;
   }

   // Header size.
   m_headerSize = buf.readNextBALong();

   // Rest of buffer is encrypted.
   if ( m_xorBuffer != NULL ) {
      m_fileHandler->setXorHelper( XorHelper( m_xorBuffer->getBufferAddress(),
                                             m_xorBuffer->getBufferSize(),
                                             buf.getCurrentOffset() ) );
   }

   m_nbrBytesToRead = m_headerSize;
   
   // Load the rest.
   m_state = loaded_initial_header;
   innerLoad();
}
开发者ID:VLjs,项目名称:Wayfinder-S60-Navigator,代码行数:49,代码来源:SFDLoadableHeader.cpp


注:本文中的SharedBuffer::readNextBAByte方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。