Rhino C++ API  7.21
Public Member Functions | Public Attributes | List of all members
ON_3DM_BIG_CHUNK Class Reference

#include <opennurbs_archive.h>

Public Member Functions

 ON_3DM_BIG_CHUNK ()=default
 ON_3DM_BIG_CHUNK (const ON_3DM_BIG_CHUNK &)=default
 ~ON_3DM_BIG_CHUNK ()=default
ON__UINT64 Length () const
ON__UINT64 LengthRemaining (ON__UINT64 current_position) const
ON_3DM_BIG_CHUNKoperator= (const ON_3DM_BIG_CHUNK &)=default
ON__UINT64 SizeofCRC () const

Public Attributes

ON__INT64 m_big_value =0
ON__UINT8 m_bLongChunk =0
 true if chunk is a long chunk and m_big_value is a length. More...
ON__UINT16 m_crc16 =0
 current 16 bit CRC value More...
ON__UINT32 m_crc32 =0
 current 32 bit CRC value More...
ON__UINT8 m_do_crc16 =0
 CRC settings. More...
ON__UINT8 m_do_crc32 =0
 true (1) if we are calculating 32 bit CRC More...
ON__UINT64 m_end_offset =0
ON__UINT64 m_start_offset =0
ON__UINT32 m_typecode =0

Constructor & Destructor Documentation

◆ ON_3DM_BIG_CHUNK() [1/2]




◆ ON_3DM_BIG_CHUNK() [2/2]


Member Function Documentation

◆ Length()

ON__UINT64 ON_3DM_BIG_CHUNK::Length ( ) const

offset (file position) of the byte immediately after the farthest successful write. When reading 3dm archives, this the archive offset of the first byte after the chunk's information content. When reading, a 16 bit or 32 bit CRC can follow the chunk information content. During ordinary reading and writing, valid seek target positions satisfy m_start_offset <= seek target pos <= m_end_offset. Returns: Number of bytes in the chunk, including bytes used to store CRC values. 0 for short chunks. 0 for chunks currently being written. Remarks: For chunks being read, m_start_offset + Length() = m_end_offset + SizeofCRC().

◆ LengthRemaining()

ON__UINT64 ON_3DM_BIG_CHUNK::LengthRemaining ( ON__UINT64  current_position) const

Parameters: current_position - [in] Value of ON_BinaryArchive.CurrentPosition()

Returns: Number of bytes that can be read when ON_BinaryArchive ReadMode() is true.

◆ operator=()

ON_3DM_BIG_CHUNK& ON_3DM_BIG_CHUNK::operator= ( const ON_3DM_BIG_CHUNK )

◆ SizeofCRC()

ON__UINT64 ON_3DM_BIG_CHUNK::SizeofCRC ( ) const

Returns: 0: no CRC 4: 32 bit CRC (4 bytes) 2: 16 bit CRC (2 bytes)

Member Data Documentation

◆ m_big_value

ON__INT64 ON_3DM_BIG_CHUNK::m_big_value =0

◆ m_bLongChunk

ON__UINT8 ON_3DM_BIG_CHUNK::m_bLongChunk =0

true if chunk is a long chunk and m_big_value is a length.

◆ m_crc16

ON__UINT16 ON_3DM_BIG_CHUNK::m_crc16 =0

current 16 bit CRC value

◆ m_crc32

ON__UINT32 ON_3DM_BIG_CHUNK::m_crc32 =0

current 32 bit CRC value

◆ m_do_crc16

ON__UINT8 ON_3DM_BIG_CHUNK::m_do_crc16 =0

CRC settings.

true (1) if we are calculating 16 bit CRC

◆ m_do_crc32

ON__UINT8 ON_3DM_BIG_CHUNK::m_do_crc32 =0

true (1) if we are calculating 32 bit CRC

◆ m_end_offset

ON__UINT64 ON_3DM_BIG_CHUNK::m_end_offset =0

archive offset (file position) of first byte of chunk information conent. When writing 3dm archives, this is the archive

◆ m_start_offset

ON__UINT64 ON_3DM_BIG_CHUNK::m_start_offset =0

When reading or writing 3dm archives, this is the

◆ m_typecode

ON__UINT32 ON_3DM_BIG_CHUNK::m_typecode =0