This outlines the ARC API, which has Events, Methods, and Fields. You can search for any of those with the browser using CTRL-F to find all events, for example.
Many classes and respective methods may not be documented here because they are less commonly used. These are the most common API calls for robot skills.
|
InterfaceBuilder |
Event: ARC.InterfaceBuilder.RemoteUIServer.OnConnection Event risen when for handleCustomEvent is true and a new connection is established
|
Method: ARC.InterfaceBuilder.RemoteUIServer.Start( System.Int32 ) Start the TCP Server and beginning listening on the specified port.
|
Method: ARC.InterfaceBuilder.RemoteUIServer.Stop Stop the TCP Server listener
|
Method: ARC.InterfaceBuilder.RemoteUIServer.DisconnectClients Disconnect all clients
|
Type: ARC.InterfaceBuilder.ResourceImages A strongly-typed resource class, for looking up localized strings, etc.
|
Type: ARC.InterfaceBuilder.ResourceTemplates A strongly-typed resource class, for looking up localized strings, etc.
|
|
MessagingService |
Type: ARC.MessagingService.MessagingService The messaging framework which allows controls to broadcast data to all other controls which are listening for relevant data.
|
Event: ARC.MessagingService.MessagingService.OnMessageReceived Subscribe to receive messages sent from other controls that may contain relevant data for your control.
|
Method: ARC.MessagingService.MessagingService.BroadcastMessage( System.String, System.Object ) Broadcast data to all controls that are listening for relevant data
|
Event: ARC.MessagingService.Navigation2DV1.Messenger.OnNewLocationPointScanPoints Combined navigation (positioning) and scanning data event. This is ideal if you're requiring both data groups for your navigation/mapping solution. The event is fired on every navigation update. All scanning data is collected between the last navigation update and this one.
|
Event: ARC.MessagingService.Navigation2DV1.Messenger.OnNewScan When new scan points are received by a level #3 Group #1 sensor. If you are creating a navigator, it is recommended to use teh OnNewLocationPointScanPoints becaue it contains both the combined location and scan points in one event
|
Event: ARC.MessagingService.Navigation2DV1.Messenger.OnNewLocation When a new location is updated by a Lavel #3 Group #2 sensor. If you are creating a navigator, it is recommended to use teh OnNewLocationPointScanPoints becaue it contains both the combined location and scan points in one event
|
Event: ARC.MessagingService.Navigation2DV1.Messenger.OnNavigationStatusChanged When a Level #3 Group #1 sensor wishes to alert the navigator that it sould pause or continue navigating based on obstacles
|
Field: ARC.MessagingService.Navigation2DV1.Messenger._scanPoints Stores the scan points if someone has subscribed to the OnNewLocationPointScanPoints event
|
Field: ARC.MessagingService.Navigation2DV1.Messenger.Location The last reported position of the robot relative to the starting position
|
Field: ARC.MessagingService.Navigation2DV1.Messenger.DegreesHeading The last reported heading degree the robot is facing relative to the starting degrees
|
Method: ARC.MessagingService.Navigation2DV1.Messenger.Clear Clear the stored scanpoints
|
Method: ARC.MessagingService.Navigation2DV1.Messenger.ChangeNavigationStatus( ARC.MessagingService.Navigation2DV1.Messenger.NavigationStatusEnum ) Change the navigation status for the navigator (level #1) if we should be navigating or not
|
Method: ARC.MessagingService.Navigation2DV1.Messenger.UpdateLocation( ARC.MessagingService.Navigation2DV1.LocationPoint ) Update the location of the robot. The navPoint is an offset from the starting position (0, 0) in cm
|
Method: ARC.MessagingService.Navigation2DV1.Messenger.UpdateLocation( System.Single, System.Single, System.Byte, System.Single ) Update the location of the robot. The navPoint is an offset from the starting position (0, 0) in cm
|
Method: ARC.MessagingService.Navigation2DV1.Messenger.UpdateScan( ARC.MessagingService.Navigation2DV1.ScanPoint[] ) Update the scan of the current location with a list of scan points Each scan point is a different degree of the scan with a distance in cm of the deteced object. If no object detected, a distance of 0 cm is specified
|
Method: ARC.MessagingService.Navigation2DV1.Messenger.UpdateScan( ARC.MessagingService.Navigation2DV1.ScanPoint ) Update the scan of the current location with a list of scan points *Performance note: If you are updating with many scan points of many degrees, do not use this override. Use the array override Each scan point is a different degree of the scan with a distance in cm of the deteced object. If no object detected, a distance of 0 cm is specified
|
Method: ARC.MessagingService.Navigation2DV1.Messenger.UpdateScan( System.Single, System.Byte, System.Single ) Update the scan of the current location with a list of scan points *Performance note: If you are updating with many scan points of many degrees, do not use this override. Use the array override Each scan point is a different degree of the scan with a distance in cm of the deteced object. If no object detected, a distance of 0 cm is specified
|
Field: ARC.MessagingService.Navigation2DV1.LocationPointScanPoints.LocationPoint The nav point
|
Field: ARC.MessagingService.Navigation2DV1.LocationPointScanPoints.ScanPoints A list of scan points
|
Field: ARC.MessagingService.Navigation2DV1.ScanPoint.Distance The distance in cm of any detected object from the center of the robot, otherwise 0
|
Field: ARC.MessagingService.Navigation2DV1.ScanPoint.Confidence Confidence of the detected object (0 = not confident, 255 = very confident)
|
Field: ARC.MessagingService.Navigation2DV1.ScanPoint.Degree The degree of where the object was detected
|
Field: ARC.MessagingService.Navigation2DV1.LocationPoint.X The distance in CM from the originating X position since tracking began
|
Field: ARC.MessagingService.Navigation2DV1.LocationPoint.Y The distance in CM from the originating Y position since tracking began
|
Field: ARC.MessagingService.Navigation2DV1.LocationPoint.DegreesHeading When initialized, the robot is determined to be facing 0 degrees. This is the degrees the robot is currently facing relative to the initialization reference angle If a robot were to strafe, this angle doesn't change. If a robot rotates left, the angle begins to increase
|
Field: ARC.MessagingService.Navigation2DV1.LocationPoint.Confidence Confidence of the location (0 = not confident, 255 = very confident)
|
Method: ARC.MessagingService.Navigation2DV1.LocationPoint.ToPoint Returns the X/Y cordinate as a point object
|
Method: ARC.MessagingService.Navigation2DV1.LocationPoint.ToPoint( System.Single ) Returns the X/Y cordinate as a point object and increases by the offset value
|
Method: ARC.MessagingService.Navigation2DV1.LocationPoint.ToPoint( System.Single, System.Single ) Returns the X/Y cordinate as a point object and increases by the offset value
|
Method: ARC.MessagingService.Navigation2DV1.LocationPoint.Equals( System.Object ) Determines if the current object cordinates equal the specified object cordinates
|
|
MovementManager |
Event: ARC.MovementManager.OnMovement Event risen when for movement action
|
Event: ARC.MovementManager.OnMovement2 Event risen when for movement action with speed
|
Event: ARC.MovementManager.OnSpeedChanged Event risen when for speed changed
|
Field: ARC.MovementManager.LocomotionStyle The type of locomotion that this robot uses to move in physical space
|
Type: ARC.MovementManager.LocomotionStyleEnum List of locomotion styles
|
Field: ARC.MovementManager.LocomotionStyleEnum.Undefined Locomotion type has not been specified by the movement panel, or a movement panel doesn't exist Check the EZBManager.MovementPanel to see if it is null. If it is null, a movement panel doesn't exist If it is not null, then the movement panel did not specify a locomotion type
|
Field: ARC.MovementManager.LocomotionStyleEnum.Wheeled_Steering The robot has 2 wheels in the front that steer like an automobile
|
Field: ARC.MovementManager.LocomotionStyleEnum.Wheeled_Tracked The robot has tracks like a tank for steering
|
Field: ARC.MovementManager.LocomotionStyleEnum.Drone The robot flies like a drone with 4 or more blades
|
Field: ARC.MovementManager.LocomotionStyleEnum.GAIT The robot walks with a GAIT like a hexapod or humanoid
|
Field: ARC.MovementManager.LocomotionStyleEnum.Helicopter The robot flies like a helicopter (similar to a drone but not)
|
Field: ARC.MovementManager.LocomotionStyleEnum.Plane The robot is a plane and flies with wings
|
Field: ARC.MovementManager.LocomotionStyleEnum.Rocket The robot is a jet propelled rocket
|
Field: ARC.MovementManager.LocomotionStyleEnum.Submarine The robot is a submarine
|
Field: ARC.MovementManager.LocomotionStyleEnum.Boat The robot is a boat with a rudder, steerable jet or steerable motor
|
Type: ARC.MovementManager.MovementDirectionEnum directions supported by movement manager
|
Field: ARC.MovementManager.MovementDirectionEnum.Stop The robot is stopping
|
Field: ARC.MovementManager.MovementDirectionEnum.Forward The robot is moving forward
|
Field: ARC.MovementManager.MovementDirectionEnum.Reverse The robot is reversing
|
Field: ARC.MovementManager.MovementDirectionEnum.Left The robot is turning left
|
Field: ARC.MovementManager.MovementDirectionEnum.Right The robot is turning right
|
Field: ARC.MovementManager.MovementDirectionEnum.Up The robot is moving up
|
Field: ARC.MovementManager.MovementDirectionEnum.Down The robot is moving down
|
Field: ARC.MovementManager.MovementDirectionEnum.RollRight The robot is rolling right
|
Field: ARC.MovementManager.MovementDirectionEnum.RollLeft The robot is rolling left
|
Field: ARC.MovementManager.MovementDirectionEnum.Takeoff Takeoff the robot (if flying)
|
Field: ARC.MovementManager.MovementDirectionEnum.Land Land the robot (if flying)
|
Field: ARC.MovementManager.MovementDirectionEnum.Emergency Handle an emergency situation where the robot needs to stop everything
|
Field: ARC.MovementManager.MovementDirectionEnum.Custom A custom movement was specified Check the GetCustomMovementID to see what custom movement you specified and react accordingly
|
Method: ARC.MovementManager.GetSpeed Get the global speed
|
Method: ARC.MovementManager.GetSpeedLeft Get the global speed for Left wheel
|
Method: ARC.MovementManager.GetSpeedRight Get the global speed for Right wheel
|
Method: ARC.MovementManager.SetSpeed( System.Byte ) Set the speed for both wheels to be the same value
|
Method: ARC.MovementManager.SetSpeed( System.Byte, System.Byte ) Set the speed for each wheel
|
Method: ARC.MovementManager.SetSpeedLeft( System.Byte ) Set the left wheel speed
|
Method: ARC.MovementManager.SetSpeedRight( System.Byte ) Set the left wheel speed
|
Method: ARC.MovementManager.GoStop Stops the robot if moving
|
Method: ARC.MovementManager.GoForward( System.Byte ) Moves robot forward at specified speed
|
Method: ARC.MovementManager.GoForward Moves robot forward
|
Method: ARC.MovementManager.GoForward( System.Byte, System.Byte ) Moves robot forward
|
Method: ARC.MovementManager.GoReverse( System.Byte ) Moves robot backward at specified speed
|
Method: ARC.MovementManager.GoReverse Moves robot backward
|
Method: ARC.MovementManager.GoReverse( System.Byte, System.Byte ) Moves robot backward If FORCE=TRUE then the command will be set again even though the movement may already be the same direction. Also, FORCE=TRUE will not raise the OnMovement event
|
Method: ARC.MovementManager.GoLeft( System.Byte ) Turns robot left at specified speed
|
Method: ARC.MovementManager.GoLeft Turns robot left
|
Method: ARC.MovementManager.GoLeft( System.Byte, System.Byte ) Turns robot left
|
Method: ARC.MovementManager.GoRight( System.Byte ) Turns robot right at specified speed
|
Method: ARC.MovementManager.GoRight Turns robot right at specified speed
|
Method: ARC.MovementManager.GoRight( System.Byte, System.Byte ) Turns robot right
|
Method: ARC.MovementManager.Takeoff Robot Takes off (Flying robots)
|
Method: ARC.MovementManager.Land Robot Lands (Flying robots)
|
Method: ARC.MovementManager.GoUp Robot Goes Up (Drone flying robots)
|
Method: ARC.MovementManager.GoDown Robot Goes Down (Drone flying robots)
|
Method: ARC.MovementManager.GoRollRight Robot Rolls Right (Drone flying robots)
|
Method: ARC.MovementManager.GoRollLeft Robot Rolls Left (Drone flying robots)
|
Method: ARC.MovementManager.GoEmergency Instruct robot to execute the emergency mode (if supported) For example, in a drone this will shut off the motors (EAK!)
|
Method: ARC.MovementManager.GoCustom( System.String, System.Byte, System.Byte ) To use a custom movement with your own Movement ID The movement ID from the OnMovement events can be read with GetCustomMovementId This is if you wanted to have your own movement handled by the movement manager
|
Method: ARC.MovementManager.GoCustom( System.String, System.Byte ) To use a custom movement with your own Movement ID The movement ID from the OnMovement events can be read with GetCustomMovementId This is if you wanted to have your own movement handled by the movement manager
|
Method: ARC.MovementManager.GoCustom( System.String ) To use a custom movement with your own Movement ID The movement ID from the OnMovement events can be read with GetCustomMovementId This is if you wanted to have your own movement handled by the movement manager
|
|
Scripting |
Event: ARC.Scripting.JavaScript.JavascriptEngine.OnSetValues Event to set custom values, methods, etc to the JavaScript engine
|
Event: ARC.Scripting.JavaScript.JavascriptEngine.OnUnsetValues Event to remove custom values, methods, etc from the JavaScript engine
|
Method: ARC.Scripting.JavaScript.JavascriptEngine.GetMethodsFromReflectionForIntellisense( System.String ) Get all intellisense
|
Method: ARC.Scripting.ParseUtilities.ToBoolean( System.Object ) Checks if the inObj is a boolean. Looks for "true", "false", "0", or "1" This is useful when parsing parameters for the ControlCommand (i.e. SendCommand override)
|
Method: ARC.Scripting.Python.PythonEngine.GetMethodsFromReflectionForIntellisense( System.String ) Get all intellisense
|
Event: ARC.Scripting.ScriptEngineBase.OnStart Event executed when a script has been started
|
Event: ARC.Scripting.ScriptEngineBase.OnDone Event executed when the script has completed executing
|
Event: ARC.Scripting.ScriptEngineBase.OnResult Event executed for the output of the script. For example the PRINT() statement
|
Event: ARC.Scripting.ScriptEngineBase.OnError Event executed when a script has been started
|
Method: ARC.Scripting.EZScript.ScriptEngineEZScript.StartScriptASync( System.String ) Start the script in the background
|
Method: ARC.Scripting.EZScript.ScriptEngineEZScript.StartScriptBlocking( System.String ) Execute the script and block until it has completed
|
Event: ARC.Scripting.ScriptManager.OnAdded Event raised when a new executor is created
|
Event: ARC.Scripting.ScriptManager.OnRemoved Event raised when an executor is removed. The executor is disposed after this event.
|
Method: ARC.Scripting.ScriptManager.AddCompiler( ARC.Scripting.Executor ) Add an executor to the collection manually
|
Method: ARC.Scripting.ScriptManager.DoesExecutorExist( System.String ) Returns true/false if the executor name exists in the collection
|
Method: ARC.Scripting.ScriptManager.GetExecutor( System.String ) Gets a reference to the executor specified by name, otherwise creates a new one and adds to the collection
|
Method: ARC.Scripting.ScriptManager.ClearAllExecutors Stops scripts, clears all executors in the collection and disposes them
|
Method: ARC.Scripting.ScriptManager.RemoveExecutor( ARC.Scripting.Executor ) Removes the executor from the collection and disposes it
|
Method: ARC.Scripting.ScriptManager.RemoveExecutor( System.String ) Removes the executor from the collection and disposes it
|
Type: ARC.Scripting.VariableManager Variable Manager is a static instance which stores all variables in the environment. Variables come in two types: 1) Normal variable (i.e. $x = 1) 2) Array (i.e. $x[2] = 1) Variables accept two data types for values: 1) String ("hello world") 2) Numeric (-2.31) When storing a string variable value, never specify start/end quotes on the string. This module will take care of that for you. Variable values may contain escape characters: 1) \r 2) \n 3) \"
|
Event: ARC.Scripting.VariableManager.OnVariableChanged Event raised when a value of a variable has been changed. If the variable is an array, the index will be populated with a value greater than 0 If the variable is not an array, the index will be -1 If you want the variable type, use the OnVariableChanged2 event
|
Event: ARC.Scripting.VariableManager.OnVariableChanged2 Event raised when a value of a variable has been changed. If the variable is an array, the index will be populated with a value greater than 0 If the variable is not an array, the index will be -1
|
Type: ARC.Scripting.VariableManager.VariableTypeCls This is a variable entry, which contains the variable name and the value. The value can either be String or Numeric, which is determined inside of SetValue(). SetValue() will check to see if the value is a number, if so, it will be stored as such and no quotes will be wrapped around it If the value is a string, the SetValue() will automatically wrap quotes around it. *Note: Do not ever wrap your own strings in quotes!
|
Method: ARC.Scripting.VariableManager.VariableTypeCls.SetValue( System.Object ) *Note: Never wrap the value in quotes. This function will wrap the string in quotes for you. Also note that your string must have escaped characters (\r, \n, \")
|
Method: ARC.Scripting.VariableManager.SubsituteWithValues( System.Object ) If you pass a string into here, it will replace all instances of known $variables with their appropiate value
|
Method: ARC.Scripting.VariableManager.GetVariable( System.String ) Get the value of a variable
|
Method: ARC.Scripting.VariableManager.GetVariable( System.String, System.Int32 ) Get the value of a variable array by the specified index
|
Method: ARC.Scripting.VariableManager.SetVariable( System.String, System.Boolean ) Set the value of a variable
|
Method: ARC.Scripting.VariableManager.IsVariableReservedWord( System.String ) Throws an esception if the variableName is a reserved word (i.e. $date, $month, $year, etc) This will also throw an exception if the variable does not start with a $
|
Method: ARC.Scripting.VariableManager.DoesVariableExist( System.String ) Check if a variable has been defined in memory
|
Method: ARC.Scripting.VariableManager.IsVariableArray( System.String ) Is the variable an array?
|
Method: ARC.Scripting.VariableManager.SetVariable( System.String, System.Object ) Set the value of a variable
|
Method: ARC.Scripting.VariableManager.CreateVariableArray( System.String, System.Int32 ) Create an array with empty values in every position of Size
|
Method: ARC.Scripting.VariableManager.CreateVariableArray( System.String, System.Object, System.Int32 ) Create an array with default value in every position of Size
|
Method: ARC.Scripting.VariableManager.CreateVariableArray``1( System.String, ``0[] ) Create an array with specified data
|
Method: ARC.Scripting.VariableManager.FillVariableArray( System.String, System.Object ) Fill an entire array with the specified value
|
Method: ARC.Scripting.VariableManager.GetArraySize( System.String ) Returns the length of an array
|
Method: ARC.Scripting.VariableManager.AppendToVariableArray( System.String, System.Object ) Grows the size of an array by 1 and adds this value to it. You will need to CreateArray() before this can be used
|
Method: ARC.Scripting.VariableManager.SetVariable( System.String, System.Object, System.Int32 ) Set the value of a variable within an array at the specified index You will need to CreateArray before this can be called on a variable
|
Method: ARC.Scripting.VariableManager.DumpVariablesToString Write all variables to a string for debugging purposes
|
Method: ARC.Scripting.VariableManager.ClearVariable( System.String ) Clear specified variable and value from memory
|
Method: ARC.Scripting.VariableManager.ClearVariables Clears all variables and associated values from memory Sets the default variables (i.e. movement, ezbsound, navigation status)
|
Method: ARC.Scripting.VariableManager.IsVariableValid( System.String ) Throws an exception with the formatting error of a variable name
|
Field: ARC.Scripting.Executor._textBox For logging
|
Event: ARC.Scripting.Executor.OnStart Event executed when a script has been started
|
Event: ARC.Scripting.Executor.OnDone Event executed when the script has completed executing
|
Event: ARC.Scripting.Executor.OnResult Event executed for the output of the script. For example the PRINT() statement
|
Event: ARC.Scripting.Executor.OnError Event executed when a script has been started
|
Method: ARC.Scripting.Executor.BindOutputToTextBox( System.Windows.Forms.TextBox ) Binds the output (debug, errors, start, end, result) to a textbox
|
|
Renderer |
Method: ARC.Renderer.ThemeRenderer.ApplyTheme( System.Drawing.Color, System.Windows.Forms.Control[] ) Apply the theme to the control. This can only be called once. There's no need for you to call this, because it's called by the ARC control manager automatically. You can provide a list of controls to ignore, and the theme won't be added to them You can also add SkipTheme to the TAG element of any WinForms control to skip theming of that control and children.
|
Method: ARC.Renderer.ThemeRenderer.ApplyTheme( System.Windows.Forms.Control[] ) Apply the theme to the control. This can only be called once. There's no need for you to call this, because it's called by the ARC control manager automatically. You can provide a list of controls to ignore, and the theme won't be added to them You can also add SkipTheme to the TAG element of any WinForms control to skip theming of that control and children.
|
Method: ARC.Renderer.ThemeRenderer.ApplyTheme Apply the theme to the control/form using the default settings of the registry theme.
|
Method: ARC.Renderer.ThemeRenderer.ApplyTheme( System.Drawing.Color ) Apply the theme to the control. This can only be called once. There's no need for you to call this, because it's called by the ARC control manager automatically. You can also add SkipTheme to the TAG element of any WinForms control to skip theming of that control and children.
|
|
Services |
Type: ARC.Services.AutoPosition.AutoPositionService This is auto position engine which the Auto Position control uses. You can define servos, frames and actions for this. This will run the auto position action in a background thread.
|
Event: ARC.Services.AutoPosition.AutoPositionService.OnComplete Event risen when movement is complete
|
Event: ARC.Services.AutoPosition.AutoPositionService.OnStartAction Event risen when an action is started
|
Event: ARC.Services.AutoPosition.AutoPositionService.OnStartFrame Event risen when a frame is started
|
Field: ARC.Services.AutoPosition.AutoPositionService.Config Set/Get the current configuration of Frames and Actions
|
Field: ARC.Services.AutoPosition.AutoPositionService.Name Unique name for this auto position instance
|
Method: ARC.Services.AutoPosition.AutoPositionService.SetSpeed( System.Byte ) Value between 0-255 (0=slow, 255=fast)
|
Method: ARC.Services.AutoPosition.AutoPositionService.RequireInit Set the require init flag so that the next time a transition is requested, it initializes the servos first.
|
Method: ARC.Services.AutoPosition.AutoPositionService.Stop Stops the current movement. Blocks until stop is successful.
|
Method: ARC.Services.AutoPosition.AutoPositionService.MoveImmediate( System.String ) Move to the specified frame
|
Method: ARC.Services.AutoPosition.AutoPositionService.MoveToFrame( ARC.Services.AutoPosition.AutoPositionActionFrame ) Move into the selected position from the current position
|
Method: ARC.Services.AutoPosition.AutoPositionService.MoveToFrame( System.String, System.Int32, System.Int32, System.Int32, System.Int32, System.Int32 ) Move into the selected position from the current position
|
Method: ARC.Services.AutoPosition.AutoPositionService.ExecAction( System.String ) Execute the Action
|
Method: ARC.Services.AutoPosition.AutoPositionService.ExecAction( ARC.Services.AutoPosition.AutoPositionAction.ActionTypeEnum ) Execute the Action
|
Method: ARC.Services.AutoPosition.AutoPositionService.AddPauseToNewAction( System.String, System.Int32 ) Add a pause frame to the specified action title with the number of milliscond delay. If the action doesn't exist, it will be created for you. This returns new action if it was created, or the old action that matched the name.
|
Method: ARC.Services.AutoPosition.AutoPositionService.AddAllServoPositionsToNewAction( System.String ) Read all of the servo positions that are defined in this auto position and add those positions to a new action as a new frame. This returns the new action or the existing action that matched the title.
|
Method: ARC.Services.AutoPosition.AutoPositionService.AddAllServoPositionsToNewAction( System.String, System.Int32, System.Int32, System.Int32, System.Int32, System.Int32 ) Read all of the servo positions that are defined in this auto position and add those positions to a new action as a new frame. This returns the new action or the existing action that matched the title.
|
Method: ARC.Services.AutoPosition.AutoPositionAction.ToString Returns the title of this action as a string
|
Method: ARC.Services.AutoPosition.AutoPositionConfig.AddFrame( ARC.Services.AutoPosition.AutoPositionFrame ) Add a frame to the list of frames. Returns the GUID of the frame
|
Method: ARC.Services.AutoPosition.AutoPositionConfig.AddFrame( System.String ) Add a frame to the list of frames. Returns the GUID of the frame
|
Method: ARC.Services.AutoPosition.AutoPositionConfig.AddFrame( System.String, System.String ) Add a frame to the list of frames. Returns the GUID of the frame
|
Method: ARC.Services.AutoPosition.AutoPositionConfig.AddFrame( System.String, System.String, System.Int32[] ) Add a frame to the list of frames. Returns the GUID of the frame
|
Method: ARC.Services.AutoPosition.AutoPositionConfig.AddFrame( System.String, System.Int32[] ) Add a frame to the list of frames. Returns the GUID of the frame
|
Method: ARC.Services.AutoPosition.AutoPositionConfig.GetUniqueFrameTitle( System.String ) Get a unique frame title by adding a number to the end
|
Method: ARC.Services.AutoPosition.AutoPositionConfig.AddAction( ARC.Services.AutoPosition.AutoPositionAction ) Add an action to the list of actions. Returns the GUID of the action
|
|
TimerSmart |
Event: ARC.TimerSmart.Elapsed Synthiam smart timer - only allow once execution of an elapsed event at one time - offers an IsEventRunning to know if an evnet is currently being executed from another thread - offers IsTimerActive to know if the timer is actively running
|
Method: ARC.TimerSmart.Start Starts the timer. If timer is already running, it will not run another. This will gracefully exit if a timer is already running.
|
|
Common |
Method: ARC.Common.SerializeObjectString( System.Object ) Serialize the object to an xml string
|
Method: ARC.Common.SerializeObjectString( System.Object, System.Type ) Serialize object to an xml string
|
Method: ARC.Common.SerializeObjectCompressed( System.Object ) Serialize object to an xml string compressed with gzipStream
|
Method: ARC.Common.SerializeObjectCompressed( System.Object, System.Type ) Serialize object to an xml string compressed with gzipStream
|
Method: ARC.Common.SerializeObjectCompressed( System.String, System.Object ) Serialize object to an xml file compressed with gzipStream
|
Method: ARC.Common.SerializeObjectFile( System.String, System.Object ) Serialize object to an xml file compressed with gzipStream
|
Method: ARC.Common.DeserializeObjectFile( System.String, System.Type ) Return the specified type of object deserialized from a file containing xml string
|
Method: ARC.Common.DeserializeObjectCompressed( System.String, System.Type ) Return the specified type of object deserialized from a gzip file containing xml string
|
Method: ARC.Common.DeserializeObjectCompressed( System.Byte[], System.Type ) Return the specified type of object deserialized from a gzip byte array
|
Method: ARC.Common.DeserializeObjectString( System.String, System.Type ) Deserialize xml string to specified object type
|
Method: ARC.Common.IsAlpha( System.Object ) Is the value a string by containing letters or anything other than digits
|
Method: ARC.Common.IsNumeric( System.Object ) Is the value a number Will also check for decimal point and minus sign
|
Method: ARC.Common.IsApplicationAlreadyRunning Check if ARC is already running
|
Method: ARC.Common.GetNumbersFromString( System.String ) Get only the numbers from a string Returns 0 if no numbers are detected
|
Method: ARC.Common.GetNumbersFromString( System.String, System.Int32 ) Get only the numbers from a string Returns default if no numbers are detected
|
Method: ARC.Common.GetDecimalFromString( System.String ) Extract the decimal value from a string
|
Method: ARC.Common.GetListFromArray( System.String[] ) Joins the inArray strings into a comma separated string
|
Method: ARC.Common.IsUpdateAvailable( System.String ) Compares the newVersion against the current version of the software and returns whether they're the same
|
Method: ARC.Common.IsUpdateAvailable Checks the synthiam.com server to see if there is a newer version of software available.
|
Method: ARC.Common.LatestUpdateVersion Returns the most recent software version available from the synthiam.com website.
|
Method: ARC.Common.StrRemoveToEnd( System.String, System.Char, System.Boolean ) Removes all characters from the last instance of the specified string in the input string to the end of input string
|
Method: ARC.Common.StrRemoveToStart( System.String, System.Char, System.Boolean ) Removes all characters from the first instance of the specified character in the input string to the beginning of the input string
|
Method: ARC.Common.StartsWithAlphaCharacter( System.String ) Returns true if the first character of the input data is an alphabet character (i.e. A-Z or a-z)
|
Method: ARC.Common.StrStartsWithWord( System.String, System.String ) Returns true if the string starts with the specified word. Checks for Word by checking if the next character after the word are valid characters
|
Method: ARC.Common.RenameRegistrySubKey( Microsoft.Win32.RegistryKey, System.String, System.String ) Renames a subkey of the passed in registry key since the Framework totally forgot to include such a handy feature.
|
Method: ARC.Common.CopyRegistryKey( Microsoft.Win32.RegistryKey, System.String, System.String ) Copy a registry key. The parentKey must be writeable.
|
Method: ARC.Common.RegistryRecurseCopyKey( Microsoft.Win32.RegistryKey, Microsoft.Win32.RegistryKey ) Copy a key and it's children to another key recursively
|
Method: ARC.Common.BitmapClone( System.Drawing.Bitmap ) Makes a deep clone of the bitmap image
|
Method: ARC.Common.BitmapGetFromByteArray( System.Byte[], System.Boolean ) Convert an array of bytes into a bitmap image. The conversion is done with a memorystream. You can specify to dispose of that stream. If you dispose of the stream, bewarned of the issues it will cause. The original stream should stay with the lifetime of the bitmap.
|
Type: ARC.Common.WebResponseCls Response from the v2 instances of Common.GetWebResponseV2 and Async version
|
Field: ARC.Common.WebResponseCls.Response The response from the server
|
Field: ARC.Common.WebResponseCls.Message Message the describes the error exception (if one exists)
|
Field: ARC.Common.WebResponseCls.Status The status of the response
|
Method: ARC.Common.GetWebResponseAsyncV2( System.String ) Get the data from a web request using default ARC timeout
|
Method: ARC.Common.GetWebResponseAsyncV2( System.String, System.Int32 ) Get the data from a web request
|
Method: ARC.Common.GetWebResponseAsync( System.String ) Get the data from a web request using default ARC timeout
|
Method: ARC.Common.GetWebResponseAsync( System.String, System.Int32 ) Get the data from a web request
|
Method: ARC.Common.GetWebResponseV2( System.String ) Get the data from a web request using ARC default timeout
|
Method: ARC.Common.GetWebResponseV2( System.String, System.Int32 ) Get the data from a web request
|
Method: ARC.Common.GetWebResponse( System.String ) Get the data from a web request
|
Method: ARC.Common.GetWebResponse( System.String, System.Int32 ) Get the data from a web request
|
Method: ARC.Common.PostWebResponse( System.String, System.String ) Post data to a web url as content type application/x-www-form-urlencoded
|
Method: ARC.Common.PostWebResponse( System.String, System.String, System.Int32 ) Post data to a web url as content type application/x-www-form-urlencoded
|
Method: ARC.Common.PostWebResponse( System.String, System.String, System.Int32, System.String[], System.String[] ) Post data to a web url as content type application/x-www-form-urlencoded
|
Method: ARC.Common.IsInternetConnected Check if there is a valid connection to the synthiam website
|
Method: ARC.Common.IsInternetConnectedAsync Check if there is a valid connection to the synthiam website
|
Method: ARC.Common.GetRemoteIPAddress Query the web service to get the ip address of this machine
|
Method: ARC.Common.SplitOnlyOnce( System.String, System.Char ) Splits only the first instance of the character
|
Method: ARC.Common.GetTextBetween( System.String, System.String@, System.Char, System.Char ) Returns the text between the start and end token
|
Method: ARC.Common.Min( System.Double[] ) Returns the minimal value of the list
|
Method: ARC.Common.MaxOrDefault( System.Object, System.Int32 ) Returns the higher of the two values Returns the default value if InVal is invalid type of INT You don't need to cast the inVal, it'll be done within this method So you can pass a string and it'll parse it (or try to) If it can't parse it, it'll return the defaultVal
|
Method: ARC.Common.Max( System.Double[] ) Returns the maximum value of the list
|
Method: ARC.Common.DecompressToStr( System.Byte[] ) decompress array of bytes to string
|
Method: ARC.Common.DecompressToFile( System.Byte[], System.String ) decompress array of bytes
|
Method: ARC.Common.Decompress( System.Byte[] ) decompress array of bytes
|
Method: ARC.Common.CompressToFile( System.IO.Stream, System.String ) compress array of bytes
|
Method: ARC.Common.CompressFromFile( System.String ) compress array of bytes
|
Method: ARC.Common.Compress( System.Byte[] ) compress array of bytes
|
Method: ARC.Common.Compress( System.IO.Stream ) compress array of bytes
|
Method: ARC.Common.GetEnumeratorTypeFromString( System.Type, System.String ) Returns the enumerator type that matches the string
|
Method: ARC.Common.GetBytes( System.String ) Converts a string into a byte array. The sytem.encoding will remove any bytes above 127, this will not
|
Method: ARC.Common.GetString( System.Byte[] ) Converts an array of bytes into a string - but uses extended ascii (8 bit) instead of 7 bit
|
Method: ARC.Common.GetTextUntilOrEmpty( System.String, System.String, System.Boolean ) Get text from beginning of string up until the stopAt character/string Returns empty string if the character is not found
|
Method: ARC.Common.TextEncode( System.String ) Performs an HtmlEncode on the text
|
Method: ARC.Common.TextDecode( System.String ) PErforms an HtmlDecode on the text
|
Method: ARC.Common.GetValueFromHexString( System.String ) Returns the byte value of the hex string (ie 0xa0), or numeric. Size if of byte
|
Method: ARC.Common.GetInvertedColorToGreyScale( System.Drawing.Color, System.Int32, System.Int32 ) Return the invert of the specified color minBrightness and maxBrightness are between 0-255 and that's the hard limit for the returned value
|
Method: ARC.Common.GetInvertedColorToGreyScale( System.Drawing.Color, System.Boolean, System.Int32, System.Int32 ) Return the invert of the specified color If absolute is specified, the value will be either black or white but no transisition minBrightness and maxBrightness are between 0-255 and that's the hard limit for the returned value
|
Method: ARC.Common.ChangeColorBrightness( System.Drawing.Color, System.Single ) Brighten the color by percentage (-1 to 0 to +1) Negative value is darker, positive value is lighter
|
Method: ARC.Common.ChangeControlsRecursiveColor( System.Windows.Forms.Control, System.Drawing.Color, System.Drawing.Color, System.Windows.Forms.Control[] ) Recursive change the top control and all children controls of the specified topControl to the specified colors. If you do not wish to set a color, set it to null and it will be skipped This will not suspend the layout
|
Method: ARC.Common.ChangeChildrenControlsRecursiveColor( System.Windows.Forms.Control, System.Drawing.Color, System.Drawing.Color, System.Windows.Forms.Control[] ) Recursive change only children controls of the specified topControl to the specified colors. This does not change the color of the topControl, only the children. If you do not wish to set a color, set it to null and it will be skipped This will not suspend the layout
|
Method: ARC.Common.ChangeColorBrightness2( System.Drawing.Color, System.Single ) Brighten the color by percentage (-1 to 0 to +1) Negative value is darker, positive value is lighter
|
Method: ARC.Common.Quote( System.Object ) Quote the input value if it's a string. Keep it alone if it's a number Internal quotes are escaped If there are starting and ending quotes, additional quoting will be ignored
|
Method: ARC.Common.CopyDirectory( System.String, System.String, System.Boolean ) Copy the contents of source directory into the dest directory
|
Method: ARC.Common.IsFileLocked( System.String ) Is the file locked (i.e. used elsewhere)
|
Method: ARC.Common.IsFileLocked( System.IO.FileInfo ) Is the file locked (i.e. used elsewhere)
|
Method: ARC.Common.DeepCopy``1( ``0 ) Copies/clones a serializable class as a deep copy. Meaning, the two are unreleated.
|
Method: ARC.Common.MD5Encrypt( System.String ) Return md5 hashed string of input string
|
Method: ARC.Common.MD5Encrypt( System.Byte[] ) Return md5 hashed string of input string
|
Method: ARC.Common.MD5Encrypt( System.IO.Stream ) Return md5 hashed string of input string
|
Method: ARC.Common.ShutDownPC Shuts down the computer without prompting to save project or anything
|
Method: ARC.Common.GetSizeOfFolder( System.IO.DirectoryInfo, System.Boolean ) Get size of folder in bytes
|
|
Constants |
Field: ARC.Constants.MOUSE_DRAG_SENSITIVITY_NORMAL The default mouse drag sensitivity for the slide up and down number boxes
|
Field: ARC.Constants.MOUSE_DRAG_SENSITIVITY_SHIFT The default mouse drag sensitivity for the slide up and down number boxes when shift is held
|
Field: ARC.Constants.GET_WEB_RESPONSE_TIMEOUT_MS Default timeout value for get and post web calls. This can be overriden in the registry with key 'GetWebResponseTimeoutMS'
|
Field: ARC.Constants.WEB_SERVICE_TIMEOUT The default timeout for web service calls in the web service wrapper. Can be overridden with registery key 'WebServiceTimeoutMS'
|
Field: ARC.Constants.DEFAULT_FOLDER The My Documents\ARC
|
Field: ARC.Constants.DEFAULT_APPLICATION_FOLDER The ProgramData\ARC
|
Field: ARC.Constants.DEFAULT_PROJECT_FOLDER My Documents\ARC\My Projects
|
Field: ARC.Constants.PROJECT_BACKUP_FOLDER My Documents\ARC\Projects Backups
|
Field: ARC.Constants.EZ_BITS_STL_SAVE_FOLDER My Documents\ARC\My STL Files
|
Field: ARC.Constants.DEFAULT_USER_LOGS_FOLDER My Documents\ARC\Logs
|
Field: ARC.Constants.SERVO_PROFILES_FOLDER My Documents\ARC\Servo Profiles
|
Field: ARC.Constants.AUTO_POSITIONS_FOLDER My Documents\ARC\Auto Positions
|
Field: ARC.Constants.HTTP_SERVER_CUSTOM_FOLDER My Documents\ARC\HTTP Server Root
|
Field: ARC.Constants.PROJECT_HISTORY_FILE My Documents\ARC\ProjectHistory.txt
|
Field: ARC.Constants.RECENT_SKILLS_FILE My Documents\ARC\SkillHistory.txt
|
Field: ARC.Constants.BEHAVIOR_CONTROL_PROJECT_FOLDER My Documents\ARC\Behavior Control Projects
|
Field: ARC.Constants.ARC_INSTALLATION_FOLDER Where ARC is installed (ie Program Files (x86)\Synthiam Inc.\ARC by Synthiam
|
Field: ARC.Constants.TEMP_FOLDER C:\Users\[current user]\AppData\Local\Temp\ARC
|
Field: ARC.Constants.DEFAULT_PROJECT_EXAMPLES_FOLDER ProgramData\ARC\Examples
|
Field: ARC.Constants.EZ_BITS_CACHE_FOLDER ProgramData\ARC\EZ-Bits v2
|
Field: ARC.Constants.DEFAULT_LOGS_FOLDER ProgramData\ARC\Logs
|
Field: ARC.Constants.FIRMWARE_XML_FILE ProgramData\ARC\firmwares.xml
|
Field: ARC.Constants.TEAMS_KNOWN_ISSUES_FILE Copy of the known issues file from the web. Updated for Teams during start-up if there is an internet connection.
|
Field: ARC.Constants.MEDIA_SAVE_FOLDER My Pictures\My Robot Pictures
|
Field: ARC.Constants.EZ_ROBOT The project configuration. This is the only part of the project that is static and can be referenced while a project is loaded. All other parts of a project configuration are serialized from the controls. This holds the theme inforamtion, such as wallpaper, project filename, ezbits, etc..
|
|
EZBManager |
Type: ARC.EZBManager The main manager for communicating with EZ-B's using many provided helpers.
|
Event: ARC.EZBManager.OnConnectionChange Event risen when connection to any ezb changes
|
Field: ARC.EZBManager.EZBuilderLoadedDateTime Time that EZ-Builder was first loaded.
|
Field: ARC.EZBManager.AudioManager The audio manager provides audio functions for recording and playing back audio. To be friendly on resources, controls can share these methods and events.
|
Method: ARC.EZBManager.Log( System.Object, System.Object[] ) The global log is useful to notify the user of an error or message. This popups up a dialog at the bottom of the workspace for a few seconds with the debug message. This also logs the message to the log file in the user's My Documents\EZ-Builder folder.
|
Field: ARC.EZBManager.MovementManager The movement panels control physical locomotion of the robot. The locomotion is handled through this movement class. The locomotion of a robot is _ALWAYS_ the first EZ-B index in the list. Your custom movement panel will obtain movement direction changes from this class.
|
Method: ARC.EZBManager.ClearEZBs Clear all EZBs from the EZBs list above 5. This will not clear the EZ-B's on index 0-4 (the first 5). There will always be at least 5 EZ-B's.
|
Method: ARC.EZBManager.AddEZBToList( System.String ) Add an ezb and return the new index. The EZBs can be referenced from the EZBs list. The ID should be unique
|
Method: ARC.EZBManager.RemoveLastEZBInList Remove the last ezb from the list
|
Method: ARC.EZBManager.GetPing( System.String, System.String ) Get the distance returned by the ping distance sensor. This accepts a string port in the format of D2, D3, etc. Or 1.D3 or 3.D5 if specifying the EZ-B, such as with EZ-Script.
|
Method: ARC.EZBManager.SetPWM( System.String, System.Int32 ) Sets the PWM output on the specified port. This accepts a string port in the format of D2, D3, etc. Or 1.D3 or 3.D5 if specifying the EZ-B, such as with EZ-Script.
|
Method: ARC.EZBManager.GetServoSpeed( System.String ) Get the current servo speed that was set for the specified port. This accepts a string port in the format of D2, D3, etc. Or 1.D3 or 3.D5 if specifying the EZ-B, such as with EZ-Script.
|
Method: ARC.EZBManager.GetPWM( System.String ) Get the current PWM of the specified port. This accepts a string port in the format of D2, D3, etc. Or 1.D3 or 3.D5 if specifying the EZ-B, such as with EZ-Script.
|
Method: ARC.EZBManager.SetServoSpeed( System.String, System.Int32 ) Sets the servo speed on the specified port. This accepts a string port in the format of D2, D3, etc. Or 1.D3 or 3.D5 if specifying the EZ-B, such as with EZ-Script.
|
Method: ARC.EZBManager.SetServoPosition( System.String, System.Int32 ) Sets the servo absolutely position on the specified. This accepts a servo port This accepts a string port in the format of D2, D3, etc. Or 1.D3 or 3.D5 if specifying the EZ-B, such as with EZ-Script.
|
Method: ARC.EZBManager.SetServoMaxLimit( System.String, System.Int32 ) Sets the maximum servo limit of the specified servo port. This accepts a string port in the format of D2, D3, etc. Or 1.D3 or 3.D5 if specifying the EZ-B, such as with EZ-Script.
|
Method: ARC.EZBManager.SetServoMinLimit( System.String, System.Int32 ) Sets the mininum servo limit on the specified port. This accepts a string port in the format of D2, D3, etc. Or 1.D3 or 3.D5 if specifying the EZ-B, such as with EZ-Script.
|
Method: ARC.EZBManager.SetReleaseServo( System.String ) Release servo from it's holdling position. This accepts the port by string such as D0, D3 or 3.D5 or 5.D2
|
Method: ARC.EZBManager.GetServoPosition( System.String ) Get the position of the servo specified by the port as a string. For example, this can be D3, D5, 2.D2, 3.D5, etc.. This is the last position the servo was instructed to move to, not the position of the servo if you manually moved it with your hand. OR you can also use GetServoPositionRealtime() if the servo is a smart servo, such as Dynamixel.
|
Method: ARC.EZBManager.GetServoPositionRealtime( System.String ) Get the position of the Smart servo specified by the port as a string. For example, this can be V3, V5, 2.V5 or 4.V34, etc... This only works on Virtual servos and will throw an exception otherwise. The virtual servo must support this ability otherwise an exception will be thrown.
|
Method: ARC.EZBManager.SetDigital( System.String, System.Boolean ) Sets the digital port output to the specified value. This supports the port to be in the string format, such as D3, D6, 3.D8, etc...
|
Method: ARC.EZBManager.SetDigital( System.Int32, EZ_B.Digital.DigitalPortEnum, System.Boolean ) Sets the digital port to the specified value.
|
Method: ARC.EZBManager.GetDigital( System.String ) Get the digtial port status. This supports the port to be in the string format, such as D3, D6, 3.D8, etc...
|
Method: ARC.EZBManager.GetADC12Bit( System.String ) Get the ADC in 12 bit resolution This supports the port to be in the string format, such as A1, A2, 3.A3, etc...
|
Method: ARC.EZBManager.GetADC( System.String ) Get the ADC in 8 bit resolution This supports the port to be in the string format, such as A1, A2, 3.A3, etc...
|
Method: ARC.EZBManager.SendSerial( System.String, EZ_B.Uart.BAUD_RATE_ENUM, System.Byte[] ) Transmit serial data out of the specified digital port, if supported by the hardward This supports the port to be in the string format, such as A1, A2, 3.A3, etc...
|
|
Invokers |
Type: ARC.Invokers It's standard to run intensive processes in separate thread than the UI. This means you can't simply modify the UI thread objects from another thread. This class contains a lot of threadsafe functions to Get/Set properties of UI objects.
|
|
FormMain |
Type: ARC.FormMain The FormMain is the user interface controller for the control framework. In here are commands to find controls, details of the current project, access the desktop manager, and more.
|
Field: ARC.FormMain._ProjectFilename The current project that is loaded.
|
Field: ARC.FormMain._LastOpenFolder The last folder that was opened from the FormOpenEZB
|
Field: ARC.FormMain._IS_CLOSING_PROJECT Is the project or application closing? This is mostly used for controls to close without prompting the user. You can handle this in your code if you have any loops or timers that need to know if the project or application is closing.
|
Field: ARC.FormMain._IS_CLOSING_APP Is the application closing?
|
Field: ARC.FormMain.MovementPanel The current movement panel registered with the project. There can only be one movement panel, so this should be null if there isn't one, or have a reference to it if there is one. If you create a movement panel, you must register it here, and you must set this to null when your control closes.
|
Field: ARC.FormMain.ucControls This is the object that hosts the virtual desktops and all of the controls.
|
Type: ARC.FormMain.OnProjectLoadCompletedHandler Event raised after a project has completely loaded all skill controls. If you're control is looking to bind to another control, find the control in this event. If you attempt to look for a control (i.e. camera) during constructor or SetConfiguration, the other control may not have loaded from the config yet. This event is raised after all of the controls have been loaded to the workspace
|
Event: ARC.FormMain.OnProjectLoadCompleted Event raised after a project has completely loaded all skill controls. If you're control is looking to bind to another control, find the control in this event. If you attempt to look for a control (i.e. camera) during constructor or SetConfiguration, the other control may not have loaded from the config yet. This event is raised after all of the controls have been loaded to the workspace
|
Type: ARC.FormMain.OnBehaviorControlAddedHandler Event raised when a control is added to the workspace. This could be during the project load event, or if a user uses the Add Control menu. If you're wanting to keep track of new controls added to the workspace, this is how to do it. However, if you're expecting a control to exist when a project is loaded, look into OnProjectLoadCompleted event. Look into OnBehaviorControlRemoved as well
|
Event: ARC.FormMain.OnBehaviorControlAdded Event raised when a control is added to the workspace. This could be during the project load event, or if a user uses the Add Control menu. If you're wanting to keep track of new controls added to the workspace, this is how to do it. However, if you're expecting a control to exist when a project is loaded, look into OnProjectLoadCompleted event. Look into OnBehaviorControlRemoved as well
|
Event: ARC.FormMain.OnPanicReleaseServosPressed There is a button on the Options tab of the main menu ribbon bar for PANIC RELEASE/STOP SERVOS If that button is pressed, this event is triggered. Your control can respond to it if necessary. Such as, stop the functions or stop what you're doing. It's a panic stop all type scenario triggered by the user.
|
Type: ARC.FormMain.OnPanicReleaseServosPressedHandler There is a button on the Options tab of the main menu ribbon bar for PANIC RELEASE/STOP SERVOS If that button is pressed, this event is triggered. Your control can respond to it if necessary. Such as, stop the functions or stop what you're doing. It's a panic stop all type scenario triggered by the user.
|
Method: ARC.FormMain.SoundV4_OnStopPlaying Sets the $EZBPlayingAudio variable to false
|
Method: ARC.FormMain.Movement_OnMovement( ARC.MovementManager.MovementDirectionEnum ) Sets the $Direction movement variable to the specified direction.
|
Method: ARC.FormMain.NewProject Closes the current project and creates a new empty blank project
|
Method: ARC.FormMain.MenuClick_Open( System.Object ) Opens the FormOpenEZB dialog at the location of the _LastOpenFolder. If a project is specified, it loads the project.
|
Method: ARC.FormMain.OpenProject( System.String ) Open the specified project and close the existing project
|
Method: ARC.FormMain.SendFormCommand( System.String, System.String, System.String[] ) Send a ControlCommand() to the specified control on any desktop.
|
Method: ARC.FormMain.GetFormValue( System.String, System.String, System.Object ) Returns a value if the control supports it. The control must have an override for GetValue(string value). If so, you can query the value from a window with this.
|
Method: ARC.FormMain.SetupProject( System.String ) Loads the project into the existing project and does not clear the existing project. This means it merely sets up the projects by loading the controls and configuration. If you want to load a project, then use the LoadProject() method. The filename will be loaded as and parsed into a project.
|
Method: ARC.FormMain.DoesFormTypeAlreadyExist( System.Type[] ) Does the type of form or control exist? Use this if you're looking to see if a control has already been added to a form. For example, you can check if a typeof(FormCameraDevice) exists.
|
Method: ARC.FormMain.DoesMovementPanelExist Becuase only one movement panel can exist on a project at once, this returns if a movement panel has been registered in MovementPanel.
|
Method: ARC.FormMain.NewConnection Add a connection control or Show() the connection control that is already on the project. Only one connection control should exist in a project. Having two connection controls will break-down the universe into a obvlivion
|
Method: ARC.FormMain.PanicReleaseStopServos Send a panic/stop/release servos command to all controls that bind to the associated event. If you call this method, the event will be raised and any controls that bind to the event will be responsible to stop their execution. This is a panic mode scenario generated by the user.
|
Method: ARC.FormMain.SetBackgroundColor( System.Drawing.Color ) Sets the background color of the workspace. This won't work if there is already an Image on the workspace. You will need to SetBackgroundImage(null) to see the background color.
|
Method: ARC.FormMain.SetBackgroundImage( System.Drawing.Image ) Sets the background to an image on the workspace. This overrides the background color with the image.
|
Method: ARC.FormMain.SuspendLayoutAllTabs Suspends the layout of all controls in all tabs. This is used when significant layout changes are about to occur. (i.e. moving windows or resizing them, etc). The ResumeLayout MUST be called after you've completed re-arranging the controls.
|
Method: ARC.FormMain.ResumeLayoutAllTabs Resumes the layout event that was suspended with the SuspendLayoutAllTabs()
|
Method: ARC.FormMain.SuspendLayoutCurrentTab Suspends the layout of all controls in the current tab. This is used when significant layout changes are about to occur. (i.e. moving windows or resizing them, etc). The ResumeLayout MUST be called after you've completed re-arranging the controls.
|
Method: ARC.FormMain.ResumeLayoutCurrentTab Resumes the layout event that was suspended with the SuspendLayoutCurrentTabs()
|
Method: ARC.FormMain.AddControl( System.Windows.Forms.Control ) Adds the skill control to the current tab.
|
Method: ARC.FormMain.AddControl( System.Windows.Forms.Control, System.Int32 ) Adds a skill control to the specified page tab. The first virtual desktop is page 0 and so on...
|
Method: ARC.FormMain.AddControl( System.Windows.Forms.Control[], System.Int32 ) Adds skill controls to the specified page tab. The first virtual desktop is page 0 and so on...
|
Method: ARC.FormMain.SmartArrangeSelectedPage( System.Boolean, System.Boolean ) Arranges the skill controls on current page to optimize available screen space effeciently. You can order large to small or opposite. If you're calling this while already suspending the layout, you can also override the suspend layout option with the variable. If you do not ignore the suspend layout yourself, set the variable to false and this method will handle the layout suspension and resume. You may be handling the suspend layout yourself because you're performing a number of workspace changes, in which case you'd want to ignore the suspend layout.
|
Method: ARC.FormMain.SmartArrangeAll( System.Boolean, System.Boolean ) Arranges the skill controls on all pages to optimize available screen space effeciently. You can order large to small or opposite. If you're calling this while already suspending the layout, you can also override the suspend layout option with the variable. If you do not ignore the suspend layout yourself, set the variable to false and this method will handle the layout suspension and resume. You may be handling the suspend layout yourself because you're performing a number of workspace changes, in which case you'd want to ignore the suspend layout.
|
Method: ARC.FormMain.SmartArrange( System.Int32, System.Boolean, System.Boolean ) Arranges the skill controls on specified page to optimize available screen space effeciently. You can order large to small or opposite. Desktop is either 0, 1, or 2 (Desktops supporting controls) If you're calling this while already suspending the layout, you can also override the suspend layout option with the variable. If you do not ignore the suspend layout yourself, set the variable to false and this method will handle the layout suspension and resume. You may be handling the suspend layout yourself because you're performing a number of workspace changes, in which case you'd want to ignore the suspend layout.
|
Method: ARC.FormMain.SmartArrange( System.Windows.Forms.Panel, System.Boolean, System.Boolean ) Arranges the skill controls on specified page to optimize available screen space effeciently. You can order large to small or opposite. If you're calling this while already suspending the layout, you can also override the suspend layout option with the variable. If you do not ignore the suspend layout yourself, set the variable to false and this method will handle the layout suspension and resume. You may be handling the suspend layout yourself because you're performing a number of workspace changes, in which case you'd want to ignore the suspend layout.
|
Method: ARC.FormMain.GetSkillCount( System.Type ) Return the number of all skills that have been added to the project workspace
|
Method: ARC.FormMain.GetSkillCount Return the number of all skills that have been added to the project workspace
|
Method: ARC.FormMain.GetControlCountByNameAllPages( System.String ) Get the number of controls that have the title. This is NOT case sensitive. Meaning, it will count controls and ignore the case
|
Method: ARC.FormMain.GetControlByNameAllPages( System.String ) This will get the control (or first control if there are more than one) with the specified title. This is NOT case sensitive, meaning it any case will be returned.
|
Method: ARC.FormMain.GetControlByType( System.Type ) Get a list of controls that match the type. This is helpful if you're looking for a FormCameraDevice, for example. This searchs all tabs.
|
Method: ARC.FormMain.GetControlsAllPages Returns all controls in the project on all tabs
|
Method: ARC.FormMain.GetControls( System.Windows.Forms.Control ) Gets the controls on the specified tabpage. The page comes from the ucControls workspace manager.
|
Method: ARC.FormMain.GetControls( System.Int32 ) Gets the controls by the specified page index. The first virtual workspace index is 0.
|
Method: ARC.FormMain.GetControlsCurrentPage Gets all controls on the current active workspace.
|
Method: ARC.FormMain.LoadInterfaceBack The last virtual desktop workspace is a full screen mobile app view. This will load the previous workspace in the breadcrumb trail. Essentially it Pops the breadcrum from the stack. When a new interface is displayed with LoadInterfaceByName() or LoadInterfaceByConfiguration(), the current interface is added to the stack. This is like a BACK button to go to the previous interface.
|
Method: ARC.FormMain.LoadInterfaceByName( System.String ) The last virtual desktop workspace is a full screen mobile app view. This will load the mobile interface by the window title into that window and add it to the stack. The previous interface on the stack can be restored with LoadInterfaceBack()
|
Method: ARC.FormMain.CloseFormByType( System.Type[] ) Close the control form by the type. This is useful if you wish to close all forms of a specified type. For example, close all FormCameraDevice.
|
Method: ARC.FormMain.CloseControls( System.Boolean ) Close all controls on all workspace tabs. You can ignore the suspend layout if you're code is handling the layout suspension and resume manually.
|
Method: ARC.FormMain.CloseIntroControls( System.Boolean ) When the software first loads, a number of introduction controls are added to the workspace. These controls are things like Bookmarks, Check for plugins, Check for updates, etc.. This will close those controls.
|
Method: ARC.FormMain.UpdateVirtualDesktopShots The virtual desktop screenshots are displayed in the ribbon menu for accessibility. If the workspace has changed, you acn manually update the screenshot with this method.
|
Method: ARC.FormMain.updateVirtualDesktopButtonsAndScreenshots Make sure the buttons in the menu bar match the count of virtual desktops (adds or removes buttons based on desktop count) Also updates the thumbnails and workspace titles
|
|
URLServiceManager |
Method: ARC.URLServiceManager.ViewUrl( System.Windows.Forms.Control, System.String ) Opens the url in the default browser. Displays a message to the user if no internet connection is discovered
|
Method: ARC.URLServiceManager.ViewUrl( System.Windows.Forms.Control, ARC.URLServiceManager.URLEnum ) Opens the url in the default browser. Displays a message to the user if no internet connection is discovered Returns true if internet otherwise false if no internet
|
|
VAD |
Type: ARC.VAD.ByteBuffer Class for converts among different array types. Inspired with NAudio WaveBuffer class https://github.com/naudio/NAudio
|
Type: ARC.VAD.FFT2 Fft implementation from https://gerrybeauregard.wordpress.com/2011/04/01/an-fft-in-c/
|
Field: ARC.VAD.VoiceActivityDetector.REQUIRED_BUFFER_SIZE 160 samples * 2 bytes per sample
|
|
WebServiceWrappers |
Method: ARC.WebServiceWrappers.Tools.IsProxySetByUser Returns true if the user has configured a proxy server for their installation.
|
Method: ARC.WebServiceWrappers.Tools.GetWebProxy Returns the proxy object that can be used for a webservice or WebRequest
|
Method: ARC.WebServiceWrappers.WebRequest.Create( System.Uri ) Returns an instance of a web request with the proxy server information, if specifeid
|
Method: ARC.WebServiceWrappers.WebRequest.Create( System.String ) Returns an instance of a web request with the proxy server information, if specifeid
|