    

 ## On this page

  

 

 # Example 01 - C# 

 Last update: 16.07.2025 

# <a class="anchor" id="ex01_s1"></a>C#

using System;

using [ZOSAPI](namespace_z_o_s_a_p_i.xhtml);

using [ZOSAPI.Editors](namespace_z_o_s_a_p_i_1_1_editors.xhtml);

using [ZOSAPI.Editors.LDE](namespace_z_o_s_a_p_i_1_1_editors_1_1_l_d_e.xhtml);

using [ZOSAPI.SystemData](namespace_z_o_s_a_p_i_1_1_system_data.xhtml);

using [ZOSAPI.Tools.General](namespace_z_o_s_a_p_i_1_1_tools_1_1_general.xhtml);

 

namespace CSharpStandaloneApplication

{

 class Program

 {

 static void Main(string[] args)

 {

 // Find the installed version of OpticStudio

 bool isInitialized = ZOSAPI_NetHelper.ZOSAPI_Initializer.Initialize();

 // Note -- uncomment the following line to use a custom initialization path

 //bool isInitialized = ZOSAPI\_NetHelper.ZOSAPI\_Initializer.Initialize(@"C:\\Program Files\\OpticStudio\\");

 if (isInitialized)

 {

 LogInfo("Found OpticStudio at: " + ZOSAPI_NetHelper.ZOSAPI_Initializer.GetZemaxDirectory());

 }

 else

 {

 HandleError("Failed to locate OpticStudio!");

 return;

 }

 

 BeginStandaloneApplication();

 }

 

 static void BeginStandaloneApplication()

 {

 // Create the initial connection class

 [ZOSAPI\_Connection](class_z_o_s_a_p_i_1_1_z_o_s_a_p_i___connection.xhtml) TheConnection = new [ZOSAPI\_Connection](class_z_o_s_a_p_i_1_1_z_o_s_a_p_i___connection.xhtml)();

 

 // Attempt to create a Standalone connection

 [IZOSAPI\_Application](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml) TheApplication = TheConnection.[CreateNewApplication](class_z_o_s_a_p_i_1_1_z_o_s_a_p_i___connection.xhtml#aadc54af7d7415a765592acf23d3a08ef)();

 if (TheApplication == null)

 {

 HandleError("An unknown connection error occurred!");

 return;

 }

 

 // Check the connection status

 if (!TheApplication.[IsValidLicenseForAPI](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml#a5b8d6c216c668d13d6dcb870698c247f))

 {

 HandleError("Failed to connect to OpticStudio: " + TheApplication.[LicenseStatus](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml#a95179eb8038b629caa12397723aacb3a));

 return;

 }

 if (TheApplication.[Mode](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml#a8d2a89bafe9778c14f592276e5a5eb19) != [ZOSAPI\_Mode](namespace_z_o_s_a_p_i.xhtml#a254f5f6cb4ff37c2245b456b9bb79d2a).Server)

 {

 HandleError("User plugin was started in the wrong mode: expected Server, found " + TheApplication.[Mode](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml#a8d2a89bafe9778c14f592276e5a5eb19).ToString());

 return;

 }

 

 [IOpticalSystem](interface_z_o_s_a_p_i_1_1_i_optical_system.xhtml) TheSystem = TheApplication.[PrimarySystem](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml#aca8045fe84351622e0ee58814a2a3364);

 

 // Add your custom code here...

 

 // creates a new API directory

 string strPath = System.IO.Path.Combine(TheApplication.[SamplesDir](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml#ae8fc2a9409927955cc362f9262b052bb), @"API\\\\CS");

 System.IO.Directory.CreateDirectory(strPath);

 

 // Set up primary optical system

 string sampleDir = TheApplication.[SamplesDir](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml#ae8fc2a9409927955cc362f9262b052bb);

 string testFile = sampleDir + "\\\\API\\\\CS\\\\e01\_new\_file\_and\_quickfocus.zos";

 

 // Make new file

 TheSystem.[New](interface_z_o_s_a_p_i_1_1_i_optical_system.xhtml#a77b5517fb230d393cf7db82d8fee8a86)(false);

 TheSystem.[SaveAs](interface_z_o_s_a_p_i_1_1_i_optical_system.xhtml#a32d2f472d9a6d3277f3cda76afb6d85d)(testFile);

 

 TheSystem.[SystemData](interface_z_o_s_a_p_i_1_1_i_optical_system.xhtml#a4c4e9771e9ea51766885fdd6fb6627f5).MaterialCatalogs.AddCatalog("SCHOTT");

 

 // Aperture

 [ISystemData](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_system_data.xhtml) TheSystemData = TheSystem.[SystemData](interface_z_o_s_a_p_i_1_1_i_optical_system.xhtml#a4c4e9771e9ea51766885fdd6fb6627f5);

 TheSystemData.Aperture.ApertureValue = 40;

 

 // Fields

 [IField](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_field.xhtml) Field_1 = TheSystemData.[Fields](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_system_data.xhtml#a86c457ff0635211b4c8ac1816f2b1d25).[GetField](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_fields.xhtml#af2d2ae99d7ecf6e5866de571043f907d)(1);

 [IField](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_field.xhtml) NewField_2 = TheSystemData.[Fields](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_system_data.xhtml#a86c457ff0635211b4c8ac1816f2b1d25).[AddField](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_fields.xhtml#a0fe954d939cbd6c061599037bb2c5d5e)(0, 5.0, 1.0);

 

 // Wavelength preset

 bool slPreset = TheSystemData.[Wavelengths](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_system_data.xhtml#adc3ab867ef04c79e760a3726b9509fa7).[SelectWavelengthPreset](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_wavelengths.xhtml#a8d96b6f0046e8e23bf6a9b60525b95a0)([WavelengthPreset](namespace_z_o_s_a_p_i_1_1_system_data.xhtml#af09b97b3888a6e2576ed1e0baa359b92).d_0p587);

 

 // Lens data 

 [ILensDataEditor](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_lens_data_editor.xhtml) TheLDE = TheSystem.[LDE](interface_z_o_s_a_p_i_1_1_i_optical_system.xhtml#a942995136e3c3cf875cc1fde38d33477);

 TheLDE.[InsertNewSurfaceAt](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_lens_data_editor.xhtml#a921fc6dbf53c68b79b520193e1907dc9)(2);

 TheLDE.[InsertNewSurfaceAt](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_lens_data_editor.xhtml#a921fc6dbf53c68b79b520193e1907dc9)(2);

 [ILDERow](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_l_d_e_row.xhtml) Surface_1 = TheLDE.[GetSurfaceAt](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_lens_data_editor.xhtml#a25b725fa7de9dd2713ed949ac2199b05)(1);

 [ILDERow](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_l_d_e_row.xhtml) Surface_2 = TheLDE.[GetSurfaceAt](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_lens_data_editor.xhtml#a25b725fa7de9dd2713ed949ac2199b05)(2);

 [ILDERow](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_l_d_e_row.xhtml) Surface_3 = TheLDE.[GetSurfaceAt](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_lens_data_editor.xhtml#a25b725fa7de9dd2713ed949ac2199b05)(3);

 

 // Changes surface cells in LDE

 Surface_1.Thickness = 50.0;

 Surface_1.Comment = "Stop is free to move";

 Surface_2.Radius = 100.0;

 Surface_2.Thickness = 10.0;

 Surface_2.Comment = "front of lens";

 Surface_2.Material = "N-BK7";

 Surface_3.Comment = "rear of lens";

 

 // Solver

 [ISolveData](interface_z_o_s_a_p_i_1_1_editors_1_1_i_solve_data.xhtml) Solver = Surface_3.[RadiusCell](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_l_d_e_row.xhtml#a919d15dd13c02d96f80586ab6cb8f1a1).[CreateSolveType](interface_z_o_s_a_p_i_1_1_editors_1_1_i_editor_cell.xhtml#aab9b45b0e5c224d1fb31bce66888d20d)([SolveType](namespace_z_o_s_a_p_i_1_1_editors.xhtml#a0e4579c2bd01e606f5ba9e7f7ad1b0ec).FNumber);

 Solver._S_FNumber.FNumber = 10;

 Surface_3.[RadiusCell](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_l_d_e_row.xhtml#a919d15dd13c02d96f80586ab6cb8f1a1).[SetSolveData](interface_z_o_s_a_p_i_1_1_editors_1_1_i_editor_cell.xhtml#a5c0cbba814207920589ee69ffcfc0d36)(Solver);

 

 // QuickFocus

 [IQuickFocus](interface_z_o_s_a_p_i_1_1_tools_1_1_general_1_1_i_quick_focus.xhtml) quickFocus = TheSystem.[Tools](interface_z_o_s_a_p_i_1_1_i_optical_system.xhtml#add3e3631eadf7955b7b341179ff1eff8).OpenQuickFocus();

 quickFocus.Criterion = [QuickFocusCriterion](namespace_z_o_s_a_p_i_1_1_tools_1_1_general.xhtml#a20d6bbac90c0df7ec303415873b2553b).SpotSizeRadial;

 quickFocus.UseCentroid = true;

 quickFocus.[RunAndWaitForCompletion](interface_z_o_s_a_p_i_1_1_tools_1_1_i_system_tool.xhtml#a26d8cae18772fd31c1d18525a3b8d9ac)();

 quickFocus.[Close](interface_z_o_s_a_p_i_1_1_tools_1_1_i_system_tool.xhtml#a5bfa126385b9d0c5619b1aff9a354d31)();

 

 // Save and close

 TheSystem.[Save](interface_z_o_s_a_p_i_1_1_i_optical_system.xhtml#a8e1c511cdf7f6048f1287532edd3aadd)();

 

 // Clean up

 FinishStandaloneApplication(TheApplication);

 }

 

 static void FinishStandaloneApplication([IZOSAPI\_Application](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml) TheApplication)

 {

 // Note - TheApplication will close automatically when this application exits, so this isn't strictly necessary in most cases

 if (TheApplication != null)

 {

 TheApplication.[CloseApplication](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml#ab662a3cc1b97d8632a324b1137fa943b)();

 }

 }

 

 static void LogInfo(string message)

 {

 // TODO - add custom logging

 Console.WriteLine(message);

 }

 

 static void HandleError(string errorMessage)

 {

 // TODO - add custom error handling

 throw new Exception(errorMessage);

 }

 

 }

}

[ZOSAPI.ZOSAPI\_Connection](class_z_o_s_a_p_i_1_1_z_o_s_a_p_i___connection.xhtml)

**Definition:** ZemaxService.cs:198



[ZOSAPI.ZOSAPI\_Connection.CreateNewApplication](class_z_o_s_a_p_i_1_1_z_o_s_a_p_i___connection.xhtml#aadc54af7d7415a765592acf23d3a08ef)

IZOSAPI_Application CreateNewApplication()

Attempts to launch a new instance of Optic Studio in 'headless' mode. Note that although the Optic St...

**Definition:** ZemaxService.cs:864



[ZOSAPI.Editors.IEditorCell.SetSolveData](interface_z_o_s_a_p_i_1_1_editors_1_1_i_editor_cell.xhtml#a5c0cbba814207920589ee69ffcfc0d36)

SolveStatus SetSolveData(ISolveData Data)

Updates the system with the new solve type settings (see also CreateSolveType and GetSolveData).



[ZOSAPI.Editors.IEditorCell.CreateSolveType](interface_z_o_s_a_p_i_1_1_editors_1_1_i_editor_cell.xhtml#aab9b45b0e5c224d1fb31bce66888d20d)

ISolveData CreateSolveType(SolveType type)

Creates the solve type settings for the specified solve type. Note that SetSolveData must be used to ...



[ZOSAPI.Editors.ISolveData](interface_z_o_s_a_p_i_1_1_editors_1_1_i_solve_data.xhtml)

Base interface for all solve types. This interface can be accesed via the IEditorCell interface....

**Definition:** InterfacesEditors.cs:563



[ZOSAPI.Editors.LDE.ILDERow](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_l_d_e_row.xhtml)

All data for a Lens Data Editor surface. This interface can be accessed via the ILensDataEditor inter...

**Definition:** InterfacesLDE.cs:791



[ZOSAPI.Editors.LDE.ILDERow.RadiusCell](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_l_d_e_row.xhtml#a919d15dd13c02d96f80586ab6cb8f1a1)

IEditorCell RadiusCell

**Definition:** InterfacesLDE.cs:990



[ZOSAPI.Editors.LDE.ILensDataEditor](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_lens_data_editor.xhtml)

This interface defines all properties and methods needed to interact with the Lens Data Editor....

**Definition:** InterfacesLDE.cs:265



[ZOSAPI.Editors.LDE.ILensDataEditor.GetSurfaceAt](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_lens_data_editor.xhtml#a25b725fa7de9dd2713ed949ac2199b05)

ILDERow GetSurfaceAt(int SurfaceNumber)

Gets the data for the specified surface.



[ZOSAPI.Editors.LDE.ILensDataEditor.InsertNewSurfaceAt](interface_z_o_s_a_p_i_1_1_editors_1_1_l_d_e_1_1_i_lens_data_editor.xhtml#a921fc6dbf53c68b79b520193e1907dc9)

ILDERow InsertNewSurfaceAt(int SurfaceNumber)

Inserts a new surface at the specified position.



[ZOSAPI.IOpticalSystem](interface_z_o_s_a_p_i_1_1_i_optical_system.xhtml)

Represent a complete optical system. A IOpticalSystem corresponds to a single .ZMX file....

**Definition:** Interfaces.cs:687



[ZOSAPI.IOpticalSystem.SaveAs](interface_z_o_s_a_p_i_1_1_i_optical_system.xhtml#a32d2f472d9a6d3277f3cda76afb6d85d)

void SaveAs(string fileName)

Saves the current system to the specified file. All future calls to Save will use the same file.



[ZOSAPI.IOpticalSystem.SystemData](interface_z_o_s_a_p_i_1_1_i_optical_system.xhtml#a4c4e9771e9ea51766885fdd6fb6627f5)

ISystemData SystemData

Data for configuring everything in the System Explorer.

**Definition:** Interfaces.cs:845



[ZOSAPI.IOpticalSystem.New](interface_z_o_s_a_p_i_1_1_i_optical_system.xhtml#a77b5517fb230d393cf7db82d8fee8a86)

void New(bool saveIfNeeded)

Clears all data in the current system and resets it to a default state.



[ZOSAPI.IOpticalSystem.Save](interface_z_o_s_a_p_i_1_1_i_optical_system.xhtml#a8e1c511cdf7f6048f1287532edd3aadd)

void Save()

Saves the current system.



[ZOSAPI.IOpticalSystem.LDE](interface_z_o_s_a_p_i_1_1_i_optical_system.xhtml#a942995136e3c3cf875cc1fde38d33477)

ILensDataEditor LDE

Gets the lens data editor.

**Definition:** Interfaces.cs:865



[ZOSAPI.IOpticalSystem.Tools](interface_z_o_s_a_p_i_1_1_i_optical_system.xhtml#add3e3631eadf7955b7b341179ff1eff8)

IOpticalSystemTools Tools

Gets an interface used to run various tools on the optical system.

**Definition:** Interfaces.cs:932



[ZOSAPI.IZOSAPI\_Application](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml)

This interface contains all information about the current ZOS-API connection, as well as methods for ...

**Definition:** Interfaces.cs:261



[ZOSAPI.IZOSAPI\_Application.IsValidLicenseForAPI](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml#a5b8d6c216c668d13d6dcb870698c247f)

bool IsValidLicenseForAPI

Gets a value indicating whether this the API is currently useable.

**Definition:** Interfaces.cs:287



[ZOSAPI.IZOSAPI\_Application.Mode](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml#a8d2a89bafe9778c14f592276e5a5eb19)

ZOSAPI_Mode Mode

Gets the current connetion mode. Use this to check if Optic Studio is expecting a user operand / anal...

**Definition:** Interfaces.cs:306



[ZOSAPI.IZOSAPI\_Application.LicenseStatus](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml#a95179eb8038b629caa12397723aacb3a)

LicenseStatusType LicenseStatus

Gets the license status. Note that this displays the license edition if successful,...

**Definition:** Interfaces.cs:280



[ZOSAPI.IZOSAPI\_Application.CloseApplication](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml#ab662a3cc1b97d8632a324b1137fa943b)

void CloseApplication()

Shut down the Optic Studio process.



[ZOSAPI.IZOSAPI\_Application.PrimarySystem](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml#aca8045fe84351622e0ee58814a2a3364)

IOpticalSystem PrimarySystem

Gets the primary system. When Mode is ZOSAPI_Mode.Server, this will initially be an empty sequential ...

**Definition:** Interfaces.cs:328



[ZOSAPI.IZOSAPI\_Application.SamplesDir](interface_z_o_s_a_p_i_1_1_i_z_o_s_a_p_i___application.xhtml#ae8fc2a9409927955cc362f9262b052bb)

string SamplesDir

Gets the full path for the current user's samples directory (in the My Documents\Zemax\Samples\ folde...

**Definition:** Interfaces.cs:505



[ZOSAPI.SystemData.IField](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_field.xhtml)

System field data. This interface can be accessed via the IFields interface.

**Definition:** InterfacesSE.cs:977



[ZOSAPI.SystemData.IFields.AddField](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_fields.xhtml#a0fe954d939cbd6c061599037bb2c5d5e)

IField AddField(double X, double Y, double Weight)

Add a new field, after all the current fields.



[ZOSAPI.SystemData.IFields.GetField](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_fields.xhtml#af2d2ae99d7ecf6e5866de571043f907d)

IField GetField(int position)

Gets the specified field.



[ZOSAPI.SystemData.ISystemData](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_system_data.xhtml)

Interfaces and methods for changing all System Explorer data. This interface can be accessed via the ...

**Definition:** InterfacesSE.cs:275



[ZOSAPI.SystemData.ISystemData.Fields](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_system_data.xhtml#a86c457ff0635211b4c8ac1816f2b1d25)

IFields Fields

**Definition:** InterfacesSE.cs:278



[ZOSAPI.SystemData.ISystemData.Wavelengths](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_system_data.xhtml#adc3ab867ef04c79e760a3726b9509fa7)

IWavelengths Wavelengths

**Definition:** InterfacesSE.cs:277



[ZOSAPI.SystemData.IWavelengths.SelectWavelengthPreset](interface_z_o_s_a_p_i_1_1_system_data_1_1_i_wavelengths.xhtml#a8d96b6f0046e8e23bf6a9b60525b95a0)

bool SelectWavelengthPreset(WavelengthPreset preset)

Replaces all system wavelengths with a preset definition.



[ZOSAPI.Tools.General.IQuickFocus](interface_z_o_s_a_p_i_1_1_tools_1_1_general_1_1_i_quick_focus.xhtml)

Interfaces and methods for running the Quick Focus tool. This interface can be accessed via the IOpti...

**Definition:** Tools.cs:800



[ZOSAPI.Tools.ISystemTool.RunAndWaitForCompletion](interface_z_o_s_a_p_i_1_1_tools_1_1_i_system_tool.xhtml#a26d8cae18772fd31c1d18525a3b8d9ac)

bool RunAndWaitForCompletion()

Sames as calling Run followed by WaitForCompletion.



[ZOSAPI.Tools.ISystemTool.Close](interface_z_o_s_a_p_i_1_1_tools_1_1_i_system_tool.xhtml#a5bfa126385b9d0c5619b1aff9a354d31)

bool Close()

Closes this tool and frees up and associated resources.



[ZOSAPI.Editors.LDE](namespace_z_o_s_a_p_i_1_1_editors_1_1_l_d_e.xhtml)

**Definition:** InterfacesLDE.cs:8



[ZOSAPI.Editors](namespace_z_o_s_a_p_i_1_1_editors.xhtml)

**Definition:** InterfacesEditors.cs:12



[ZOSAPI.Editors.SolveType](namespace_z_o_s_a_p_i_1_1_editors.xhtml#a0e4579c2bd01e606f5ba9e7f7ad1b0ec)

SolveType

All solve types available. Note that only a portion of the types are available for any given IEditorC...

**Definition:** InterfacesEditors.cs:483



[ZOSAPI.SystemData](namespace_z_o_s_a_p_i_1_1_system_data.xhtml)

**Definition:** InterfacesSE.cs:11



[ZOSAPI.SystemData.WavelengthPreset](namespace_z_o_s_a_p_i_1_1_system_data.xhtml#af09b97b3888a6e2576ed1e0baa359b92)

WavelengthPreset

**Definition:** InterfacesSE.cs:138



[ZOSAPI.Tools.General](namespace_z_o_s_a_p_i_1_1_tools_1_1_general.xhtml)

**Definition:** Tools.cs:704



[ZOSAPI.Tools.General.QuickFocusCriterion](namespace_z_o_s_a_p_i_1_1_tools_1_1_general.xhtml#a20d6bbac90c0df7ec303415873b2553b)

QuickFocusCriterion

**Definition:** Tools.cs:774



[ZOSAPI](namespace_z_o_s_a_p_i.xhtml)

The ZOSAPI namespace contains classes for initially connecting to zemax. See also ZOSAPI_Connection,...

**Definition:** IAS_FieldCurvatureAndDistortion.cs:5



[ZOSAPI.ZOSAPI\_Mode](namespace_z_o_s_a_p_i.xhtml#a254f5f6cb4ff37c2245b456b9bb79d2a)

ZOSAPI_Mode

**Definition:** Interfaces.cs:77