py_canoe 3.0.4__py3-none-any.whl → 26.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. py_canoe/__init__.py +2 -1
  2. py_canoe/canoe.py +910 -0
  3. py_canoe/core/__init__.py +0 -0
  4. py_canoe/core/application.py +170 -0
  5. py_canoe/core/bus.py +301 -0
  6. py_canoe/core/capl.py +59 -0
  7. py_canoe/core/child_elements/__init__.py +0 -0
  8. py_canoe/core/child_elements/application_model.py +24 -0
  9. py_canoe/core/child_elements/application_model_file.py +21 -0
  10. py_canoe/core/child_elements/application_model_files.py +22 -0
  11. py_canoe/core/child_elements/application_model_setup.py +15 -0
  12. py_canoe/core/child_elements/application_models.py +22 -0
  13. py_canoe/core/child_elements/application_socket.py +11 -0
  14. py_canoe/core/child_elements/application_specific_module.py +24 -0
  15. py_canoe/core/child_elements/application_specific_modules.py +16 -0
  16. py_canoe/core/child_elements/audio_interface.py +28 -0
  17. py_canoe/core/child_elements/available_modules.py +22 -0
  18. py_canoe/core/child_elements/basic_module.py +19 -0
  19. py_canoe/core/child_elements/basic_modules.py +16 -0
  20. py_canoe/core/child_elements/c_libraries.py +28 -0
  21. py_canoe/core/child_elements/c_library.py +33 -0
  22. py_canoe/core/child_elements/can_controller.py +74 -0
  23. py_canoe/core/child_elements/capl_function.py +17 -0
  24. py_canoe/core/child_elements/ccp_setup.py +15 -0
  25. py_canoe/core/child_elements/channel.py +20 -0
  26. py_canoe/core/child_elements/channels.py +19 -0
  27. py_canoe/core/child_elements/communication_setup.py +23 -0
  28. py_canoe/core/child_elements/compile_result.py +22 -0
  29. py_canoe/core/child_elements/configured_channel.py +48 -0
  30. py_canoe/core/child_elements/configured_channels.py +21 -0
  31. py_canoe/core/child_elements/configured_module.py +82 -0
  32. py_canoe/core/child_elements/configured_modules.py +61 -0
  33. py_canoe/core/child_elements/connected_modules.py +14 -0
  34. py_canoe/core/child_elements/data_source.py +42 -0
  35. py_canoe/core/child_elements/data_source_file.py +21 -0
  36. py_canoe/core/child_elements/data_source_files.py +22 -0
  37. py_canoe/core/child_elements/data_source_issue.py +22 -0
  38. py_canoe/core/child_elements/data_source_issues.py +16 -0
  39. py_canoe/core/child_elements/data_source_setup.py +17 -0
  40. py_canoe/core/child_elements/data_sources.py +27 -0
  41. py_canoe/core/child_elements/database_setup.py +62 -0
  42. py_canoe/core/child_elements/device.py +34 -0
  43. py_canoe/core/child_elements/devices.py +13 -0
  44. py_canoe/core/child_elements/diagnostic.py +22 -0
  45. py_canoe/core/child_elements/diagnostic_request.py +59 -0
  46. py_canoe/core/child_elements/diagnostic_response.py +34 -0
  47. py_canoe/core/child_elements/diagnostic_responses.py +13 -0
  48. py_canoe/core/child_elements/diagnostics_setup.py +254 -0
  49. py_canoe/core/child_elements/distributed_mode.py +74 -0
  50. py_canoe/core/child_elements/encoding.py +27 -0
  51. py_canoe/core/child_elements/encodings.py +13 -0
  52. py_canoe/core/child_elements/environment_array.py +13 -0
  53. py_canoe/core/child_elements/environment_group.py +22 -0
  54. py_canoe/core/child_elements/environment_info.py +14 -0
  55. py_canoe/core/child_elements/environment_variable.py +55 -0
  56. py_canoe/core/child_elements/fdx_files.py +50 -0
  57. py_canoe/core/child_elements/file_group_data_source.py +17 -0
  58. py_canoe/core/child_elements/general_setup.py +66 -0
  59. py_canoe/core/child_elements/macros_setup.py +52 -0
  60. py_canoe/core/child_elements/mc_ecus.py +428 -0
  61. py_canoe/core/child_elements/measurement_setup.py +269 -0
  62. py_canoe/core/child_elements/modules.py +87 -0
  63. py_canoe/core/child_elements/most_disassembler.py +21 -0
  64. py_canoe/core/child_elements/most_network_interface.py +4 -0
  65. py_canoe/core/child_elements/namespace.py +21 -0
  66. py_canoe/core/child_elements/namespaces.py +19 -0
  67. py_canoe/core/child_elements/network.py +18 -0
  68. py_canoe/core/child_elements/network_adapters.py +13 -0
  69. py_canoe/core/child_elements/nodes.py +119 -0
  70. py_canoe/core/child_elements/open_configuration_result.py +0 -0
  71. py_canoe/core/child_elements/panel_setup.py +97 -0
  72. py_canoe/core/child_elements/participant.py +17 -0
  73. py_canoe/core/child_elements/participants.py +22 -0
  74. py_canoe/core/child_elements/ports.py +81 -0
  75. py_canoe/core/child_elements/replay_collection.py +56 -0
  76. py_canoe/core/child_elements/security_configuration.py +20 -0
  77. py_canoe/core/child_elements/security_setup.py +31 -0
  78. py_canoe/core/child_elements/signals.py +39 -0
  79. py_canoe/core/child_elements/simulation_setup.py +0 -0
  80. py_canoe/core/child_elements/single_file_data_source.py +13 -0
  81. py_canoe/core/child_elements/snippet_setup.py +68 -0
  82. py_canoe/core/child_elements/standalone_mode.py +0 -0
  83. py_canoe/core/child_elements/start_value_list.py +0 -0
  84. py_canoe/core/child_elements/symbol_mappings.py +0 -0
  85. py_canoe/core/child_elements/tcp_ip_stack_setting.py +0 -0
  86. py_canoe/core/child_elements/test_configurations.py +0 -0
  87. py_canoe/core/child_elements/test_environment.py +64 -0
  88. py_canoe/core/child_elements/test_environments.py +26 -0
  89. py_canoe/core/child_elements/test_module.py +213 -0
  90. py_canoe/core/child_elements/test_modules.py +23 -0
  91. py_canoe/core/child_elements/test_setup.py +16 -0
  92. py_canoe/core/child_elements/test_setup_folder_ext.py +36 -0
  93. py_canoe/core/child_elements/test_setup_folders.py +25 -0
  94. py_canoe/core/child_elements/user_files.py +0 -0
  95. py_canoe/core/child_elements/variable.py +144 -0
  96. py_canoe/core/child_elements/variable_events.py +14 -0
  97. py_canoe/core/child_elements/variables.py +29 -0
  98. py_canoe/core/child_elements/variables_file.py +15 -0
  99. py_canoe/core/child_elements/variables_files.py +19 -0
  100. py_canoe/core/child_elements/visual_sequence_setup.py +46 -0
  101. py_canoe/core/child_elements/vt_system.py +83 -0
  102. py_canoe/core/child_elements/vtt_sut_import_result.py +21 -0
  103. py_canoe/core/child_elements/write.py +71 -0
  104. py_canoe/core/child_elements/xcp_setup.py +12 -0
  105. py_canoe/core/configuration.py +509 -0
  106. py_canoe/core/environment.py +59 -0
  107. py_canoe/core/measurement.py +149 -0
  108. py_canoe/core/networks.py +103 -0
  109. py_canoe/core/performance.py +21 -0
  110. py_canoe/core/simulation.py +53 -0
  111. py_canoe/core/system.py +164 -0
  112. py_canoe/core/ui.py +53 -0
  113. py_canoe/core/version.py +54 -0
  114. py_canoe/helpers/__init__.py +0 -0
  115. py_canoe/helpers/common.py +78 -0
  116. {py_canoe-3.0.4.dist-info → py_canoe-26.0.0.dist-info}/METADATA +332 -322
  117. py_canoe-26.0.0.dist-info/RECORD +118 -0
  118. py_canoe-26.0.0.dist-info/WHEEL +4 -0
  119. py_canoe/py_canoe.py +0 -2586
  120. py_canoe/py_canoe_utils/logging_collection.py +0 -345
  121. py_canoe/py_canoe_utils/py_canoe_logger.py +0 -29
  122. py_canoe-3.0.4.dist-info/LICENSE +0 -21
  123. py_canoe-3.0.4.dist-info/RECORD +0 -8
  124. py_canoe-3.0.4.dist-info/WHEEL +0 -4
@@ -0,0 +1,16 @@
1
+ import win32com.client
2
+
3
+ from py_canoe.core.child_elements.application_specific_module import ApplicationSpecificModule
4
+
5
+
6
+ class ApplicationSpecificModules:
7
+ """Represents the collection of available application specific modules."""
8
+ def __init__(self, app_specific_modules_com_obj):
9
+ self.com_object = win32com.client.Dispatch(app_specific_modules_com_obj)
10
+
11
+ @property
12
+ def count(self) -> int:
13
+ return self.com_object.Count
14
+
15
+ def item(self, index: int) -> 'ApplicationSpecificModule':
16
+ return ApplicationSpecificModule(self.com_object.Item(index))
@@ -0,0 +1,28 @@
1
+ from typing import Union
2
+
3
+
4
+ class AudioInterface:
5
+ def __init__(self, com_object):
6
+ self.com_object = com_object
7
+
8
+ def mute(self, line_in_out: int, mute: Union[int, None]=None) -> int:
9
+ if mute is None:
10
+ return self.com_object.Mute(line_in_out)
11
+ else:
12
+ obj = self.com_object.Mute(line_in_out)
13
+ obj = mute
14
+ return self.com_object.Mute(line_in_out)
15
+
16
+ def volume(self, line_in_out: int, volume: Union[int, None]=None) -> int:
17
+ if volume is None:
18
+ return self.com_object.Volume(line_in_out)
19
+ else:
20
+ obj = self.com_object.Volume(line_in_out)
21
+ obj = volume
22
+ return self.com_object.Volume(line_in_out)
23
+
24
+ def connect_to_label(self, line_in_out: int, connection_label: int):
25
+ self.com_object.ConnectToLabel(line_in_out, connection_label)
26
+
27
+ def disconnect_from_label(self, line_in_out: int, connection_label: int):
28
+ self.com_object.DisconnectFromLabel(line_in_out, connection_label)
@@ -0,0 +1,22 @@
1
+ import win32com.client
2
+
3
+ from py_canoe.core.child_elements.application_specific_modules import ApplicationSpecificModules
4
+ from py_canoe.core.child_elements.basic_modules import BasicModules
5
+
6
+
7
+ class AvailableModules:
8
+ """
9
+ Represents the collection of known VT module types that can be added to VT System.
10
+ """
11
+ def __init__(self, available_modules_com_obj):
12
+ self.com_object = win32com.client.Dispatch(available_modules_com_obj)
13
+
14
+ @property
15
+ def application_specific_modules(self) -> 'ApplicationSpecificModules':
16
+ """Returns the collection of available application specific modules."""
17
+ return ApplicationSpecificModules(self.com_object.ApplicationSpecificModules)
18
+
19
+ @property
20
+ def basic_modules(self) -> 'BasicModules':
21
+ """Returns the collection of available basic modules."""
22
+ return BasicModules(self.com_object.BasicModules)
@@ -0,0 +1,19 @@
1
+ import win32com.client
2
+
3
+
4
+ class BasicModule:
5
+ """
6
+ Represents a basic VT System module (e.g., VT1004, VT2004, etc.).
7
+ """
8
+ def __init__(self, basic_module_com_obj):
9
+ self.com_object = win32com.client.Dispatch(basic_module_com_obj)
10
+
11
+ @property
12
+ def name(self) -> str:
13
+ """The name of the module."""
14
+ return self.com_object.Name
15
+
16
+ @property
17
+ def type(self) -> int:
18
+ """The type of the module (e.g. 1004)."""
19
+ return self.com_object.Type
@@ -0,0 +1,16 @@
1
+ import win32com.client
2
+
3
+ from py_canoe.core.child_elements.basic_module import BasicModule
4
+
5
+
6
+ class BasicModules:
7
+ """Represents the collection of available basic modules."""
8
+ def __init__(self, basic_modules_com_obj):
9
+ self.com_object = win32com.client.Dispatch(basic_modules_com_obj)
10
+
11
+ @property
12
+ def count(self) -> int:
13
+ return self.com_object.Count
14
+
15
+ def item(self, index: int) -> 'BasicModule':
16
+ return BasicModule(self.com_object.Item(index))
@@ -0,0 +1,28 @@
1
+ import win32com.client
2
+
3
+ from py_canoe.core.child_elements.c_library import CLibrary
4
+
5
+
6
+ class CLibraries:
7
+ """
8
+ Represents the collection of C libraries in a CANoe configuration.
9
+ """
10
+ def __init__(self, com_object) -> None:
11
+ self.com_object = win32com.client.Dispatch(com_object)
12
+
13
+ @property
14
+ def count(self) -> int:
15
+ """Returns the number of CLibrary objects in the collection."""
16
+ return self.com_object.Count
17
+
18
+ def item(self, index: int) -> 'CLibrary':
19
+ """Returns the CLibrary object at the specified index (1-based)."""
20
+ return CLibrary(self.com_object.Item(index))
21
+
22
+ def add(self, file_path: str) -> 'CLibrary':
23
+ """Adds a new C library to the collection and returns the CLibrary object."""
24
+ return CLibrary(self.com_object.Add(file_path))
25
+
26
+ def remove(self, clibrary: 'CLibrary'):
27
+ """Removes the specified CLibrary object from the collection."""
28
+ self.com_object.Remove(clibrary.com_object)
@@ -0,0 +1,33 @@
1
+ import win32com.client
2
+
3
+
4
+ class CLibrary:
5
+ """
6
+ Represents a single C library in a CANoe configuration.
7
+ """
8
+ def __init__(self, com_object) -> None:
9
+ self.com_object = win32com.client.Dispatch(com_object)
10
+
11
+ @property
12
+ def enabled(self) -> bool:
13
+ """Get or set whether the library is enabled."""
14
+ return self.com_object.Enabled
15
+
16
+ @enabled.setter
17
+ def enabled(self, value: bool):
18
+ self.com_object.Enabled = value
19
+
20
+ @property
21
+ def full_name(self) -> str:
22
+ """Returns the complete path to the C library file."""
23
+ return self.com_object.FullName
24
+
25
+ @property
26
+ def name(self) -> str:
27
+ """Returns the name of the C library file."""
28
+ return self.com_object.Name
29
+
30
+ @property
31
+ def path(self) -> str:
32
+ """Returns the path to the C library file."""
33
+ return self.com_object.Path
@@ -0,0 +1,74 @@
1
+ import win32com.client
2
+
3
+
4
+ class CanController:
5
+ def __init__(self, com_object):
6
+ self.com_object = win32com.client.Dispatch(com_object)
7
+
8
+ @property
9
+ def acknowledge(self):
10
+ return self.com_object.Acknowledge
11
+
12
+ @acknowledge.setter
13
+ def acknowledge(self, value: bool):
14
+ self.com_object.Acknowledge = value
15
+
16
+ @property
17
+ def baudrate(self):
18
+ return self.com_object.Baudrate
19
+
20
+ @baudrate.setter
21
+ def baudrate(self, value: int):
22
+ self.com_object.Baudrate = value
23
+
24
+ @property
25
+ def btr0(self):
26
+ return self.com_object.BTR0
27
+
28
+ @property
29
+ def btr1(self):
30
+ return self.com_object.BTR1
31
+
32
+ @property
33
+ def output_control(self):
34
+ return self.com_object.OutputControl
35
+
36
+ @output_control.setter
37
+ def output_control(self, value: int):
38
+ self.com_object.OutputControl = value
39
+
40
+ @property
41
+ def samples(self):
42
+ return self.com_object.Samples
43
+
44
+ @samples.setter
45
+ def samples(self, value: int):
46
+ self.com_object.Samples = value
47
+
48
+ @property
49
+ def self_ack_enabled(self):
50
+ return self.com_object.SelfAckEnabled
51
+
52
+ @self_ack_enabled.setter
53
+ def self_ack_enabled(self, value: bool):
54
+ self.com_object.SelfAckEnabled = value
55
+
56
+ @property
57
+ def synchronisation(self):
58
+ return self.com_object.Synchronisation
59
+
60
+ @synchronisation.setter
61
+ def synchronisation(self, value: int):
62
+ self.com_object.Synchronisation = value
63
+
64
+ def can_set_config(self, baudrate: int, tseg1: int, tseg2: int, sjw: int, sam: int, flags: int):
65
+ self.com_object.CANSetConfig(baudrate, tseg1, tseg2, sjw, sam, flags)
66
+
67
+ def can_set_fd_arb_phase_config(self, baudrate: int, tseg1: int, tseg2: int, sjw: int, sam: int, flags: int):
68
+ self.com_object.CANSetFDArbPhaseConfig(baudrate, tseg1, tseg2, sjw, sam, flags)
69
+
70
+ def can_set_fd_data_phase_config(self, baudrate: int, tseg1: int, tseg2: int, sjw: int, sam: int, flags: int):
71
+ self.com_object.CANSetFDDataPhaseConfig(baudrate, tseg1, tseg2, sjw, sam, flags)
72
+
73
+ def set_btr(self, btr0: int, btr1: int):
74
+ self.com_object.SetBTR(btr0, btr1)
@@ -0,0 +1,17 @@
1
+ class CaplFunction:
2
+ """
3
+ The CAPLFunction object represents a CAPL function.
4
+ """
5
+ def __init__(self, com_object):
6
+ self.com_object = com_object
7
+
8
+ @property
9
+ def parameter_count(self) -> int:
10
+ return self.com_object.ParameterCount
11
+
12
+ @property
13
+ def parameter_types(self) -> list:
14
+ return self.com_object.ParameterTypes
15
+
16
+ def call(self, *parameters):
17
+ return self.com_object.Call(*parameters)
@@ -0,0 +1,15 @@
1
+ import win32com.client
2
+
3
+ from py_canoe.core.child_elements.mc_ecus import McECUs
4
+
5
+
6
+ class CCPSetup:
7
+ """
8
+ The CCPSetup object represents the CCP settings of a CANoe configuration.
9
+ """
10
+ def __init__(self, com_object) -> None:
11
+ self.com_object = com_object
12
+
13
+ @property
14
+ def ecus(self) -> 'McECUs':
15
+ return McECUs(self.com_object.ECUs)
@@ -0,0 +1,20 @@
1
+ import win32com.client
2
+
3
+ from py_canoe.core.child_elements.can_controller import CanController
4
+
5
+
6
+ class Channel:
7
+ def __init__(self, com_object):
8
+ self.com_object = win32com.client.Dispatch(com_object)
9
+
10
+ @property
11
+ def bus_type(self) -> int:
12
+ return self.com_object.BusType
13
+
14
+ @property
15
+ def controller(self) -> 'CanController':
16
+ return CanController(self.com_object.Controller)
17
+
18
+ @property
19
+ def number(self) -> int:
20
+ return self.com_object.Number
@@ -0,0 +1,19 @@
1
+ from py_canoe.core.child_elements.channel import Channel
2
+
3
+
4
+ class Channels:
5
+ def __init__(self, com_object):
6
+ self.com_object = com_object
7
+
8
+ @property
9
+ def count(self) -> int:
10
+ return self.com_object.Count
11
+
12
+ def item(self, index: int) -> 'Channel':
13
+ return Channel(self.com_object.Item(index))
14
+
15
+ def add(self, type: int, number: int) -> 'Channel':
16
+ return Channel(self.com_object.Add(type, number))
17
+
18
+ def remove(self, index: int):
19
+ self.com_object.Remove(index)
@@ -0,0 +1,23 @@
1
+ from py_canoe.core.child_elements.application_model_setup import ApplicationModelSetup
2
+ from py_canoe.core.child_elements.data_source_setup import DataSourceSetup
3
+ from py_canoe.core.child_elements.vtt_sut_import_result import VttSutImportResult
4
+
5
+
6
+ class CommunicationSetup:
7
+ """
8
+ Provides access to CANoe's System and Communication Setup via COM.
9
+ """
10
+ def __init__(self, com_object) -> None:
11
+ self.com_object = com_object
12
+
13
+ @property
14
+ def application_model_setup(self) -> 'ApplicationModelSetup':
15
+ return ApplicationModelSetup(self.com_object.ApplicationModelSetup)
16
+
17
+ @property
18
+ def data_source_setup(self) -> 'DataSourceSetup':
19
+ return DataSourceSetup(self.com_object.DataSourceSetup)
20
+
21
+ @property
22
+ def import_vtt_sut(self, sut_manifest_path: str) -> 'VttSutImportResult':
23
+ return VttSutImportResult(self.com_object.ImportVttSut(sut_manifest_path))
@@ -0,0 +1,22 @@
1
+ class CompileResult:
2
+ """
3
+ The CompileResult object represents the result of the last compilation of the CAPL object.
4
+ """
5
+ def __init__(self, com_object):
6
+ self.com_object = com_object
7
+
8
+ @property
9
+ def error_message(self) -> str:
10
+ return self.com_object.ErrorMessage
11
+
12
+ @property
13
+ def node_name(self) -> str:
14
+ return self.com_object.NodeName
15
+
16
+ @property
17
+ def result(self) -> int:
18
+ return self.com_object.result
19
+
20
+ @property
21
+ def source_file(self) -> str:
22
+ return self.com_object.SourceFile
@@ -0,0 +1,48 @@
1
+ import win32com.client
2
+
3
+
4
+ class ConfiguredChannel:
5
+ """
6
+ Python wrapper for CANoe COM ConfiguredChannel object.
7
+ Represents a VT System channel in the current configuration.
8
+ """
9
+ def __init__(self, com_object):
10
+ self.com_object = win32com.client.Dispatch(com_object)
11
+
12
+ @property
13
+ def comment(self):
14
+ return self.com_object.Comment
15
+ @comment.setter
16
+ def comment(self, value):
17
+ self.com_object.Comment = value
18
+
19
+ @property
20
+ def measurement_values(self):
21
+ return self.com_object.MeasurementValues
22
+
23
+ @property
24
+ def name(self):
25
+ return self.com_object.Name
26
+ @name.setter
27
+ def name(self, value):
28
+ self.com_object.Name = value
29
+
30
+ @property
31
+ def pin_labels(self):
32
+ return self.com_object.PinLabels
33
+
34
+ @property
35
+ def relay_constraints(self):
36
+ return self.com_object.RelayConstraints
37
+
38
+ @property
39
+ def start_state(self):
40
+ return self.com_object.StartState
41
+
42
+ @property
43
+ def user_measurement_values(self):
44
+ return self.com_object.UserMeasurementValues
45
+
46
+ @property
47
+ def value_constraints(self):
48
+ return self.com_object.ValueConstraints
@@ -0,0 +1,21 @@
1
+ from py_canoe.core.child_elements.configured_channel import ConfiguredChannel
2
+
3
+
4
+ class ConfiguredChannels:
5
+ """
6
+ Python wrapper for CANoe COM ConfiguredChannels object.
7
+ Represents the collection of channels on a configured VT System module.
8
+ """
9
+ def __init__(self, com_object):
10
+ self.com_object = com_object
11
+
12
+ @property
13
+ def count(self):
14
+ """Returns the number of channels in the collection."""
15
+ return self.com_object.Count
16
+
17
+ def item(self, index) -> ConfiguredChannel:
18
+ """
19
+ Returns the ConfiguredChannel object at the given index (1-based).
20
+ """
21
+ return ConfiguredChannel(self.com_object.Item(index))
@@ -0,0 +1,82 @@
1
+ import win32com.client
2
+
3
+
4
+ class ConfiguredModule:
5
+ """
6
+ Python wrapper for CANoe COM ConfiguredModule object.
7
+ Represents a VT System module in the current configuration.
8
+ """
9
+ def __init__(self, com_object):
10
+ self.com_object = com_object
11
+
12
+ @property
13
+ def channels(self):
14
+ return self.com_object.Channels
15
+
16
+ @property
17
+ def comment(self):
18
+ return self.com_object.Comment
19
+
20
+ @comment.setter
21
+ def comment(self, value):
22
+ self.com_object.Comment = value
23
+
24
+ @property
25
+ def connectors(self):
26
+ return self.com_object.Connectors
27
+
28
+ @property
29
+ def internal_voltage(self):
30
+ return self.com_object.InternalVoltage
31
+
32
+ @property
33
+ def is_offline(self):
34
+ return self.com_object.IsOffline
35
+
36
+ @property
37
+ def lvds_voltage(self):
38
+ return self.com_object.LVDSVoltage
39
+
40
+ @property
41
+ def lvds_voltage_output_enabled(self):
42
+ return self.com_object.LVDSVoltageOutputEnabled
43
+
44
+ @property
45
+ def measurement_values(self):
46
+ return self.com_object.MeasurementValues
47
+
48
+ @property
49
+ def name(self):
50
+ return self.com_object.Name
51
+
52
+ @name.setter
53
+ def name(self, value):
54
+ self.com_object.Name = value
55
+
56
+ @property
57
+ def piggy_type(self):
58
+ return self.com_object.PiggyType
59
+
60
+ @property
61
+ def pin_labels(self):
62
+ return self.com_object.PinLabels
63
+
64
+ @property
65
+ def relay_constraints(self):
66
+ return self.com_object.RelayConstraints
67
+
68
+ @property
69
+ def start_state(self):
70
+ return self.com_object.StartState
71
+
72
+ @property
73
+ def type(self):
74
+ return self.com_object.Type
75
+
76
+ @property
77
+ def user_measurement_values(self):
78
+ return self.com_object.UserMeasurementValues
79
+
80
+ @property
81
+ def value_constraints(self):
82
+ return self.com_object.ValueConstraints
@@ -0,0 +1,61 @@
1
+ import win32com.client
2
+
3
+ from py_canoe.core.child_elements.configured_module import ConfiguredModule
4
+
5
+
6
+ class ConfiguredModules:
7
+ """
8
+ Python wrapper for CANoe COM ConfiguredModules object.
9
+ Represents the collection of VT System modules currently configured.
10
+ """
11
+ def __init__(self, com_object):
12
+ self.com_object = com_object
13
+
14
+ @property
15
+ def count(self):
16
+ """Returns the number of modules in the collection."""
17
+ return self.com_object.Count
18
+
19
+ def item(self, index) -> 'ConfiguredModule':
20
+ """
21
+ Returns the ConfiguredModule object at the given index (1-based).
22
+ Args:
23
+ index (int): Index of the module (1-based)
24
+ Returns:
25
+ ConfiguredModule COM object
26
+ """
27
+ return ConfiguredModule(self.com_object.Item(index))
28
+
29
+ def add_application_specific_module(self, module_id) -> 'ConfiguredModule':
30
+ """
31
+ Adds an application specific module to the configuration.
32
+ Args:
33
+ module_id (int): ID of the application specific module to add
34
+ Returns:
35
+ ConfiguredModule COM object
36
+ """
37
+ return ConfiguredModule(self.com_object.AddApplicationSpecificModule(module_id))
38
+
39
+ def add_basic_module(self, module_type) -> 'ConfiguredModule':
40
+ """
41
+ Adds a basic module to the configuration.
42
+ Args:
43
+ module_type (int): Type of the module to add (e.g. 1004)
44
+ Returns:
45
+ ConfiguredModule COM object
46
+ """
47
+ return ConfiguredModule(self.com_object.AddBasicModule(module_type))
48
+
49
+ def remove(self, index):
50
+ """
51
+ Removes a single module from the configuration.
52
+ Args:
53
+ index (int): 1-based index of the module to remove
54
+ """
55
+ self.com_object.Remove(index)
56
+
57
+ def remove_all(self):
58
+ """
59
+ Removes all modules from the configuration.
60
+ """
61
+ self.com_object.RemoveAll()
@@ -0,0 +1,14 @@
1
+ import win32com.client
2
+
3
+
4
+ class ConnectedModules:
5
+ """Represents the collection of VT System modules currently connected to the computer."""
6
+ def __init__(self, connected_modules_com_obj):
7
+ self.com_object = win32com.client.Dispatch(connected_modules_com_obj)
8
+
9
+ @property
10
+ def count(self) -> int:
11
+ return self.com_object.Count
12
+
13
+ def item(self, index: int):
14
+ return self.com_object.Item(index) # Returns a ConnectedModule object
@@ -0,0 +1,42 @@
1
+ import win32com.client
2
+
3
+ from py_canoe.core.child_elements.data_source_issues import DataSourceIssues
4
+
5
+
6
+ class DataSource:
7
+ """
8
+ Provides access to the base interface of all data sources.
9
+ """
10
+ def __init__(self, com_object) -> None:
11
+ self.com_object = win32com.client.Dispatch(com_object)
12
+
13
+ @property
14
+ def id(self) -> int:
15
+ return self.com_object.Id
16
+
17
+ @property
18
+ def import_issues(self) -> 'DataSourceIssues':
19
+ return DataSourceIssues(self.com_object.ImportIssues)
20
+
21
+ @property
22
+ def import_parameters_raw(self) -> str:
23
+ return self.com_object.ImportParametersRaw
24
+
25
+ @property
26
+ def import_status(self) -> int:
27
+ return self.com_object.ImportStatus
28
+
29
+ @property
30
+ def is_group_source(self) -> bool:
31
+ return self.com_object.IsGroupSource
32
+
33
+ @property
34
+ def source_format(self) -> int:
35
+ return self.com_object.SourceFormat
36
+
37
+ @property
38
+ def source_type(self) -> int:
39
+ return self.com_object.SourceType
40
+
41
+ def import_data_source(self, merge_strategy: int) -> int:
42
+ return self.com_object.Import(merge_strategy)
@@ -0,0 +1,21 @@
1
+ import win32com.client
2
+
3
+
4
+ class DataSourceFile:
5
+ """
6
+ Represents a single file in a DataSourceFiles collection.
7
+ """
8
+ def __init__(self, com_object) -> None:
9
+ self.com_object = win32com.client.Dispatch(com_object)
10
+
11
+ @property
12
+ def full_name(self) -> str:
13
+ return self.com_object.FullName
14
+
15
+ @property
16
+ def name(self) -> str:
17
+ return self.com_object.Name
18
+
19
+ @property
20
+ def path(self) -> str:
21
+ return self.com_object.Path