As reviewed in the File Architecture document, the beginning of an HSF file must contain a file header, which consists of a TK_Comment opcode with contents that are specially formatted to contain the file version information. The current version of the HSF specification is associated with version number 18.00. Therefore, the TK_Comment opcode representing the file header would be formatted as follows:
Byte | 0 | 1 | 2 |
|
4 | 5 | 6 | 7 | 8 | 9 |
Character | H | S | F | (space) | V | 1 | 8 | . | 0 | 0 |
The opcode definitions contain details on any version specific formatting. For example, if you wanted to write out an older version of the file, you would need to format all opcodes accordingly. If an opcode definition does not contain any version information, then there is only one version of the opcode and it is supported in all versions of the HSF specification.
The table below is provided so developers can quickly determine what opcodes have been added or modified in a specific release. To provide a valid HSF reader you must support all opcodes in all their various forms.
New |
|
Modified |
|
Unchanged |
|
Did
not Exist |
Opcode |
Version
1800 |
Version
1790 |
Version
1715 |
Version
1700 |
Version
1610 |
Version
1600 |
Version
1500 |
Version
1400 |
Version
1300 |
Version
1200 |
Version
1100 |
Version
1000 |
Version
900 |
Version
800 |
Version
700 |
Version
630 |
TKE_Area_Light |
||||||||||||||||
TKE_Bounding |
||||||||||||||||
TKE_Bounding_Info |
||||||||||||||||
TKE_Callback |
||||||||||||||||
TKE_Camera |
||||||||||||||||
TKE_Circle |
||||||||||||||||
TKE_Circular_Arc |
||||||||||||||||
TKE_Circular_Chord |
||||||||||||||||
TKE_Circular_Wedge |
||||||||||||||||
TKE_Clipping_Rectangle |
||||||||||||||||
TKE_Clipping_Region |
||||||||||||||||
TKE_Close_Segment |
||||||||||||||||
TKE_Color |
||||||||||||||||
TKE_Color_By_FIndex |
||||||||||||||||
TKE_Color_By_Index |
||||||||||||||||
TKE_Color_By_Index_16 |
||||||||||||||||
TKE_Color_By_Value |
||||||||||||||||
TKE_Color_Map |
||||||||||||||||
TKE_Color_RGB |
||||||||||||||||
TKE_Comment |
||||||||||||||||
TKE_Conditions |
||||||||||||||||
TKE_Cutting_Plane |
||||||||||||||||
TKE_Cylinder |
||||||||||||||||
TKE_Delete_Object |
||||||||||||||||
TKE_Dictionary |
||||||||||||||||
TKE_Dictionary_Locater |
||||||||||||||||
TKE_Distant_Light |
||||||||||||||||
TKE_Edge_Pattern |
||||||||||||||||
TKE_Edge_Weight |
||||||||||||||||
TKE_Ellipse |
||||||||||||||||
TKE_Elliptical_Arc |
||||||||||||||||
TKE_External_Reference |
||||||||||||||||
TKE_External_Reference_Unicode |
||||||||||||||||
TKE_Face_Pattern |
||||||||||||||||
TKE_File_Info |
||||||||||||||||
TKE_Font |
||||||||||||||||
TKE_Geometry_Attributes |
||||||||||||||||
TKE_Geometry_Options |
||||||||||||||||
TKE_Glyph_Definition |
||||||||||||||||
TKE_Grid |
||||||||||||||||
TKE_Handedness |
||||||||||||||||
TKE_Heuristics |
||||||||||||||||
TKE_Image |
||||||||||||||||
TKE_Include_Segment |
||||||||||||||||
TKE_Infinite_Line |
||||||||||||||||
TKE_Infinite_Ray |
||||||||||||||||
TKE_Line |
||||||||||||||||
TKE_Line_Pattern |
||||||||||||||||
TKE_Line_Style |
||||||||||||||||
TKE_Line_Weight |
||||||||||||||||
TKE_Local_Light |
||||||||||||||||
TKE_LOD |
||||||||||||||||
TKE_Marker_Size |
||||||||||||||||
TKE_Marker_Symbol |
||||||||||||||||
TKE_Mesh |
||||||||||||||||
TKE_Modelling_Matrix |
||||||||||||||||
TKE_NURBS_Curve |
||||||||||||||||
TKE_NURBS_Surface |
||||||||||||||||
TKE_Open_Segment |
||||||||||||||||
TKE_Pause |
||||||||||||||||
TKE_PolyCylinder |
||||||||||||||||
TKE_Polygon |
||||||||||||||||
TKE_Polyline |
||||||||||||||||
TKE_PolyPolyline |
||||||||||||||||
TKE_Priority |
||||||||||||||||
TKE_Reference |
||||||||||||||||
TKE_Rendering_Options |
||||||||||||||||
TKE_Renumber_Key_Global |
||||||||||||||||
TKE_Renumber_Key_Local |
||||||||||||||||
TKE_Reopen_Segment |
||||||||||||||||
TKE_Repeat_Object |
||||||||||||||||
TKE_Selectability |
||||||||||||||||
TKE_Shell |
||||||||||||||||
TKE_Sphere |
||||||||||||||||
TKE_Spot_Light |
||||||||||||||||
TKE_Start_User_Data |
||||||||||||||||
TKE_Start_Compression |
||||||||||||||||
TKE_Stop_User_Data |
||||||||||||||||
TKE_Stop_Compression |
||||||||||||||||
TKE_Style_Segment |
||||||||||||||||
TKE_Tag_Explicit |
||||||||||||||||
TKE_Tag_Implicit |
||||||||||||||||
TKE_Termination |
||||||||||||||||
TKE_Text |
||||||||||||||||
TKE_Text_With_Encoding |
||||||||||||||||
TKE_Text_Alignment |
||||||||||||||||
TKE_Text_Font |
||||||||||||||||
TKE_Text_Path |
||||||||||||||||
TKE_Text_Spacing |
||||||||||||||||
TKE_Texture |
||||||||||||||||
TKE_Texture_Matrix |
||||||||||||||||
TKE_Thumbnail |
||||||||||||||||
TKE_Unicode_Options |
||||||||||||||||
TKE_URL |
||||||||||||||||
TKE_User_Index |
||||||||||||||||
TKE_User_Value |
||||||||||||||||
TKE_View |
||||||||||||||||
TKE_Visibility |
||||||||||||||||
TKE_Window |
||||||||||||||||
TKE_Window_Frame |
||||||||||||||||
TKE_Window_Pattern |
||||||||||||||||
TKE_XML |