2023-08-26 14:23:33 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								<!DOCTYPE html> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< link  rel = "stylesheet"  type = "text/css"  href = "CKStateChunk.css"  / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< script  src = "CKStateChunk.js" > < / script > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< body > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < h1 > CKStateChunk Data Structure< / h1 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        NOTE:< br  / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        "Fill Zero" mean that this field still is existed but you should fill zero for it.< br  / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        "Skip" mean that this field is entirely not existed. You should not consider it anymore.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < h2 > Buffer Format< / h2 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        This section will introduce the buffer format of CKStateChunk.< br  / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        Buffer format is the real format of CKStateChunk stored in file.< br  / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < code > CKStateChunk::ConvertFromBuffer< / code >  and < code > CKStateChunk::ConvertToBuffer< / code >  can convert between CKStateChunk and its buffer format.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < p > According to the value of CK_STATECHUNK_CHUNKVERSION, we split it into 3 different format.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < ul > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < li > value <  CHUNK_VERSION2: Very Old Format< / li > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < li > value = CHUNK_VERSION2: Old Format< / li > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < li > value >  CHUNK_VERSION2: New Format< / li > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < / ul > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        The unit of m_DataDwSize is CKDWORD(uint32), not char(uint8).< br  / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        The core data of CKStateChunk is aligned with 4 byte boundary. so this is the reason why the unit of
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        m_DataDwSize is CKDWORD.< br  / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        Every reading and writing of m_pData should notice this unit issue.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < h3 > Very Old Format< / h3 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "buf-fmt-vold-DataVersion" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint16 m_DataVersion< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The type of m_DataVersion is CK_STATECHUNK_DATAVERSION.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "buf-fmt-vold-ChunkVersion" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint16 m_ChunkVersion< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The type of m_ChunkVersion is CK_STATECHUNK_CHUNKVERSION.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "buf-fmt-vold-ClassId" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32 m_ClassId< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The type of m_ClassId is CK_CLASSID.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "buf-fmt-vold-DataDwSize" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32 m_DataDwSize< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The size of CKStateChunk core data.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "buf-fmt-vold-ObjectListSize" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32 m_ObjectListSize< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The size of object list.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "buf-fmt-vold-ChunkListSize" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32 m_ChunkListSize< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The size of chunk list< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "buf-fmt-vold-pData" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32[] m_pData< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The core data. Its length is indicated by m_DataDwSize.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "buf-fmt-vold-ObjectList" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32[] m_ObjectList< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The object list. Its length is indicated by m_ObjectListSize.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "buf-fmt-vold-ChunkList" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32[] m_ChunkList< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The chunk list. Its length is indicated by m_ChunkListSize.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < / tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < / table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < h3 > Old Format< / h3 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "buf-fmt-vold-DataVersion" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "buf-fmt-vold-ChunkVersion" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "buf-fmt-vold-ClassId" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "buf-fmt-vold-DataDwSize" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "buf-fmt-vold-ObjectListSize" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "buf-fmt-vold-ChunkListSize" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32 m_ManagerListSize< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The size of manager list< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "buf-fmt-vold-pData" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "buf-fmt-vold-ObjectList" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "buf-fmt-vold-ChunkList" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32[] m_ManagerList< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The manager list. Its length is indicated by m_ManagerListSize.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < / tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < / table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < h3 > New Format< / h3 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint8 m_DataVersion< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The type of m_DataVersion is CK_STATECHUNK_DATAVERSION.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint8 m_ClassId< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The type of m_ClassId is CK_CLASSID.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint8 m_ChunkVersion< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The type of m_ChunkVersion is CK_STATECHUNK_CHUNKVERSION.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint8 m_Options< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The type of m_Options is CK_STATECHUNK_CHUNKOPTIONS.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32 m_DataDwSize< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The size of CKStateChunk core data.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32[] m_pData< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The core data. Its length is indicated by m_DataDwSize.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                    < tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                        < td > < code > uint32 m_ObjectListSize< / code > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                        < td > < code > uint32[] m_ObjectList< / code > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                    < / tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < / table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > Enabled when m_Options has CHNK_OPTION_IDS. Skip if not have.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                    < tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                        < td > < code > uint32 m_ChunkListSize< / code > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                        < td > < code > uint32[] m_ChunkList< / code > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                    < / tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < / table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > Enabled when m_Options has CHNK_OPTION_CHN. Skip if not have.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                    < tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                        < td > < code > uint32 m_ManagerListSize< / code > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                        < td > < code > uint32[] m_ManagerList< / code > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                    < / tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < / table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > Enabled when m_Options has CHNK_OPTION_MAN. Skip if not have.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < / tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < / table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < h2 > Core Data Format< / h2 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        This section introduce the format of CKStateChunk core data, the format of < code > m_pData< / code > .< br  / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        The core data is filled by various Identifiers following various data.< br  / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        It is related to the function of CKStateChunk.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < table  id = "core-data-fmt-item" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                    < tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                        < td > < code > uint32 m_Identifier< / code > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                        < td > < code > uint32 m_NextIdentifier< / code > < / td > 
							 
						 
					
						
							
								
									
										
										
										
											2023-11-05 10:44:11 +08:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                        < td > < code > uint32[] m_Payload< / code > < / td > 
							 
						 
					
						
							
								
									
										
										
										
											2023-08-26 14:23:33 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								                    < / tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < / table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                    A single identifier area.< br  / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                    m_Identifier is the unique magic word of this identifier area for CKStateChunk locating this area.< br  / > 
							 
						 
					
						
							
								
									
										
										
										
											2023-11-05 10:44:11 +08:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                    m_NextIdentifier is a relative pointer. It point to the m_Identifier in next identifier area and is relative to the start of core data.< br  / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                    Thus, the size of each identifier area can be simply computed by the absolute diff to adjacent m_NextIdentifier (< code > *m_pData[pos] - pos< / code > )< br  / > 
							 
						 
					
						
							
								
									
										
										
										
											2023-08-26 14:23:33 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								                    m_Payload is the data of this identifier area and can be read or written by various CKStateChunk read write functions.< br  / > 
							 
						 
					
						
							
								
									
										
										
										
											2023-11-05 10:44:11 +08:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                    The minimum block size of m_Payload is uint32. It mean that all data must be aligned to uint32 boundary when saving.
							 
						 
					
						
							
								
									
										
										
										
											2023-08-26 14:23:33 +08:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								                < / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < table  class = "ph"  target = "core-data-fmt-item" > < / table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > ...< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > More identifier area as much as you like.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < table  class = "ph"  target = "core-data-fmt-item" > < / table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The last m_NextIdentifier should set to zero to indicate the end of the series of identifier area.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < / tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < / table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < h2 > SubChunk Format< / h2 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < p > According to the value of CK_STATECHUNK_CHUNKVERSION, we split it into 3 different format.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < ul > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < li > value <  CHUNK_VERSION1: Very Old Format< / li > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < li > value = CHUNK_VERSION1: Old Format< / li > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < li > value >  CHUNK_VERSION1: New Format< / li > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < / ul > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < h3 > Very Old Format< / h3 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "subchk-fmt-vold-SubChunkSize" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32 m_SubChunkSize< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The sum of all following variables' size.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "subchk-fmt-vold-ClassId" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32 m_ClassId< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The CK_CLASSID of sub chunk.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "subchk-fmt-vold-DataDwSize" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32 m_DataDwSize< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The size of core data in sub chunk.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > < i > uint32 Blank< / i > < / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > A blank. I don't know why< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "subchk-fmt-vold-pData" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32[] m_pData< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The core data. Its length is indicated by m_DataDwSize.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < / tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < / table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < h3 > Old Format< / h3 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "subchk-fmt-vold-SubChunkSize" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "subchk-fmt-vold-ClassId" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "subchk-fmt-old-DataVersion" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint16 m_DataVersion< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The CK_STATECHUNK_DATAVERSION of sub chunk.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "subchk-fmt-old-ChunkVersion" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint16 m_ChunkVersion< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The CK_STATECHUNK_CHUNKVERSION of sub chunk.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "subchk-fmt-vold-DataDwSize" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "subchk-fmt-old-ObjectListSize" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32 m_ObjectListSize< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The size of sub chunk object list.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "subchk-fmt-old-ChunkListSize" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32 m_ChunkListSize< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The size of sub chunk chunk list< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "subchk-fmt-vold-pData" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "subchk-fmt-old-ObjectList" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32[] m_ObjectList< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The object list. Its length is indicated by m_ObjectListSize.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  id = "subchk-fmt-old-ChunkList" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32[] m_ChunkList< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The chunk list. Its length is indicated by m_ChunkListSize.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < / tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < / table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < h3 > New Format< / h3 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "subchk-fmt-vold-SubChunkSize" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "subchk-fmt-vold-ClassId" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "subchk-fmt-old-DataVersion" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "subchk-fmt-old-ChunkVersion" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "subchk-fmt-vold-DataDwSize" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "subchk-fmt-old-ObjectListSize" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "subchk-fmt-old-ChunkListSize" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32 m_ManagerListSize< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The size of sub chunk manager list< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "subchk-fmt-vold-pData" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "subchk-fmt-old-ObjectList" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td  class = "ph"  target = "subchk-fmt-old-ChunkList" > < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < code > uint32[] m_ManagerList< / code > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                < p > The manager list. Its length is indicated by m_ManagerListSize.< / p > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            < / td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        < / tr > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    < / table > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / body >