Skip to content

Commit

Permalink
Add initial nitclk metadata (#1018)
Browse files Browse the repository at this point in the history
* Add initial metadata

* Remove numpy restriction

Bug fixed

* Upgrade pip

* Remove specific version of flake8

'\' in comments now need to be escaped

* Add basepython section

* Try using pypy3.5

* Go back to pypy3 and remove basepython block

* Don't need to run build_test for all builds - only 3.6

* Remove warning from coverage

* Undo previous change

* Try disabling faulthandler

* Remove --no-faulthandler

* pypy needs an older version of pytest

See pytest-dev/pytest#5807

* Use platform_python_implementation since implementation_name is not defined on Python2

* Try to get back to the initial coverage

* Do the same thing for build_test

* Remove redundant pip

* Add codecov file to try to control limits for passing

* Remove unused metadata
  • Loading branch information
texasaggie97-zz authored and marcoskirsch committed Sep 4, 2019
1 parent a681693 commit 83411cc
Show file tree
Hide file tree
Showing 9 changed files with 1,471 additions and 0 deletions.
19 changes: 19 additions & 0 deletions src/nitclk/metadata/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
from metadata.config import config
from metadata.functions import functions
from metadata.attributes import attributes
from metadata.enums import enums
import metadata.functions_addon
import metadata.attributes_addon
import metadata.enums_addon
import metadata.config_addon

import build.helper as helper
import sys

# Update generated functions data with hand maintained data
config['modules'] = sys.modules
helper.add_all_metadata(functions, attributes, enums, config)

__version__ = config['module_version']


147 changes: 147 additions & 0 deletions src/nitclk/metadata/attributes.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,147 @@
# -*- coding: utf-8 -*-
# This file is generated from NI-TClk API metadata version 255.0.0d0
attributes = {
1: {
'access': 'read-write',
'channel_based': False,
'documentation': {
'description': "\nSpecifies the Sync Pulse source. This attribute is most often used when synchronizing a multichassis system.\nValues\nEmpty string\nPXI Devices - 'PXI_Trig0' through 'PXI_Trig7' and device-specific settings\nPCI Devices - 'RTSI_0' through 'RTSI_7' and device-specific settings\nExamples of Device-Specific Settings\n- NI PXI-5122 supports 'PFI0' and 'PFI1'\n- NI PXI-5421 supports 'PFI0', 'PFI1', 'PFI2', and 'PFI3'\n- NI PXI-6551/6552 supports 'PFI0', 'PFI1', 'PFI2', and 'PFI3'\nDefault Value - Empty string. This default value directs niTClk_Synchronize to set this attribute when all the synchronized devices are in one PXI chassis. To synchronize a multichassis system, you must set this attribute before calling niTClk_Synchronize.\n"
},
'lv_property': 'Sync Pulse Source',
'name': 'SYNC_PULSE_SOURCE',
'resettable': False,
'type': 'ViString'
},
2: {
'access': 'read-write',
'channel_based': False,
'documentation': {
'description': "\nSpecifies the destination of the Sync Pulse. This attribute is most often used when synchronizing a multichassis system.\nValues\nEmpty string. Empty string is a valid value, indicating that the signal is not exported.\nPXI Devices - 'PXI_Trig0' through 'PXI_Trig7' and device-specific settings\nPCI Devices - 'RTSI_0' through 'RTSI_7' and device-specific settings\nExamples of Device-Specific Settings\n- NI PXI-5122 supports 'PFI0' and 'PFI1'\n- NI PXI-5421 supports 'PFI0', 'PFI1', 'PFI4', and 'PFI5'\n- NI PXI-6551/6552 supports 'PFI0', 'PFI1', 'PFI2', and 'PFI3'\nDefault Value is empty string\n"
},
'lv_property': 'Export Sync Pulse Output Terminal',
'name': 'EXPORTED_SYNC_PULSE_OUTPUT_TERMINAL',
'resettable': False,
'type': 'ViString'
},
3: {
'access': 'read-write',
'attribute_class': 'AttributeViInt32SessionReference',
'channel_based': False,
'documentation': {
'description': '\nSpecifies the start trigger master session.\nFor external triggers, the session that originally receives the trigger. For None (no trigger configured) or software triggers, the session that originally generates the trigger.\n'
},
'lv_property': 'Start Trigger Master Session',
'name': 'START_TRIGGER_MASTER_SESSION',
'resettable': False,
'type': 'ViInt32',
'type_in_documentation': 'nimi-python Session class, nitclk.SessionReference, NI-TClk Session Number'
},
4: {
'access': 'read-write',
'attribute_class': 'AttributeViInt32SessionReference',
'channel_based': False,
'documentation': {
'description': '\nSpecifies the reference trigger master session.\nFor external triggers, the session that originally receives the trigger. For None (no trigger configured) or software triggers, the session that originally generates the trigger.\n'
},
'lv_property': 'Reference Trigger Master Session',
'name': 'REF_TRIGGER_MASTER_SESSION',
'resettable': False,
'type': 'ViInt32',
'type_in_documentation': 'nimi-python Session class, nitclk.SessionReference, NI-TClk Session Number'
},
5: {
'access': 'read-write',
'attribute_class': 'AttributeViInt32SessionReference',
'channel_based': False,
'documentation': {
'description': '\nSpecifies the script trigger master session.\nFor external triggers, the session that originally receives the trigger. For None (no trigger configured) or software triggers, the session that originally generates the trigger.\n'
},
'lv_property': 'Script Trigger Master Session',
'name': 'SCRIPT_TRIGGER_MASTER_SESSION',
'resettable': False,
'type': 'ViInt32',
'type_in_documentation': 'nimi-python Session class, nitclk.SessionReference, NI-TClk Session Number'
},
6: {
'access': 'read-write',
'attribute_class': 'AttributeViInt32SessionReference',
'channel_based': False,
'documentation': {
'description': '\nSpecifies the pause trigger master session.\nFor external triggers, the session that originally receives the trigger. For None (no trigger configured) or software triggers, the session that originally generates the trigger.\n'
},
'lv_property': 'Pause Trigger Master Session',
'name': 'PAUSE_TRIGGER_MASTER_SESSION',
'resettable': False,
'type': 'ViInt32',
'type_in_documentation': 'nimi-python Session class, nitclk.SessionReference, NI-TClk Session Number'
},
8: {
'access': 'read only',
'channel_based': False,
'documentation': {
'description': '\nIndicates the computed TClk period that will be used during the acquisition.\n'
},
'lv_property': 'Period',
'name': 'TCLK_ACTUAL_PERIOD',
'resettable': False,
'type': 'ViReal64',
},
9: {
'access': 'read-write',
'channel_based': False,
'documentation': {
'description': "\nSpecifies the destination of the device's TClk signal.\nValues\nEmpty string. Empty string is a valid value, indicating that the signal is not exported.\nPXI Devices - 'PXI_Trig0' through 'PXI_Trig7' and device-specific settings\nPCI Devices - 'RTSI_0' through 'RTSI_7' and device-specific settings\nExamples of Device-Specific Settings\n- NI PXI-5122 supports 'PFI0' and 'PFI1'\n- NI PXI-5421 supports 'PFI0', 'PFI1', 'PFI4', and 'PFI5'\n- NI PXI-6551/6552 supports 'PFI0', 'PFI1', 'PFI2', and 'PFI3'\nDefault Value is empty string\n"
},
'lv_property': 'Output Terminal',
'name': 'EXPORTED_TCLK_OUTPUT_TERMINAL',
'resettable': False,
'type': 'ViString',
},
10: {
'access': 'read-write',
'channel_based': False,
'documentation': {
'description': "\nSpecifies the Sync Pulse Clock source. This attribute is typically used to synchronize PCI devices when you want to control RTSI 7 yourself. Make sure that a 10 MHz clock is driven onto RTSI 7.\nValues\nPCI Devices - 'RTSI_7' and 'None'\nPXI Devices - 'PXI_CLK10' and 'None'\nDefault Value - 'None' directs niTClk_Synchronize to create the necessary routes. For PCI, one of the synchronized devices drives a 10 MHz clock on RTSI 7 unless that line is already being driven.\n"
},
'lv_property': 'Sync Pulse Clock Source',
'name': 'SYNC_PULSE_CLOCK_SOURCE',
'resettable': False,
'type': 'ViString'
},
11: {
'access': 'read-write',
'channel_based': False,
'documentation': {
'description': '\nSpecifies the sample clock delay.\nSpecifies the delay, in seconds, to apply to the session sample clock relative to the other synchronized sessions. During synchronization, NI-TClk aligns the sample clocks on the synchronized devices. If you want to delay the sample clocks, set this attribute before calling niTClk_Synchronize.\nnot supported for acquisition sessions.\nValues - Between minus one and plus one period of the sample clock.\nOne sample clock period is equal to (1/sample clock rate). For example, for a session with sample rate of 100 MS/s, you can specify sample clock delays between -10.0 ns and +10.0 ns.\nDefault Value is 0\n',
'note': 'Sample clock delay is supported for generation sessions only; it is'
},
'lv_property': 'Sample Clock Delay',
'name': 'SAMPLE_CLOCK_DELAY',
'resettable': False,
'type': 'ViReal64'
},
13: {
'access': 'read-write',
'channel_based': False,
'documentation': {
'description': "\nSpecifies the external sync pulse source for the Sync Pulse Sender. You can use this source to synchronize the Sync Pulse Sender with an external non-TClk source.\nValues\nEmpty string. Empty string is a valid value, indicating that the signal is not exported.\nPXI Devices - 'PXI_Trig0' through 'PXI_Trig7' and device-specific settings\nPCI Devices - 'RTSI_0' through 'RTSI_7' and device-specific settings\nExamples of Device-Specific Settings\n- NI PXI-5122 supports 'PFI0' and 'PFI1'\n- NI PXI-5421 supports 'PFI0', 'PFI1', 'PFI4', and 'PFI5'\n- NI PXI-6551/6552 supports 'PFI0', 'PFI1', 'PFI2', and 'PFI3'\nDefault Value is empty string\n"
},
'lv_property': 'External Pulse Source',
'name': 'SYNC_PULSE_SENDER_SYNC_PULSE_SOURCE',
'resettable': False,
'type': 'ViString'
},
16: {
'access': 'read-write',
'attribute_class': 'AttributeViInt32SessionReference',
'channel_based': False,
'documentation': {
'description': '\nSpecifies the sequencer flag master session.\nFor external triggers, the session that originally receives the trigger.\nFor None (no trigger configured) or software triggers, the session that\noriginally generates the trigger.\n'
},
'lv_property': 'Sequencer Flag Master Session',
'name': 'SEQUENCER_FLAG_MASTER_SESSION',
'resettable': False,
'type': 'ViInt32',
'type_in_documentation': 'nimi-python Session class, nitclk.SessionReference, NI-TClk Session Number'
}
}
18 changes: 18 additions & 0 deletions src/nitclk/metadata/attributes_addon.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# These dictionaries are applied to the generated attributes dictionary at build time
# Any changes to the API should be made here. attributes.py is code generated

# We are not code genning attributes that have been marked as obsolete prior to the initial
# Python API bindings release

attributes_codegen_method = {
}

attributes_converters = {
}

attributes_enums = {
}

# If the associated enum represents boolean values only, disconnect
attributes_remove_enum = {
}
34 changes: 34 additions & 0 deletions src/nitclk/metadata/config.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# -*- coding: utf-8 -*-
# This file is generated from NI-TClk API metadata version 255.0.0d0
config = {
'api_version': '255.0.0d0',
'c_function_prefix': 'niTClk_',
'close_function': None,
'custom_types': [
],
'driver_name': 'NI-TClk',
'init_function': 'InitForDocumentation',
'library_info': {
'Linux': {
'64bit': {
'name': 'libnitclk.so',
'type': 'cdll'
}
},
'Windows': {
'32bit': {
'name': 'nitclk.dll',
'type': 'windll'
},
'64bit': {
'name': 'nitclk_64.dll',
'type': 'cdll'
}
}
},
'metadata_version': '2.0',
'module_name': 'nitclk',
'repeated_capabilities': [
],
'session_handle_parameter_name': 'session'
}
5 changes: 5 additions & 0 deletions src/nitclk/metadata/config_addon.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# We need to maintain the version here since it needs to be updated by the build process on GitHub
config_additional_config = {
'module_version': '0.1.0.dev0',
'latest_runtime_version_tested_against': '18.0.0',
}
4 changes: 4 additions & 0 deletions src/nitclk/metadata/enums.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# -*- coding: utf-8 -*-
# This file is generated from NI-TClk API metadata version 255.0.0d0
enums = {
}
14 changes: 14 additions & 0 deletions src/nitclk/metadata/enums_addon.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# These dictionaries are applied to the generated enums dictionary at build time
# Any changes to the API should be made here. attributes.py is code generated

# We are not code genning enums that have been marked as obsolete prior to the initial
# Python API bindings release
# We also do not codegen enums associated with P2P or External Calibration since neither
# are supported in Python
enums_codegen_method = {
}

enums_additional_enums = {
}


0 comments on commit 83411cc

Please sign in to comment.