Type: ISym3Project

Summary:

Common class for all Sym3 products

Remarks:

Methods:

GetAllDeviceIOs

Summary:

Gets all the device IO

StartSimulation

Summary:

Starts the simulation

Example:

This examples shows you how to start a simulation now.

            Project.StartSimulation();
            

StartSimulation(System.DateTime)

Summary:

Starts the simulation at a specified time

Parameters:

  1. time: Datetime. Please refer to .Net documentation about the DateTime class

Example:

This example shows you how to start a simulation at a specified datetime

            // start in 1 hour
            var dt = System.DateTime.Now();
            dt.AddHours(1);
            Project.StartSimulation(dt);
            

PauseResumeSimulation

Summary:

Pauses or resumes simulation

Example:

This example shows you how to pause/resume a simulation

            Project.PauseResumeSimulation();
            

StopSimulation

Summary:

Stops the simulation

Example:

This example shows you how to stop a simulation.

            Project.StopSimulation();
            

StopSimulation(System.Boolean)

Summary:

Stops the simulation

Parameters:

  1. silent: if silent is true, the UI will not be notified and will not pop up a confirmation message

Example:

This example shows you how to stop a simulation.

            Project.StopSimulation(true);
            

DumpEventQueue(System.String)

Summary:

Dump event queue in a CSV file

Parameters:

  1. file: Where to save file

AddManager(IBaseManager)

Summary:

Adds a manager to the project

Parameters:

  1. managerToAdd: manager to add

Open(System.String,ObjectReadCallback,System.Collections.Generic.List{System.String}@)

Summary:

Open project file

Parameters:

  1. fileName: project file to open
  2. callBack: a callback each time an object is read from the project file
  3. errorList: a list of all error found during loading.

Close

Summary:

Closes the project

Save

Summary:

Save current project to existing file name

SaveAs(System.String)

Summary:

save project as

Parameters:

  1. fileName: filename where to save project

Get(System.String)

Summary:

Gets an object by name (in all the project)

Parameters:

  1. name: name to serach for

Returns:

Found object. Will be null if not found

GetObjectById(System.Guid)

Summary:

Gets an object by Global ID (in all the project)

Parameters:

  1. guid: global id to search for

Returns:

Found object. Will be null if not found

RemoveObject(IBaseObject)

Summary:

Removes an object form the project

Parameters:

  1. obj: Object to remove

Returns:

true if success

RemoveObjects(System.Collections.IList)

Summary:

Removes a list of object from the project

Parameters:

  1. objects: list of objects to remove

Returns:

true if success

GetManagerByObjectTypeName(System.String)

Summary:

Gets a manager by the object type name

Parameters:

  1. objectTypeName:

GetObjectManager(IBaseObject)

Summary:

Gets a manager from an object

Parameters:

  1. obj:

PasteFromClipboard

Summary:

Pastes object from clipboard

CopyToClipboard(System.Collections.ICollection)

Summary:

Copies a collection of object to clipboard

Parameters:

  1. objects:

CopyToClipboard

Summary:

Copies the object to clipboard

ToCSVString(System.Char)

Summary:

Returns the object in a CSV string.

Returns:

A string that contains properties of the object in a CSV format.

GetUserPropertyInstance(System.String)

Summary:

Gets the user property instance of the specified name

Parameters:

  1. userPropertyName: The user property name.

Returns:

Returns the user property instance object. If not found, the methods returns null.

Example:

This example shows how to set the value of a user property by using this method

            cc1 = Project.Equipment.Get("CC1");
            
            // get the value of a user property using the method
            userPropertyInstance = cc1.GetUserPropertyInstance("UserProperty1");
            if(userPropertyInstance != null) {
               userPropertyInstance.Value = 3;
            }
            

IsUserProperty(System.String)

Summary:

Indicates if the object contains a user property with the name you specify

Parameters:

  1. userPropertyName: user property name

Returns:

Returns true if the object contains a user property with the name you specified in parameter.

GetUserPropertyValue(System.String)

Summary:

Gets the value of a user property. A better way to get the value of a user property is to use the indexer operator [], see example. Instead of using the method 'GetUserPropertyInstance' and then access the 'Value' property of the returned value, this method simplifies the way we get the value of a user property.

Parameters:

  1. userPropertyName: The name of the user property to set.

Returns:

Returns null if user property is not found. Otherwise returns the value of the user property.

Example:

This example shows how to get the value of a user property using this method and also by using the indexer

            cc1 = Project.Equipment.Get("CC1");
            
            // get the value of a user property using the method
            val = cc1.GetUserPropertyValue("UserProperty1");
            
            // get the value of a user property using the indexer operator
            val = cc1["UserProperty1"];
            

SetUserPropertyValue(System.String,System.Object)

Summary:

Sets the value of a user property. A better way to set the value of a user property is to use the indexer operator [], see example. Instead of using the method 'GetUserPropertyInstance' and then access the 'Value' property of the returned value, this method simplifies the way we set the value of a user property.

Parameters:

  1. userPropertyName: The name of the user property to set.
  2. value: If the user property is not found, this methods does nothing.

Example:

This example shows how to set the value of a user property using this method and also by using the indexer

            cc1 = Project.Equipment.Get("CC1");
            
            // set the value of a user property using the method
            cc1.SetUserPropertyValue("UserProperty1", 3);
            
            // set the value of a user property using the indexer operator
            cc1["UserProperty1"] = 3;
            

ToXmlString

Summary:

Converts the object in an xml string

Returns:

the string that contains xml version of the object

FromXmlString(System.String)

Summary:

Init object from xml. All properties found in the xml will be set with the value in the xml file

Parameters:

  1. xmlText: Xml string

Properties

MyEquipmentTypes

Summary:

Gets the user equipment type manager

Type:

IMyEquipmentTypeManager

Access:

Read

ProductShapeManager

Summary:

Gets the product shape manager

Type:

IProductShapeManager

Access:

Read

LiveValueService

Summary:

Get the live value service

Type:

ILiveValueService

Access:

Read

Colors

Summary:

Gets the color resource manager

Type:

IResourceColorManager

Access:

Read

Texts

Summary:

Gets the text resource manager

Type:

IResourceTextManager

Access:

Read

HotKeys

Summary:

Gets the hot key manager

Type:

IHotKeyManager

Access:

Read

Images

Summary:

Gets the image resource manager

Type:

IResourceImageManager

Access:

Read

Audios

Summary:

Gets the audio resource manager

Type:

IResourceAudioManager

Access:

Read

Types

Summary:

Gets the Type manager.

Type:

ITypeManager

Access:

Read

Equipment

Summary:

Gets the equipment manager

Type:

IEquipmentManager

Access:

Read

Devices

Summary:

Gets the Device manager

Type:

IProgammableLogicControlManager

Access:

Read

DeviceIOs

Summary:

Gets the Device IOs manager

Type:

IDeviceIOManager

Access:

Read

DataTypes

Summary:

Gets the data types manager

Type:

IUserDefinedTypeManager

Access:

Read

Reports

Summary:

Gets the report manager

Type:

IReportManager

Access:

Read

Templates

Summary:

Gets the template manager

Type:

ITemplateManager

Access:

Read

SimulationScripts

Summary:

Gets the manager of simulation scripts

Type:

ISimulationScriptManager

Access:

Read

ServerScripts

Summary:

Gets the manager of server scripts

Type:

IServerScriptManager

Access:

Read

ClientScripts

Summary:

Gets the manager of client scripts

Type:

IClientScriptManager

Access:

Read

Macros

Summary:

Gets the manager of macros

Type:

IMacroManager

Access:

Read

SystemProperties

Summary:

Gets the system properties manager

Type:

ISystemPropertyManager

Access:

Read

Messages

Summary:

Gets the message manager

Type:

IMessageManager

Access:

Read

ActionService

Summary:

Get the action service

Type:

IActionService

Access:

Read

Layers

Summary:

Gets the layer manager

Type:

ILayerManager

Access:

Read

FullPathName

Summary:

Gets the full path of the project on disk

Type:

System.String

Access:

Read

SimulationState

Summary:

Gets or sets the simulation state (stopped, running, paused)

Type:

SimulationRunningState

Access:

Read and Write

SimulationStateToString

Summary:

Gets project status in a display string

Type:

System.String

Access:

Read

SimulationIsRunning

Summary:

Indicates if the simulation is running

Type:

System.Boolean

Access:

Read

WarpSpeed

Summary:

Gets or sets the warp speed

Type:

System.Double

Access:

Read and Write

SimulationTime

Summary:

Gets the current simulation time

Type:

System.Int64

Access:

Read

EventQueueSize

Summary:

Gets event queue size

Type:

System.Int32

Access:

Read

Products

Summary:

Gets access to product manager

Type:

IProductManager

Access:

Read

Views

Summary:

Gets access to the view manager.

Type:

IViewManager

Access:

Read

LineStoppedColor

Summary:

Gets or sets the line color of a conveyor when the conveyor is stopped

Type:

IResourceColor

Access:

Read and Write

LineRunningForwardColor

Summary:

Gets or sets the line color of a conveyor when the conveyor is running forward

Type:

IResourceColor

Access:

Read and Write

LineRunningBackwardColor

Summary:

Gets or sets the line color of a conveyor when the conveyor is running backward

Type:

IResourceColor

Access:

Read and Write

ClearedIdentifiedColor

Summary:

Gets or sets the color of a product that is cleared and identified

Type:

IResourceColor

Access:

Read and Write

RejectedIdentifiedColor

Summary:

Gets or sets the color of a product that is rejected and identified

Type:

IResourceColor

Access:

Read and Write

UnknownIdentifiedColor

Summary:

Gets or sets the color of a product that is unknown and identified

Type:

IResourceColor

Access:

Read and Write

TimeoutIdentifiedColor

Summary:

Gets or sets the color of a product that is time-out and identified

Type:

IResourceColor

Access:

Read and Write

ClearedUnidentifiedColor

Summary:

Gets or sets the color of a product that is cleared and unidentified

Type:

IResourceColor

Access:

Read and Write

RejectedUnidentifiedColor

Summary:

Gets or sets the color of a product that is rejected and unidentified

Type:

IResourceColor

Access:

Read and Write

UnknownUnidentifiedColor

Summary:

Gets or sets the color of a product that is unknown and unidentified

Type:

IResourceColor

Access:

Read and Write

TimeoutUnidentifiedColor

Summary:

Gets or sets the color of a product that is time-out and unidentified

Type:

IResourceColor

Access:

Read and Write

Alarms

Summary:

Gives access to the alarm manager

Type:

IAlarmManager

Access:

Read

AlarmPriorities

Summary:

Gives access to the alarm priorities manager

Type:

IAlarmPriorityManager

Access:

Read

Tags

Summary:

Gives access to the tag manager

Type:

ITagManager

Access:

Read

Datalogs

Summary:

Gives access to the datalog manager

Type:

IDatalogManager

Access:

Read

DataSources

Summary:

Gives access to the datasource manager

Type:

IDataSourceManager

Access:

Read

DataSourceIOs

Summary:

Gives access to the datasource IO manager

Type:

IDataSourceIOManager

Access:

Read

Windows

Summary:

Gives access to the window manager

Type:

IWindowManager

Access:

Read

Frames

Summary:

Gives access to the frame manager

Type:

IFrameManager

Access:

Read

Cameras

Summary:

Gives access to the camera manager

Type:

ICameraManager

Access:

Read

Users

Summary:

Gives access to the user manager

Type:

IUserManager

Access:

Read

Roles

Summary:

Gives access to the role manager

Type:

IRoleManager

Access:

Read

Permissions

Summary:

Gives access to the permission manager

Type:

IPermissionManager

Access:

Read

Settings

Summary:

Gets global settings

Type:

IGlobalProjectSettings

Access:

Read

Languages

Summary:

Gives access to the language manager

Type:

ILanguageManager

Access:

Read

Product

Summary:

Gets product

Type:

Sym3SuiteProduct

Access:

Read

DistanceUnit

Summary:

Gets the distance unit for the project This example shows you how to get the unit // get project to use foot if(Project.DistanceUnit == BCS.DistanceUnit.Imperial) print("Imperial units") if(Project.DistanceUnit == BCS.DistanceUnit.Metrics) print("Metrics units")

Type:

DistanceUnit

Access:

Read

Managers

Summary:

Gets a dictionnary of all instance of managers

Type:

System.Collections.IDictionary

Access:

Read

ProjectFileVersion

Summary:

Gets project file version. This version is incremented each time a modification is done in the project file structure/format

Type:

System.Int32

Access:

Read

CurrentProjectVersion

Summary:

Gets current project version

Type:

System.Int32

Access:

Read

ApplicationSavedVersion

Summary:

Get application saved version

Type:

System.String

Access:

Read

ModificationState

Summary:

Gets or sets project state (modified or not)

Type:

ProjectModificationState

Access:

Read and Write

UserProperties

Summary:

Gets the user properties manager

Type:

IUserPropertyManager

Access:

Read

SelectionService

Summary:

Gets the selection service

Type:

IObjectSelectionService

Access:

Read

Version

Summary:

Gets or sets project version - information only

Type:

System.String

Access:

Read and Write

Author

Summary:

Gets or sets project author - information only

Type:

System.String

Access:

Read and Write

Description

Summary:

Gets or sets project description - information only

Type:

System.String

Access:

Read and Write

ProjectGuid

Summary:

Gets project global ID

Type:

System.String

Access:

Read

Id

Summary:

Gets the globally unique identifier (GUID) id of the object. This unique identifier is generated once at the object creation. This id will be kept unique for the entire life of the object, event after saving/loading the project.

Type:

System.Guid

Access:

Read

Example:

This example shows how to get the id of an object in a string format. The following script will output a string like 'b3122ae0-dcf7-43b6-b17c-5381afaca5cb'

            strid = Project.Colors.Get("myColor").Id.ToString();
            print(strid)
            

Name

Summary:

Gets or sets the name of the object. All objects of the same type have a unique name.

Type:

System.String

Access:

Read and Write

Example:

This example shows how to get and set the name of an object.

            // get the color name
            colorname = Project.Colors.Get("myColor").Name;
            
            // set the color name
            Project.Colors.Get("myColor").Name = "myNewName";
            

TypeName

Summary:

Gets the typename of the object. A type name doesn't contain any space characters.

Type:

System.String

Access:

Read

DisplayTypeName

Summary:

Gets the display name of the type name of the object. It returns the english display name of the type name.

Type:

System.String

Access:

Read

BaseProject

Summary:

Gets the project

Type:

IBaseProject

Access:

Read

UserPropertyInstances

Summary:

Gets a list of all the instances of user properties.

Type:

System.Collections.ObjectModel.ObservableCollection`1[BCS.IUserPropertyInstance]

Access:

Read