spym.io.rhksm4._sm4
¶
The main SM4 class that represents a RHK SM4 file, with all the necessary attributes and methods to read the binary data of the .sm4 files (RHK technology Inc.).
Module Contents¶
Classes¶
object_type |
Generic enumeration. |
page_data_type |
Generic enumeration. |
page_source_type |
Generic enumeration. |
page_type |
Generic enumeration. |
line_type |
Generic enumeration. |
image_type |
Generic enumeration. |
scan_type |
Generic enumeration. |
drift_option_type |
Generic enumeration. |
RHKsm4 |
This is the main class that represents a RHK SM4 file |
RHKObject |
Define an RHK object. |
RHKObjectContainer |
Represents a class containing RHK Objects |
RHKFileHeader |
Class representing the File Header. |
RHKPageIndexHeader |
Class representing the Page Index Header. |
RHKPageHeader |
Class representing the Page Header |
RHKPage |
Class representing Page |
-
class
spym.io.rhksm4._sm4.
object_type
¶ Bases:
enum.Enum
Generic enumeration.
Derive from this class to define new enumerations.
-
RHK_OBJECT_UNDEFINED
= 0¶
-
RHK_OBJECT_PAGE_INDEX_HEADER
= 1¶
-
RHK_OBJECT_PAGE_INDEX_ARRAY
= 2¶
-
RHK_OBJECT_PAGE_HEADER
= 3¶
-
RHK_OBJECT_PAGE_DATA
= 4¶
-
RHK_OBJECT_IMAGE_DRIFT_HEADER
= 5¶
-
RHK_OBJECT_IMAGE_DRIFT
= 6¶
-
RHK_OBJECT_SPEC_DRIFT_HEADER
= 7¶
-
RHK_OBJECT_SPEC_DRIFT_DATA
= 8¶
-
RHK_OBJECT_COLOR_INFO
= 9¶
-
RHK_OBJECT_STRING_DATA
= 10¶
-
RHK_OBJECT_TIP_TRACK_HEADER
= 11¶
-
RHK_OBJECT_TIP_TRACK_DATA
= 12¶
-
RHK_OBJECT_PRM
= 13¶
-
RHK_OBJECT_THUMBNAIL
= 14¶
-
RHK_OBJECT_PRM_HEADER
= 15¶
-
RHK_OBJECT_THUMBNAIL_HEADER
= 16¶
-
RHK_OBJECT_API_INFO
= 17¶
-
RHK_OBJECT_HISTORY_INFO
= 18¶
-
RHK_OBJECT_PIEZO_SENSITIVITY
= 19¶
-
RHK_OBJECT_FREQUENCY_SWEEP_DATA
= 20¶
-
RHK_OBJECT_SCAN_PROCESSOR_INFO
= 21¶
-
RHK_OBJECT_PLL_INFO
= 22¶
-
RHK_OBJECT_CH1_DRIVE_INFO
= 23¶
-
RHK_OBJECT_CH2_DRIVE_INFO
= 24¶
-
RHK_OBJECT_LOCKIN0_INFO
= 25¶
-
RHK_OBJECT_LOCKIN1_INFO
= 26¶
-
RHK_OBJECT_ZPI_INFO
= 27¶
-
RHK_OBJECT_KPI_INFO
= 28¶
-
RHK_OBJECT_AUX_PI_INFO
= 29¶
-
RHK_OBJECT_LOWPASS_FILTER0_INFO
= 30¶
-
RHK_OBJECT_LOWPASS_FILTER1_INFO
= 31¶
-
-
class
spym.io.rhksm4._sm4.
page_data_type
¶ Bases:
enum.Enum
Generic enumeration.
Derive from this class to define new enumerations.
-
RHK_DATA_IMAGE
= 0¶
-
RHK_DATA_LINE
= 1¶
-
RHK_DATA_XY_DATA
= 2¶
-
RHK_DATA_ANNOTATED_LINE
= 3¶
-
RHK_DATA_TEXT
= 4¶
-
RHK_DATA_ANNOTATED_TEXT
= 5¶
-
RHK_DATA_SEQUENTIAL
= 6¶
-
RHK_DATA_MOVIE
= 7¶
-
-
class
spym.io.rhksm4._sm4.
page_source_type
¶ Bases:
enum.Enum
Generic enumeration.
Derive from this class to define new enumerations.
-
RHK_SOURCE_RAW
= 0¶
-
RHK_SOURCE_PROCESSED
= 1¶
-
RHK_SOURCE_CALCULATED
= 2¶
-
RHK_SOURCE_IMPORTED
= 3¶
-
-
class
spym.io.rhksm4._sm4.
page_type
¶ Bases:
enum.Enum
Generic enumeration.
Derive from this class to define new enumerations.
-
RHK_PAGE_UNDEFINED
= 0¶
-
RHK_PAGE_TOPOGRAPHIC
= 1¶
-
RHK_PAGE_CURRENT
= 2¶
-
RHK_PAGE_AUX
= 3¶
-
RHK_PAGE_FORCE
= 4¶
-
RHK_PAGE_SIGNAL
= 5¶
-
RHK_PAGE_FFT_TRANSFORM
= 6¶
-
RHK_PAGE_NOISE_POWER_SPECTRUM
= 7¶
-
RHK_PAGE_LINE_TEST
= 8¶
-
RHK_PAGE_OSCILLOSCOPE
= 9¶
-
RHK_PAGE_IV_SPECTRA
= 10¶
-
RHK_PAGE_IV_4x4
= 11¶
-
RHK_PAGE_IV_8x8
= 12¶
-
RHK_PAGE_IV_16x16
= 13¶
-
RHK_PAGE_IV_32x32
= 14¶
-
RHK_PAGE_IV_CENTER
= 15¶
-
RHK_PAGE_INTERACTIVE_SPECTRA
= 16¶
-
RHK_PAGE_AUTOCORRELATION
= 17¶
-
RHK_PAGE_IZ_SPECTRA
= 18¶
-
RHK_PAGE_4_GAIN_TOPOGRAPHY
= 19¶
-
RHK_PAGE_8_GAIN_TOPOGRAPHY
= 20¶
-
RHK_PAGE_4_GAIN_CURRENT
= 21¶
-
RHK_PAGE_8_GAIN_CURRENT
= 22¶
-
RHK_PAGE_IV_64x64
= 23¶
-
RHK_PAGE_AUTOCORRELATION_SPECTRUM
= 24¶
-
RHK_PAGE_COUNTER
= 25¶
-
RHK_PAGE_MULTICHANNEL_ANALYSER
= 26¶
-
RHK_PAGE_AFM_100
= 27¶
-
RHK_PAGE_CITS
= 28¶
-
RHK_PAGE_GPIB
= 29¶
-
RHK_PAGE_VIDEO_CHANNEL
= 30¶
-
RHK_PAGE_IMAGE_OUT_SPECTRA
= 31¶
-
RHK_PAGE_I_DATALOG
= 32¶
-
RHK_PAGE_I_ECSET
= 33¶
-
RHK_PAGE_I_ECDATA
= 34¶
-
RHK_PAGE_I_DSP_AD
= 35¶
-
RHK_PAGE_DISCRETE_SPECTROSCOPY_PP
= 36¶
-
RHK_PAGE_IMAGE_DISCRETE_SPECTROSCOPY
= 37¶
-
RHK_PAGE_RAMP_SPECTROSCOPY_RP
= 38¶
-
RHK_PAGE_DISCRETE_SPECTROSCOPY_RP
= 39¶
-
-
class
spym.io.rhksm4._sm4.
line_type
¶ Bases:
enum.Enum
Generic enumeration.
Derive from this class to define new enumerations.
-
RHK_LINE_NOT_A_LINE
= 0¶
-
RHK_LINE_HISTOGRAM
= 1¶
-
RHK_LINE_CROSS_SECTION
= 2¶
-
RHK_LINE_LINE_TEST
= 3¶
-
RHK_LINE_OSCILLOSCOPE
= 4¶
-
RHK_LINE_RESERVED
= 5¶
-
RHK_LINE_NOISE_POWER_SPECTRUM
= 6¶
-
RHK_LINE_IV_SPECTRUM
= 7¶
-
RHK_LINE_IZ_SPECTRUM
= 8¶
-
RHK_LINE_IMAGE_X_AVERAGE
= 9¶
-
RHK_LINE_IMAGE_Y_AVERAGE
= 10¶
-
RHK_LINE_NOISE_AUTOCORRELATION_SPECTRUM
= 11¶
-
RHK_LINE_MULTICHANNEL_ANALYSER_DATA
= 12¶
-
RHK_LINE_RENORMALIZED_IV
= 13¶
-
RHK_LINE_IMAGE_HISTOGRAM_SPECTRA
= 14¶
-
RHK_LINE_IMAGE_CROSS_SECTION
= 15¶
-
RHK_LINE_IMAGE_AVERAGE
= 16¶
-
RHK_LINE_IMAGE_CROSS_SECTION_G
= 17¶
-
RHK_LINE_IMAGE_OUT_SPECTRA
= 18¶
-
RHK_LINE_DATALOG_SPECTRUM
= 19¶
-
RHK_LINE_GXY
= 20¶
-
RHK_LINE_ELECTROCHEMISTRY
= 21¶
-
RHK_LINE_DISCRETE_SPECTROSCOPY
= 22¶
-
RHK_LINE_DATA_LOGGER
= 23¶
-
RHK_LINE_TIME_SPECTROSCOPY
= 24¶
-
RHK_LINE_ZOOM_FFT
= 25¶
-
RHK_LINE_FREQUENCY_SWEEP
= 26¶
-
RHK_LINE_PHASE_ROTATE
= 27¶
-
RHK_LINE_FIBER_SWEEP
= 28¶
-
-
class
spym.io.rhksm4._sm4.
image_type
¶ Bases:
enum.Enum
Generic enumeration.
Derive from this class to define new enumerations.
-
RHK_IMAGE_NORMAL
= 0¶
-
RHK_IMAGE_AUTOCORRELATED
= 1¶
-
-
class
spym.io.rhksm4._sm4.
scan_type
¶ Bases:
enum.Enum
Generic enumeration.
Derive from this class to define new enumerations.
-
RHK_SCAN_RIGHT
= 0¶
-
RHK_SCAN_LEFT
= 1¶
-
RHK_SCAN_UP
= 2¶
-
RHK_SCAN_DOWN
= 3¶
-
-
class
spym.io.rhksm4._sm4.
drift_option_type
¶ Bases:
enum.Enum
Generic enumeration.
Derive from this class to define new enumerations.
-
RHK_DRIFT_DISABLED
= 0¶
-
RHK_DRIFT_EACH_SPECTRA
= 1¶
-
RHK_DRIFT_EACH_LOCATION
= 2¶
-
-
class
spym.io.rhksm4._sm4.
RHKsm4
(filename)¶ This is the main class that represents a RHK SM4 file
- Args:
- filename: the name of the .sm4 file to be opened
-
class
spym.io.rhksm4._sm4.
RHKObject
(sm4)¶ Define an RHK object.
An Object contains: Object ID: (4 bytes) Type of data stored Offset: (4 bytes) Data offset Size: (4 bytes) size of the data Using the data offset and size, we can read the corresponding object data.
-
size
¶ Seek to the end position of the current Object (for compatibility with future file versions in case Object Field Size is no longer 12 bytes)
-
-
class
spym.io.rhksm4._sm4.
RHKObjectContainer
¶ Represents a class containing RHK Objects
-
class
spym.io.rhksm4._sm4.
RHKFileHeader
(sm4)¶ Bases:
spym.io.rhksm4._sm4.RHKObjectContainer
Class representing the File Header.
The File Header contains the general information about the SM4 file and the file offset to other details like index header, PRM data etc.
-
reserved
¶ Seek to the end position of the File Header (for compatibility with future file versions in case File Header Size is no longer 56 bytes)
-
-
class
spym.io.rhksm4._sm4.
RHKPageIndexHeader
(sm4)¶ Bases:
spym.io.rhksm4._sm4.RHKObjectContainer
Class representing the Page Index Header.
-
class
spym.io.rhksm4._sm4.
RHKPageHeader
(page, sm4)¶ Bases:
spym.io.rhksm4._sm4.RHKObjectContainer
Class representing the Page Header
-
read_sequential_type
(self, page)¶
-
read_default_type
(self, page)¶
-
read_objects
(self, page)¶
-
-
class
spym.io.rhksm4._sm4.
RHKPage
(sm4)¶ Bases:
spym.io.rhksm4._sm4.RHKObjectContainer
Class representing Page