UNITY MANAGER 2.1 UNITY MANAGER 2.1 1.1 Unity Cloud System 2.0 pRo Unity Manager 2.1 is designed to be fully compatible with Unity Cloud System 2.0 pRo. Although, it will support UCS 1.0 and Prototype, this 1.2 Memory and Performance Unity Manager 2.1 is an application programming interface for Cloud System. All instructions invoked are placed on a process buffer and ar buffer is set during runtime. To assure the application’s need and system requirement. UM 2.1 runs at 25Hz which is faster than UM 1.0 and UM 2.0 signal instead of the remote “SYNC” signal that UM 1.0 and UM 2.0 uses. Most processes are normally pre-emptive but some can be set to have a pre To achieve the best performance for your application always check the Multiple output processes such as directory list and file download must be set to pre to make way for other processes to complete. Set the process buffer size not too large because it is 32 of resources. Too small size (around 250 and below) will yield unstable performance if the program is based heavily on file recommended. Unity Core Cloud Processor is supported but because of the limited ins features will not be available. To ensure optimal performance, connect to a Unity Cloud System 2.0 pRo compliant server with Unity Core 2 or higher Cloud Processor. Part 1: Things You Should Know User Manual pport manager will perform best under UCS 2.0 pRo. are pre-empted during processing. The size of the p best performance, set the process buffer according to the because it utilizes the local “SYNC” pre-emptive or non pre-emptive mode of operation. following: 32-bit wide and requires a vast amount s. writing and reading. A size of 1024 is generally Cloud System API <11/17/2009> version<1.0.0> TM process est pre-emptive especially . truction set, some UNITY MANAGER 2.1 Unity Manager 2.1 is designed to run under Windows Vista and Windows 7, run on Windows XP and 2000, these operating system are not officially supported. 1.3 Known Issues 64-bit versions of windows are known to have compatibility issues with Unity Manager 2.1. The Core extension is reported wrong when the numbe Too much lag when several Multiple Output Processes were invoked at the same time. This happens when writing or The author of this API is aimed at providing help and su programming, automation and robotics programming, and system concept and design.
There may be a patch or updates for Unity Manager 2.1, for inquiries send an email to Xcoder:
[email protected] number of process on the buffer is too many. reading 3 or more large files at the same time. support for novice programmers on network although it will r pport UNITY MANAGER 2.1 System Requirements: The minimum system requirements are as follows: COMPUTER: OPERATING SYSTEM: CPU: RAM: HARD DRIVE: INPUT DEVICES: PROGRAMMING LANGUAGE: The recommended system requirements are as follows: CPU: RAM: HARD DRIVE: PROGRAMMING LANGUAGE: What’s inside the Package: The basic package comes with the following files but may include additional contents. 1. UnityManagerControl2.ocx 2. UnityMngrCL.exe 3. UNITY MANAGER 2 User Manual.pdf Part 2: Technical Stuff IBM PC or 100% Compatible Microsoft Windows Vista or Microsoft Windows 7 (32 Pentium 4 1.0 GHz or Athlon Equivalent 512Mb. 22 Mb free disk space Windows compatible Keyboard and Mouse. Any programming language that could host ActiveX DLL Installed on your system. Pentium D 1.4 GHz or Athlon X2 Equivalent 1Gb 25Mb free disk space Visual Basic 5 or 6 installed on your system ckage 32-bit) UNITY MANAGER 2.1 Q: Can I view the process that were invoke by my program? A: Yes, issue the command .ShowDebugWindow 1 Q: Is it possible to send command to UCS using the console? A: Yes, but you have to know the instruction codes of the installed network processor. Q: Can I use Winsock control to communicate with UCS instead of UM 2.1? A: Yes, as long as you comply with the UCS signals. Q: Will my program work on earlier versions of UCS such as prototype and 1.0? A: There is no guarantee that the program developed in UM 2.1 to work with UCS Proto or UCS 1.0 because there are some features in UCS Q: What is Unity Cloud System? A: Unity Cloud System is software that provides File System Functions over a network.
Q: Is Unity Manager 2.1 compatible with commercial Cloud Computing Services such as Windows Live and Google Apps? A: No, Unity Manager 2.1 have its own command protocol and therefore not compatible with other Cloud Computing Services. 2.0 that the earlier versions doesn’t have. Part 3: FAQ UNITY MANAGER 2.1 UNITY MANAGER 2.1 TM SPECIFICATIONS ARCHITECTURE TYPE SIGNAL FREQUENCY SIGNAL TYPE MAX PROCESS BUFFER SIZE MAX FILE CHUNK SIZE CONSOLE RESOURCE VIEWER SUPPORTED CLOUD SYSTEMS SUPPORTED CORES Part 4: Programming Guide CISC Type 25Hz Local “SYNC” 32767 Locations up to 2Gb (4096 is the optimal settings) Provided Provided Unity Cloud System Prototype & 1 Unity Cloud System 2 Unity Cloud System 2 pRo Unity CoreTM Unity Core 2TM UNITY MANAGER 2.1 Unity Manager 2.1 provides interface for communicating with Unity Cloud Systems. It has the capability to multi-task processes and manages its own resources during design ti I. Installation Locate the installation file and run instructions. The default installation path will be completed successfully, you can now use the II. Using Unity Manager 2.1 in Visual Basic 1. Open a new Project. 2. Right-Click on the toolbox and Select 3. Locate UnityManagerControl21 the tool box. Figure 1 - Adding the Unity Manager Control 4. Put the control on the form to use it. time. Unity Manager 2.1 Setup.exe. Follow the onscreen BootDrive:\Program Files\Unity Manager Unity Manager 2.1 on Visual Basic 6. Components. and Check it and Click OK. The control will now appear on Manager. Once setup is UNITY MANAGER 2.1 III. Writing Cloudware using Unity Manager 2.1 A. Initializing the control Before calling any system functions of Unity Manager 2.1, some parameters must be
First, you should specify the size of the process buffer and the default path used for reading and writing files, also the IP address and port of the Unity Cloud System must be specified. Ex. Figure 2 – Initializing the control B. The Cloud Computing Control The unity manager 2.1 is divided into 4 groups of functions, methods, and properties: 1. Cloud – Contains the functions related to Manager Operations such as process buffer handling. 2. Proc – Contains functions related to the basic Clou file. 3. DB – Contains functions related to ADO Connectivity over cloud. 4. Auxiliary – Other functions. Cloud File System such as reading and writing to a initialized. d UNITY MANAGER 2.1 C. Connecting to a Unity Cloud System Before connecting to a cloud system, be sure the manager is initiali Unity Cloud System, invoke the method CloudConnect(). Ex. Figure 3 – Connecting to a cloud system with a button click. D. Manager Commands All commands that the user wants to issue to cloud system must have a command ident identifier is used to determine the process when it started, on progress, or had finished. This is very important because this will most of time serves as a trigger for the next command determined in every event with its identifi system operation, these are the following. 1. CloudConnected – Occurs when the manager connects to a cloud system. 2. CloudDataBuffered – Occurs when data or command is received from the cloud syst 3. CloudExchangeProgress – 4. CloudProcEnded – Occurs when a process has ended. 5. CloudProcError – Occurs when a protection fault 6. CloudSync – Occurs every time the manager is connected. Equa 7. CloudDisconnected – Occurs when the manager disconnects from the cloud system. 8. MemPtrMove – Occurs when the process pointer moves from one memory location to another. initialized properly. To Connect to a identifier. There are 8 (eight) important events that occur during cloud Occurs every time the manager reads or writes a file. is encountered. Equal to operating frequency. zed identifier. The command, process can be . system. l UNITY MANAGER 2.1 Figure 4 – Display a message when a connection is made. Code Commands like directory listing and file listing are multi generated every clock cycle. Also, these types of commands are most likely to have pre operation. All results can be obtained during CloudDataBuffered event. Figure 5 – Multi-Output command. All data obtained from a command can acquired during and actual screen.
multi-output, this means that an output is ed CloadDataBuffered event. pre-emptive mode of UNITY MANAGER 2.1 Cloud Specific CloudConnect () Method Description: Establish connection to Unity Cloud Server. Syntax: CloudConnect() CloudDisconnect () Method Description: Terminate connection from Unity Cloud Server. Syntax: CloudDisconnect() CloudExtensions() Function Description: Get the network core extension specified by the index. Syntax: CloudExtensions(Index as Integer) as String Parameters: Index – specifies the extension number to return. CloudExtensionCount() Property Description: Returns the number of network core extensions. Syntax: Var as Integer = CloudExtensionCount Part ExtensionCount 5: Programming Reference UNITY MANAGER 2.1 CloudGetData() Function Description: Returns the data received from the Unity Server and clear Syntax: CloudGetData() as String CloudGetError() Function Description: Returns the error generated by the Unity Server and clears the receiving buffer. Syntax: CloudGetError() as String CloudIP() Property Description: Returns / sets the Cloud System IP address Syntax: var as String = CloudIP CloudIP = var as String CloudMemClear() Method Description: Clear the contents of the process buffer. Syntax: CloudMemClear() CloudMemErase() Method Description: Clears the content of a process buffer location specified by procNum. Syntax: CloudMemClear(procNum as Integer) Parameters:
procNum – specifies the process buffer location to clear. the receiving buffer. UNITY MANAGER 2.1 CloudPeekData() Function Description: Returns the data received from the Unity Server but the receiving buffer is retained. Syntax: CloudPeekData() as String CloudPort() Property Description: Returns / sets the Cloud System Port. Syntax: var as String = CloudPort CloudPort = var as String CloudTest() Method Description: Send a SYNC signal to Cloud Server. Syntax: CloudTest() UNITY MANAGER 2.1 File System Specific with IFR and IFW extensions -All returned value must be fetched on CloudDataBuffered event. ProcChangePath() Method Description: Tell the Unity Cloud to change the current path. Syntax: ProcChangePath(ProcID as String, NewPath Parameters: procID – specifies the process identifier. NewPath – The path you want to access. ProcCurrentPath() Method Description: Tell the Unity Cloud to send the current path. Syntax: ProcCurrentPath(ProcID as String) Parameters: procID – specifies the process identifier. ProcFileLen() Property Description: Returns the file length of the current process. Syntax: Var as Integer = ProcFileLen() ProcGetFile() Method Description: Tell the Unity Cloud to send a file specified by Syntax: ProcGetFile(ProcID as String, preempt Parameters: procID – specifies the process identifier. preempt – Set the process’s thread mode. Filename – Specify the file name to send. as String) Filename parameter. as Boolean, Filename as String) ss UNITY MANAGER 2.1 ProcID() Property
Description: Return the process identifier of the current process specified by the process pointer. Syntax: Var as String = ProcID() ProcListDir() Method Description: Tell the Unity Cloud to send the list of directory on the current path. Syntax: ProcListDir(ProcID as String, preempt Parameters: procID – specifies the process identifier. preempt – Set the process’s thread mode. ProcListFiles() Method Description: Tell the Unity Cloud to send the list of files on the current path. Syntax: ProcListDir(ProcID as String, preempt Parameters: procID – specifies the process identifier. preempt – Set the process’s thread mode. Filter – Set the type of file to return. ProcReadKey() Method Description: Read a key value from an INI file located in the Unity Cloud. Syntax: ProcReadKey(ProcID as String, Filename Parameters: procID – Specifies the process identifier. Filename– Filename of the INI file Sector – Sector where the key value belongs. KeyData – Name of the key value to return. as Boolean) as Boolean, Filter as String) as String, Sector as String, KeyData as String) UNITY MANAGER 2.1 ProcSaveFile() Method Description: Tell the Unity Cloud to receive a file specified by Syntax: ProcSaveFile(ProcID as String, preempt Parameters: procID – specifies the process identifier. preempt – Set the process’s thread mode. Filename – Specify the file name to send. ProcWriteKey() Method Description: Write a key value from an INI file located in the Unity Cloud. Syntax: ProcWriteKey(ProcID as String, Filename Parameters: procID – Specifies the process identifier. Filename– Filename of the INI file Sector – Sector where the key value belongs. KeyData – Name of the key value to write. Data – The data to write on KeyData eceive Filename parameter. as Boolean, Filename as String)
as String, Sector as String, KeyData as String, Data KeyData. as String) UNITY MANAGER 2.1 DataBase Specific(ADODBCON extensions DBAddNew() Method Description: Add a new entry to database. Syntax: DBAddNew(ProcID as String) Parameters: procID – Specifies the process identifier. DBConnect () Method Description: Connect to a Database specified by Syntax: DBConnect(ProcID as String, DBFileName Parameters: procID – Specifies the process identifier. DBFileName – Database filename. DBDelete() Method Description: Delete the current record. Syntax: DBDelete(ProcID as String) Parameters: procID – Specifies the process identifier. DBDisconnect() Method Description: Close the database connection. Syntax: DBDisconnect(ProcID as String) Parameters: procID – Specifies the process identifier. ) DBFileName parameter. as String) UNITY MANAGER 2.1 DBGetField() Method Description: Tells the Unity Cloud to send the content of the field. Syntax: DBGetField(ProcID as String, FieldName Parameters: procID – Specifies the process identifier. FieldName – Fieldname. DBMove() Method Description: Move to a specific record defined by Syntax: DBMove(ProcID as String, RecordNumber Parameters: procID – Specifies the process identifier. RecordNumber – The record number. DBMoveFirst() Method Description: Move to the first record. Syntax:
DBMoveFirst(ProcID as String) Parameters: procID – Specifies the process identifier. DBMoveLast() Method Description: Move to the last record. Syntax: DBMoveLast(ProcID as String) Parameters: procID – Specifies the process identifier. as String) RecordNumber parameter. as Long) UNITY MANAGER 2.1 DBMoveNext() Method Description: Move to the next record. Syntax: DBMoveNext(ProcID as String) Parameters: procID – Specifies the process identifier. DBMovePrevious() Method Description: Move to the previous record. Syntax: DBMovePrevious(ProcID as String) Parameters: procID – Specifies the process identifier. DBRecordCount() Method Description: Tells the Unity Cloud to send the record count for the current recordset. Syntax: DBRecordCount(ProcID as String) Parameters: procID – Specifies the process identifier. DBRecordSource() Method Description: Set the record source defined by the SQLQuery parameter. Syntax: DBRecordSource(ProcID as String, SQLQuery Parameters: procID – Specifies the process identifier. SQLQuery – SQL command. efined as String) UNITY MANAGER 2.1 DBRefresh() Method Description: Refresh the recordset. Syntax: DBRefresh(ProcID as String) Parameters: procID – Specifies the process identifier. DBSetField() Method Description: Write to a field in a database. Syntax: DBSetField(ProcID as String, FieldName Parameters:
procID – Specifies the process identifier. FieldName – Fieldname. Value – The value to write on the fieldname. DBUpdate() Method Description: Update the recordset. Syntax: DBUpdate(ProcID as String) Parameters: procID – Specifies the process identifier. as String, Value as String) UNITY MANAGER 2.1 Other Instructions InitializeSystem() Method Description: Initialize the manager. Syntax: InitializeSystem(Memorysize as Integer, Parameters: MemorySize – The size of process buffer. DefaultPath – Work path. ShowAbout() Method Description: Show the manager system information. Syntax: ShowAbout() ShowDebugWindow() Method Description: Show the developer windows. Syntax: ShowDebugWindow(debugWindowNum Parameters: debugWindowNum – Specifies the window to show DefaultPath as String) as Integer) show. 0 – Console, 1 – Resource Viewer