How to pass a value to an enumeration member?
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I am trying to change the default trigger setting on a Thorlabs brushless DC controller.
I can read the current setting, but I have troubke changing to change the value to a new setting that matches the application.
Is there a place where I can learn more how to assign values to a member of an enumeration.
Thanks
==============
K>> triggerSetting.Trigger2Mode
ans =
TrigOUT_GPO
K>> triggerSetting.Trigger2Mode = 'TrigOUT_InMotion'
Error setting property 'Trigger2Mode' of class 'KCubeTriggerConfigSettings':
Value must be 'Thorlabs.MotionControl.GenericMotorCLI.Settings.KCubeTriggerConfigSettings+TriggerPortMode'.
2 commentaires
chrisw23
le 15 Mar 2023
first steps
asm = NET.addAssembly("<...>");
enTrigPortModes = asm.AssemblyHandle.GetType("<...TriggerPortMode>")
trigPortModeNames = string(enTrigPortModes.GetEnumNames); % get enum values as strings
% loop through the enumerator or convert string to enum object
trigPortMode = System.Enum.Parse(enTrigPortMode,trigPortModeNames(n)); % from name to object to be assigned
Réponses (1)
Shubham
le 5 Mai 2023
Hi Raha,
To assign a value to a member of an enumeration, you need to use the dot notation. Here's an example of how to set the Trigger2Mode property to TrigOUT_InMotion:
triggerSetting.Trigger2Mode = Thorlabs.MotionControl.GenericMotorCLI.Settings.KCubeTriggerConfigSettings.TriggerPortMode.TrigOUT_InMotion;
Make sure to use the full enumeration path, including the namespace and the enumeration name, to avoid errors.
0 commentaires
Voir également
Catégories
En savoir plus sur Construct and Work with Object Arrays dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!