Professional Documents
Culture Documents
Jupiter
ControlPoint
Protocol
Programming Manual
For Fusion and Vizion
Systems
Version 1.9.5
May 8, 2008
A-900-003-00, Rev. P
___________________________________________________
Copyright
Acknowledgements
Jupiter and the Jupiter logo are registered trademarks of Jupiter Systems. Fusion 940, Fusion 960, Fusion
964, Fusion 980, Galileo for Fusion, VirtualScreen, LiveVideo, MultiVideo, RemoteCursor,
ControlPoint, and RGB Capture are trademarks of Jupiter Systems.
All other brands and names are the property of their respective owners.
Copyright
Copyright 1999-2008 Jupiter Systems. This document is copyrighted with all rights reserved.
The entire risk of the use or the result of the use of this software and documentation remains with the
User. Information in this document is subject to change without notice. No part of this document may be
reproduced, transmitted, transcribed, stored in a retrieval system, or translated into any language in any
form or by any means, electronic or mechanical, including photocopying without express written
permission of Jupiter Systems.
___________________________________________________
Table of
Contents
Table of Contents
Acknowledgements.............................................................................................................. 2
Copyright ............................................................................................................................. 2
Table of Contents ................................................................................................................ 3
Software Warranty and Special Provisions .................................................................... 11
Limited Warranty....................................................................................................... 11
Software License Agreement............................................................................................ 13
Using This Manual ............................................................................................................ 15
Introduction................................................................................................................ 15
Hints, Notes, and Warnings ....................................................................................... 16
Program Code Text.................................................................................................... 17
Wall Control Models ................................................................................................. 17
Fusion and Vizion...................................................................................................... 17
Terms used in this manual................................................................................................ 18
Contents
1.1.1.1 Direct Connections ......................................................................................... 27
1.1.1.2 Remote System Connection............................................................................ 28
___________________________________________________
Contents
2.2.3 Notification Line:............................................................................................. 59
2.2.4 Arguments and Data Types: ............................................................................ 60
2.3 Enumeration ............................................................................................................... 61
2.3.1 Enumeration - Flags......................................................................................... 61
2.3.2 Enumeration - LiveVideoFormat..................................................................... 62
2.3.3 Enumeration - LiveVideoType ........................................................................ 63
2.3.4 Enumeration - SubSystemKind ....................................................................... 63
2.3.5 Enumeration - RGBRefreshClass .................................................................... 64
2.3.6 Enumeration - WndTitleJustification ............................................................... 64
2.3.7 Enumeration - WndTitleBarPos ....................................................................... 64
2.4 Objects and Methods ................................................................................................. 65
2.4.1 AppCtrl ............................................................................................................ 66
2.4.2 ConfigSys ........................................................................................................ 66
2.4.3 CPShareSys...................................................................................................... 67
2.4.4 CPWebSys ....................................................................................................... 68
2.4.5 Debug............................................................................................................... 69
2.4.6 EventLog.......................................................................................................... 69
2.4.7 EventLogNotify ............................................................................................... 70
2.4.8 GalWinSys....................................................................................................... 71
2.4.9 ListCfgGroup................................................................................................... 73
2.4.10 LiveVideoSys : GalWinSys........................................................................... 74
2.4.11 Notify............................................................................................................. 75
2.4.12 PictureViewerSys .......................................................................................... 76
2.4.13 PixelNetSys.................................................................................................... 77
2.4.14 PixelNetMgr .................................................................................................. 79
2.4.15 RGBSys : GalWinSys.................................................................................... 80
2.4.16 SreenUtil ........................................................................................................ 81
2.4.17 SysMonEx...................................................................................................... 82
2.4.18 SysMonNotifyEx ........................................................................................... 85
2.4.19 UserMan ........................................................................................................ 88
2.4.20 VidStreamSys ................................................................................................ 89
2.4.21 Window.......................................................................................................... 91
2.4.22 WinServer ...................................................................................................... 94
2.5 Data Structures........................................................................................................... 96
___________________________________________________
Contents
2.5.1 WinId_t ............................................................................................................ 96
2.5.2 WinId_t_array_t............................................................................................... 96
2.5.3 TWindowState ................................................................................................. 97
2.5.4 TWindowState_array_t.................................................................................... 98
2.5.4.1 LiveVideoType............................................................................................... 98
2.5.4.2 LiveVideoFormat............................................................................................ 99
___________________________________________________
Contents
3.4.2 Simple Open and Configure Windows .......................................................... 125
3.4.3 Create then Configure Windows ................................................................... 126
3.4.4 Change Window Type ................................................................................... 126
3.4.5 Create, Configure, then Move Windows ....................................................... 127
3.4.6 Getting & Setting Parameters ....................................................................... 128
3.4.6.1 LiveVideo Parameters .................................................................................. 128
3.4.6.1.1 Get/Set Channel............................................................................... 129
3.4.6.1.2 Get/Set Video Source ...................................................................... 129
3.4.6.1.3 Get/Set Crop.................................................................................... 130
3.4.6.1.4 Get Kind .......................................................................................... 130
3.4.6.1.5 Query All Windows ........................................................................ 131
3.4.6.1.6 Get Input Size.................................................................................. 132
3.4.6.1.7 Get/Set Image Balance .................................................................... 132
3.4.6.1.8 Get/Set Video Source ...................................................................... 133
3.4.6.2 RGB Parameters ........................................................................................... 134
3.4.6.2.1 Get/Set Timing ................................................................................ 134
3.4.6.2.2 Get/Set Image Balance .................................................................... 134
3.4.6.2.3 Get InputSize................................................................................... 135
3.4.6.2.4 Detect Timing.................................................................................. 135
3.4.6.3 Get/Set for Any Window .............................................................................. 135
3.4.6.3.1 Get/Set Title .................................................................................... 135
3.4.6.3.2 Get/Set Lock Aspect Ratio .............................................................. 136
3.4.6.3.3 Get/Set a Windows State ............................................................... 136
3.4.6.3.4 QueryAllValues............................................................................... 140
3.4.6.3.5 Get Record ...................................................................................... 142
Contents
3.5.2 Command Line Default Values ..................................................................... 151
3.5.3 Detecting Disconnected Status ...................................................................... 152
3.5.4 Staying connected with the ControlPoint Server........................................... 152
3.5.5 Named Inputs................................................................................................. 154
3.5.5.1 Using Named Inputs ..................................................................................... 154
3.5.5.2 PESA.EXE Utility ........................................................................................ 155
3.5.5.3 ControlPoint Protocol For Named Inputs ..................................................... 156
Appendices.............................................................................................159
Appendix A Constants, Structures, Objects, and Methods...................................... 159
1.
2. Constants............................................................................................................. 162
3. Structures ............................................................................................................ 164
4. Objects ................................................................................................................ 166
5. Methods .............................................................................................................. 169
Appendix B Error Codes ............................................................................................. 171
Result Codes ............................................................................................................ 171
Server Error Codes .................................................................................................. 171
Protocol Parsing Error Codes .................................................................................. 172
Socket Connection Error Codes............................................................................... 172
User Management Error Codes ............................................................................... 172
RGB Related Error CodesError! Bookmark not defined......................................... 173
Video Related Error CodesError! Bookmark not defined. ...................................... 173
Appendix C - Alphabetic Command Listing ................................................................ 175
Objects ..................................................................................................................... 175
AppCtrl ...................................................................................................................... 175
ConfigSys .................................................................................................................. 175
CPShareSys ............................................................................................................... 175
CPWebSys ................................................................................................................. 176
Debug ........................................................................................................................ 176
EventLog ................................................................................................................... 177
EventLogNotify ......................................................................................................... 177
GalWinSys................................................................................................................. 178
___________________________________________________
Contents
ListCfgGroup............................................................................................................. 180
LiveVideoSys ............................................................................................................ 180
Notify......................................................................................................................... 180
PictureViewerSys ...................................................................................................... 181
RGBSys ..................................................................................................................... 182
ScreenUtil .................................................................................................................. 183
SysMonEx ................................................................................................................. 184
SysMonNotifyEx ....................................................................................................... 184
UserMan .................................................................................................................... 185
Window ..................................................................................................................... 186
WinServer.................................................................................................................. 187
Indexes....................................................................................................195
Index of Figures............................................................................................................... 195
Index of Tables ................................................................................................................ 197
Index ................................................................................................................................. 199
___________________________________________________
Contents
Blank Page
10
___________________________________________________
Warranty
___________________________________________________
11
Warranty
Blank Page
12
___________________________________________________
Software Liceense
Software License Agreement
Please review the following terms and conditions before installing or using the
software supplied. By opening the software package or by installing the software
or by using the installed software, you indicate your acceptance of such terms and
conditions. In the event you do not agree to these terms and conditions, you may
not use the software, and should promptly contact Jupiter Systems.
This Software License Agreement (the Agreement) grants you a non-exclusive license to
use the software supplied to you by Jupiter Systems (JUPITER), including software that
may be owned by third parties and licensed to Jupiter, with the right to distribute and
sublicense, which software (the Software) may be supplied to you on removable media,
and/or as part of the equipment supplied by JUPITER. The Agreement also imposes
certain restrictions on your use of the Software.
You may use the Software only on the equipment with which or for which it was
supplied. For internal backup purposes, you may make copies of the Software on
removable media but you may not use a copy on another piece of equipment and you may
not transfer these copies to any other party. You may not make any other copies of the
Software and you may not make any other copies of the written materials accompanying
the Software and/or the equipment supplied by JUPITER.
You may not sublicense any rights granted in the Agreement. You may not transfer the
Software, except upon: (i) a transfer of this License Agreement; (ii) a transfer of the
JUPITER hardware equipment with which the Software was supplied; (iii) your
providing the transferee with a copy of this Agreement; (iv) the transferee accepting the
terms and conditions of the Agreement. If you transfer the Software to another party, you
must at the same time either transfer all copies whether in printed or computer readable
form to the same party or destroy any copies not transferred. Include all modifications
and portions of the Software contained or merged into other programs. You must also
reproduce and include the copyright notice on any copy. You agree to comply with all
laws of the United States regarding the export and/or re-export of the software.
All intellectual property rights in the Software and user documentation are owned by
JUPITER and/or its licensors and are protected by United States copyright laws, other
applicable copyright laws, other applicable proprietary rights laws (including but not
limited to trade secret laws) and international treaty provisions. YOU MAY NOT USE,
COPY, MODIFY OR TRANSFER THE SOFTWARE OR ANY COPY THEREOF,
IN WHOLE OR PART, EXCEPT AS EXPRESSLY PROVIDED FOR IN THIS
AGREEMENT. TO THE EXTENT PERMITTED BY APPLICABLE LAW, YOU
MAY NOT DECOMPILE, REVERSE ENGINEER, OR DISASSEMBLE THE
SOFTWARE, IN WHOLE OR IN PART. IF YOU TRANSFER POSSESSION OF
THE SOFTWARE, ANY COPY OR ANY PORTION THEREOF, TO ANOTHER
PARTY, YOUR LICENSE IS AUTOMATICALLY TERMINATED.
___________________________________________________
13
Software License
JUPITER retains ownership of the Software (except those portions that may be owned by
third parties which retain the ownership thereof) and no rights are granted to you other
than a license to use on the terms expressly set forth in the Agreement.
As defined in FAR section 2.101, DFAR section 252.227-7014(a)(1) and DFAR section
252.227-7014(a)(5) or other foreign government regulations regulating the use of
commercial software by such government or otherwise, all software and accompanying
documentation provided in connection with this Agreement are commercial items,
commercial computer software and/or commercial computer software
documentation. Consistent with DFAR section 227.7202, FAR section 12.212, and
other applicable foreign government regulation, any use, modification, reproduction,
release, performance, display, disclosure or distribution thereof by or for the U.S. or other
foreign government shall be governed solely by the terms of this Agreement and shall be
prohibited, except to the extent expressly permitted by the terms of this Agreement. You
shall ensure that each copy used or possessed by or for the government is labeled to
reflect the foregoing.
Upon any violation of any of the provisions of the Agreement, your rights to use the
Software shall automatically terminate and you shall be obligated to return the Software
to JUPITER or to destroy all copies of the Software. If you destroy such Software, you
agree to send JUPITER written notification of such destruction. This Agreement shall be
governed by California law, other than its provisions concerning the applicability of laws
of other jurisdictions.
The only warranties are those specifically granted by JUPITER pursuant to its Standard
Terms and Conditions of Sale, which are expressly incorporated herein. The liability of
JUPITER, and its licensors, is specifically limited as set forth in these Standard Terms
and Conditions of Sale.
YOU ACKNOWLEDGE THAT YOU HAVE READ THIS AGREEMENT,
UNDERSTAND IT, AND AGREE TO BE BOUND BY ITS TERMS AND
CONDITIONS; YOU FURTHER AGREE IT IS THE COMPLETE AND
EXCLUSIVE STATEMENT OF THE AGREEMENT BETWEEN US WHICH
SUPERSEDES ANY PROPOSAL OR PRIOR AGREEMENT, ORAL OR
WRITTEN AND BY ANY OTHER COMMUNICATIONS BETWEEN US
RELATING TO THE SUBJECT MATTER OF THIS AGREEMENT.
14
___________________________________________________
Introduction
All references to specific commands or buttons within Windows are highlighted
in bold and italic typeface, i.e. the Cancel button.
You will find chapter titles at the top of every page to assist you in finding
sections if you search by flipping pages.
The Table of Contents is a full outline of the manual; and, there is a
comprehensive index at the end of the manual. Also, there are three complete
indexes to help you find subjects, figures, and tables.
You will find a Glossary in the Appendix that explains terms and abbreviations.
___________________________________________________
15
Hint:
Note:
Caution:
Warning:
These entries are listed in their order of importance. You will find them in this
manual in the format shown in the examples below.
Hint:
Hints are items that will likely make your operation of the system simpler,
easier, quicker, or more efficient.
Note:
Notes are entries that bring your attention to specific items or to alert you to
items that we want to be sure you see, read, and understand before
continuing with a procedure or for proper operation of the system.
Caution:
Cautions are entries that bring your attention to items that may damage the
operating system if not done properly, done if not supposed to be done, or done
out of sequence, or to items that may cause the system to malfunction or not
operate properly.
Warning:
Warnings are entries that bring to your attention items th at may ph ysically
damage the system or the operator.
16
___________________________________________________
___________________________________________________
17
18
10
___________________________________________________
Chapter 1
Getting Started
Chapter 1 Getting Started
This chapter discusses the use of the GalileoConnect Serial and TCP/IP remote
control protocol and its use with ControlPoint. The ControlPoint protocol will be
used when connecting a touch panel controller to the Wall Controller System for
remote control, or when using third-party created software for controlling the
Wall Controller System.
ControlPoint
Protocol,
Serial Link
RS232
Galileo
Connect
Classic
Galileo
Connect
Modem
ControlPoint Server
Terminal A pplication
L oc
alT
CP
GalileoConect
Classic Protocol,
RS232
/IP
RS-232
Window s Workstation
Contr olPoint R e m ote Clie nt
Pr o
in t
Po
r o l C P/ IP
t
n
T
Co
o l,
to c
Window s Workstation
Galile o C onne ct
RS232
Modem
Window s Workstation
Galile oConne ct C las s ic
Workstation
Te lne t
ControlPoint Protocol or
GalileoConnect Classic,
RS232
ControlPoint Protocol,
Serial Link
Terminal A pplication
___________________________________________________
19
Getting Started
Types of Possible Connections
20
___________________________________________________
Getting Started
___________________________________________________
21
Getting Started
22
___________________________________________________
Getting Started
___________________________________________________
23
Getting Started
1.0.1.1.4 Login with a Network Connection
Once you are connected, the first two lines must be the user name and password:
1. Type or send user name and Enter default is user name is admin
2. Type or send password and Enter default is password is no
password (just press Enter)
Default login is simply admin followed by Enter followed by another Enter.
1.0.1.2 Serial Communication
Serial communication (RS-232) with the ControlPoint Server is accomplished
through GalileoConnect. GalileoConnect acts as a bridge between
ControlPoint and the serial port.
The GalileoConnect is covered in detain in the following section.
24
___________________________________________________
Getting Started
___________________________________________________
25
Getting Started
The following figure illustrates the different modules incorporated within the
ControlPoint System. The Windows Client API makes it possible for the user to
control a Wall Controller System from a remote workstation by using the
ControlPoint Client, a customer-written application (Customer Client), or with a
touch panel controller through the GalileoConnect Client. The Windows Client
API connects via the Ethernet to the Wall Controller System through the
ControlPoint Server.
Customer
Client
GalileoConnect
Client
Windows Client
API
Touch Panel
Controller
Remote
RS-232
Connection
TCP/IP
GalileoConnect
Client
Galileo Imaging
API
Local Client
Low-Level
Drivers
Remote Client
Running
Locally
(VirtualScreen
LiveVideo
RGB)
26
___________________________________________________
Touch Panel
Controller
Direct
Getting Started
Display Wall
ControlPoint
Network
RS-232
Touch Panel
GalileoConnect
CP
GC
Fusion System
___________________________________________________
27
Getting Started
Remote System
GalileoConnect
&
ControlPoint
Display Wall
Network
RS-232
CP
ControlPoint
Touch Panel
Fusion System
28
___________________________________________________
Getting Started
___________________________________________________
29
Getting Started
30
___________________________________________________
Getting Started
___________________________________________________
31
Getting Started
You will notice a new icon in the system tray. This icon is shown in the
following figure.
There are several methods that can be used to authenticate from the touch panel
these methods are discussed later in this manual in the chapter on programming.
If you cannot authenticate from the touch panel you must use the command line
method to start GalileoConnect, log in and authenticate.
Once you have started the GalileoConnect server, right clicking the icon in the
system tray will pop up a menu where you can select About or Quit. Quit, will
stop the GalileoConnect Server. About will display version and build
information; as an example, see the box shown in the following figure.
GalileoConnect
About
Hints:
Use a modified shortcut Target line with GalileoConnect command line
arguments to start GalileoConnect and authenticate all at one time.
Drop this shortcut icon into the Start Up folder to start GalileoConnect and
authenticate automatically when Windows starts.
32
___________________________________________________
Getting Started
GalileoConnect
command line help
___________________________________________________
33
Getting Started
Arguments:
-
comport specifies the name of the serial port to use for serial
communications to the external serial device (default is COM1).
comport=COM1
baud specifies the baud rate for the serial connection. Supported baud
rates are: 1200, 2400, 9600, 19200, 38400, 57600, 115200 (default is
9600).
baud=1200
user is the user name used for authentication with the ControlPoint Server
(default is localuser).
user=username
34
___________________________________________________
Getting Started
-
Note:
Much data is sent between the serial server and the serial device. Care
should be taken to avoid the creation of excessively large log files. You must
close GalCon (quit GalileoConnect) in order to write the log file and view it.
Examples:
You want to run GalileoConnect and use serial port COM2, connecting to
ControlPoint server CPServer, authenticating user serialuser with password
secretword, and auto-connect is enabled since the serial device does not
handle connecting and authentication. Non-specified arguments use default
values.
GalCon.exe comport=COM2 server=CPServer
user=serialuser pass=secretword auto=true
You want to run GalileoConnect on the default serial port (COM1) with autoconnect disabled, and with logging enabled. The serial device will establish
connection with the ControlPoint server and do the authentication.
GalCon.exe auto=false logging=true
___________________________________________________
35
Getting Started
Once a serial connection is established with GalileoConnect, GalileoConnect
relays the data stream from the serial port to/from the ControlPoint Server directly
without any translation.
Note:
36
___________________________________________________
Getting Started
If authentication is done automatically from the Start folder icon, or if it is done
automatically from the serial device, then some provision must be made on the
touch panel for manual or programmatically re-authenticating. There is no way
for the external device to know if and/or when the Wall Controller has been
rebooted, or if either the ControlPoint or GalileoConnect have been restarted. If
this happens, the serial device may not be connected or authenticated. It is
recommended that a Start button or some programmatical method be added such
that when activated the external device sends the Connect command with
authentication information. See GalileoConnect command line option auto and
Programming Considerations for staying connected.
___________________________________________________
37
Getting Started
Once a new connection is established, the serial peer may authenticate itself in the
ControlPoint Server. Sending the user name on one line, then the password on a
second line accomplishes this authentication. The server responds with OK when
successful and ER if the login is rejected. The ControlPoint Server will break the
TCP/IP connection if the authentication fails. You will need to issue another
CONNECT command and authenticate again.
38
___________________________________________________
Getting Started
___________________________________________________
39
Getting Started
Note that the command line arguments are typed outside (after) the quotation
marks.
There is no password security here. If this method is used, anyone who has
access to the Wall Controller system can view the shortcut properties, and with
them, your login and password parameters.
Caution:
No password security is provided if you use the shortcut method of starting
GalileoConnect automatically from an icon in the Startup folder or on the desktop.
Once you are connected and logged on, you may start passing commands from
your serial device (touch panel).
Hint:
Click Start Run, and type cmd to open a command line dialog box. This
box is commonly referred to as a DOS Box.
40
___________________________________________________
Getting Started
___________________________________________________
41
Getting Started
You have a good connection and you are working properly within the
ControlPoint Server.
42
___________________________________________________
Getting Started
Note:
From the previous two sections it can bee seen that all you need to do from
the serial device is to send the connect command and then start sending your
ControlPoint commands as needed.
___________________________________________________
43
Getting Started
where data is optional and can be any resultant data associated with the
command.
An error response is:
ER error_text
44
___________________________________________________
Getting Started
Mode 1 - Get the status of the TCP/IP connection to the ControlPoint Server.
When Connect is used without parameters, it returns the current the status of the
connection: ControlPoint host name, TCP/IP port, and user name used for
authentication. When used in this mode, no authentication is expected after use.
CONNECT
OK hostname 25456 username <CR><LF>
If an asterisk [*] is specified for the server name (CPServer), the last server name
supplied is used for the connection. In all examples, <CR><LF> is the same as
pressing the Enter key.
ER * 25456 username <CR><LF>
___________________________________________________
45
Getting Started
When the Connect command is issued with parameters, it signals the ControlPoint
Server that the next two sets of data are the user name and password, in that order.
If a null string is supplied for the user name, GalileoConnect reuses the last user
name and password supplied in the command line arguments when starting
GalileoConnect. This is helpful when the serial device has no knowledge of users
and passwords and you want to use the username/password supplied to
GalileoConnect on start-up.
Example 1 connect to server using all defaults:
CONNECT <CR><LF>
OK localhost 25456 localuser <CR><LF>
Notes:
- It is not necessary to send the Connect command in order to begin
sending ControlPoint commands from the serial device to the
ControlPoint server once the GalileoConnect Server has been started.
- It is advisable to send the Connect command and look for the OK
returned to validate your connection.
- With no parameters added, no authentication is necessary as this was
taken care of by the defaults when the Connect command was started.
The next output from the serial device can be your first ControlPoint
command.
- You must use the Connect command with the server name if you intend
to authenticate with user name and password other than defaults. See
Example 2 below.
___________________________________________________
Getting Started
After GalileoConnect receives the Connect command with the user name and the
password, it tries to connect to the ControlPoint server and authenticate the user.
Upon success, GalileoConnect replies with a positive response, otherwise it
returns a negative response.
If anything is sent after the Connect command that is NOT user name and
password, you must then reissue the Connect command with the server name in
order to send login authentication again. GalileoConnect assumes that the next
two lines are the user name and password, and will return an error if not correct.
If you find that your login is rejected or you get other errors, then re-issue the
Connect command, if you get an error, re-connect fully, if you get an OK, then
send your authentication information to login. This process is very easily seen
when using a terminal to view the process. See 1.3.1.5 Testing Your
Connection.
___________________________________________________
47
Getting Started
1.4.1 Syntax
The ControlPoint Protocol is text-based. Each command line terminates with
CR/LF. Tokens are space separated. All identifiers are case-sensitive.
The text written by you starts with plus sign [+]. The replies from the server start
with an equal sign [=]. All following examples have return codes included.
The following examples show proper replies for comparison. See Appendix B
for all Return and Error Codes.
1.4.1.1 Commands
A serial device can send two types of commands to GalileoConnect.
ControlPoint Protocol Commands
GalileoConnect Commands
1.4.1.1.1 ControlPoint Commands
Every ControlPoint command must start with the + character. This is how
GalileoConnect knows that the command is to be relayed to the ControlPoint
server for processing.
Example:
+WinServer QueryAllWindows <CR><LF>
48
___________________________________________________
Getting Started
positive response
negative response
___________________________________________________
49
Getting Started
Note from the above that the Id is also a Structure as is ZAfter. These Structures
must be within braces.
Many commands do not need braces because the argument is not a data structure.
+WinServer SetLayout layoutname
Many others may require at least one set and many times two or more sets of
structures.
+LiveVideoSys SetChannel { ID } channel#
+LiveVideoSys SetVideoSource { ID } {CPLiveVideoSource}
+Window SetState { { 123 } 2 1 0xC01 100 100 320 200 { 1 } }
Note:
All braces must be preceded and followed by a space.
50
___________________________________________________
Getting Started
___________________________________________________
51
Getting Started
Where Set validates subsequent elements in the command string. This same
command structure is used in a more complex manner in the SetState Method
shown following. The SetImgBalance Method will be used as an example for
explaining this structure. A knowledge and understanding of the Binary and
Hexadecimal number systems will be helpful in understanding these structures as
they use the binary bit position as shown in the examples following.
The SetImgBalance Method sets the image balance of the specified LiveVideo or
RGB window. The SetImgBalance Method syntax and an example command are
shown below.
+LiveVideoSys SetImgBalance { WinId } { Set Bri Con Gam Hue Sat }
+LiveVideoSys SetImgBalance { 101 } { 27 0 100 0 0 100 }
The Set Element is used to validate all other elements in the subsequent list.
Set bit positions
128
0
64
0
32
0
16
Sat
8
Hue
4
Gam
2
Con
1
Bri
In the following example, Set is equal to 27. 27 is the sum of 16, 8 2 and 1
(1+2+8+16=21). These values equate to the bit positions (powers of 2 in the table
above) that are associated with the image balancing properties Hue, Saturation,
Contrast, and Brightness. Consider the diagramed command below:
+LiveVideoSys SetImgBalance { 101 } { 27 0 100 0 0 100 }
27 =16 + 8 + 2 + 1
1 = Brightness = 0
2 = Contrast
= 100
8 = Hue
=0
16 = Saturation = 100
Since Gamma is not used, Set with a value of 27, validates all four remaining
elements in the list. The values shown are the default values for the parameters.
52
___________________________________________________
Getting Started
If you wanted only to set contrast and brightness (2 and 1) the Set element should
be 3 as shown in the following program line which sets contrast to 7 and
brightness to 93. All other values in the element list will be ignored except those
specified by Set.
+LiveVideoSys SetImgBalance { 101 } { 24 0 100 0 7 93 }
24 =8 + 16
8 = Hue = 7
16 = Saturation= 93
LiveVideoSys NewWindowWithId
LiveVideoSys SetChannel
Window SetState
GalWinSys Start
Creating a window only creates it; it does not fill it nor make it visible.
Note:
All newly created windows (RGB and LiveVideo) default to channel 1, are
hidden, have size and position (0,0), are given the next available ID number
for the session, and are invisible (hidden).
___________________________________________________
53
Getting Started
The result shows success (=00000000). The return code includes the WindowID
(10001) for this window. You must know or record and use this WindowID to
address this window for any further access to it.
To avoid having to record large window ID numbers and to create windows with
known and constant ID numbers, you may also create a window with a specific
ID number supplied by you. You will still have to use this ID number whenever
referring to this window. For example, to create window with ID 123, you would
send:
+LiveVideoSys NewWindowWithId { 123 }
=00000000
You can now use the SetState command to specify several window parameters
once you have created the window as shown above. A window created with the
NewWindowWithId command will always have this number associated with it.
Having created the window (123), we will now show it (it is still hidden) at
coordinates 100,100 with size 320x200:
TWindowState Elements - Id
Note the 0x400 in nStateChange indicates we are only going to make the position
(x, y) valid data. See Table 3 Flags.
Select input channel 2:
+LiveVideoSys SetChannel { 123 } 2
=00000000
As you can see, we have attempted to minimize the total number of commands,
allowing you to do many things in this single command.
54
___________________________________________________
Getting Started
___________________________________________________
55
Getting Started
Blank Page
56
___________________________________________________
Chapter 2
ControlPoint Protocol
2.1 Introduction
The ControlPoint logical protocol is developed on top of RMC (Remote Method
Call) inter-process communication protocol, implemented over a TCP/IP
connection.
___________________________________________________
57
ControlPoint Protocol
2.2 Syntax
The ControlPoint protocol is text-based. Each command line terminates with
CR/LF. Tokens are space separated. All identifiers are case-sensitive. See also
Appendix A Constants, Structures, Objects, and Methods.
There are three types of command lines that can be sent by the serial device.
Their first character determines the type of these commands:
1. A request which starts with a plus sign [+]
2. A response which starts with an equal sign [=]
3. A notification which starts with a colon [:]
Requests are outgoing data to the Wall Controller System.
Responses are incoming data notifications from the Wall Controller System. The
request-response mechanism is synchronous.
Notifications are asynchronous, but cannot occur between a request and the
corresponding response. Notifications are sent by the server to notify the client of
an event (as in a window being moved).
The first character of the sentence determines the type request, response, or
notification.
request +<object name> <method> [<value list>]
response =<result code> [<value list>]
notification :<object name> <method> [<value list>]
Note, that the request and the notification syntax are similar. This is because a
notification semantically is a remote method call (a request), but does not get a
response.
Any text line not starting with + is treated as a GalileoConnect command and
processed by GalileoConnect.
CONNECT <CR><LF>
58
___________________________________________________
ControlPoint Protocol
___________________________________________________
59
ControlPoint Protocol
Integer number
o a 32-bit integer number in decimal format;
o a 32-bit integer number in hex format (starts with 0x) (0x123A)
Decimal floating point number
String, surrounded by quotation marks - (now is the time)
Structure, surrounded by braces - { xx }
Array, represented by a structure with the first field set to the number of
elements to follow.
Boolean Boolean operators are either 0 or 1 (0 = false 1 = true)
Structure the structure is a value list
Bit Fields - There are several special data constructs called bit fields used in
the ControlPoint Protocol. One such set is Flags, which are described in the
following section and elsewhere. Both Set elements used in
CPLiveVideoSource and ImgBalance are bit fields and are used similarly to
the example shown below.
0 0 0 16 8 4 2 1
- - - S H G C B
000SHGCB
1
1 0 1 1
(0 0 0 S H G C B) = (0 0 0 1 1 0 1 1) = 27
S=Saturation - H=Hue - G=Gamma - C=Contrast - B=Brightness
60
___________________________________________________
ControlPoint Protocol
2.3 Enumeration
This section lists and describes the enumeration of data types.
GetSet
Flags
Notify
Flags
(read
only)
* wsVisible
* wsMinimized
* wsMaximized
* wsFramed
0x0001
0x0002
0x0004
0x0008
* wsLockAspect
0x0010
* wsAlwaysOnTop 0x0020
* wsPosition
* wsSize
0x0400
0x0800
* wsZOrder
wsTitle
0x1000
0x2000
wsKind
0x4000
wsChannel
wsBalance
wsFormat
wsCrop
wsInput
0x00010000
0x00020000
0x00040000
0x00080000
0x00200000
* used in nStateChange
Table 3 Flags
Usage
Flags
___________________________________________________
61
ControlPoint Protocol
The table below shows the flags (listed on previous page) in their bit positions by
hex digit.
10000
80000
40000
20000
10000
wsCrop
wsFormat
wsBalance
wsChannel
8000
4000
2000
1000
1000
na
wsKind
wsTitle
wsZOrder
800
400
200
100
100
wsSize
wsPosition
wsDestroyed
wsCreated
80
40
20
10
10
na
na
WsAlwaysOnTop
wsLockAspect
8
4
2
1
1
wsFramed
wsMaximized
wsMinimized
wsVisible
0
1
2
3
4
5
6
7
8
Note:
The Set argument determines which other arguments will be valid.
1 = Format 2 = Type 3 = Both
62
___________________________________________________
ControlPoint Protocol
0
1
2
3
4
5
6
7
8
9
Table 7 SubSystemKind
Usage
Kind
+Window SetState { { 123 } 2 1 0xC01 100 100 320 200 { 0 } }
___________________________________________________
63
ControlPoint Protocol
0
1
2
3
Table 8 RGBRefreshClass
0
1
2
0
4
8
Table 9 WndTitleJustification
Table 9 WndTitleBarPos
64
___________________________________________________
ControlPoint Protocol
Table 9 Objects
These Objects will be listed with their respective Methods in the following
subsections.
Note:
All in/out notations used in the following methods are from the servers point
of view. In to the server, out from the server.
All in responses are data returned by Get commands, and are actual copies
(copy/paste) from the appropriate command.
See also alphabetical listing of commands by both object and method in the
Appendix.
___________________________________________________
65
ControlPoint Protocol
2.4.1 AppCtrl
Methods
Exec
Executes the specified command-line on the server. Note that all paths are serverrelative. Program path is the path on the server to the program you wish to run.
2.4.2 ConfigSys
Methods
GetServerInfo
( [out] CPPlatformInfo,
[out,string] versionInfo )
Data Structure
CPPlatformInfo
Type
Integer
Integer
Integer
Integer
Integer
Field Meaning
Platform code
Model Version
Model Revision
OEM code
Serial Number
66
___________________________________________________
ControlPoint Protocol
2.4.3 CPShareSys
Methods
NewWindow
NewWindowWithId
SetConnection
GetConnection
GetCredentials
___________________________________________________
67
ControlPoint Protocol
2.4.4 CPWebSys
Methods
NewWindow
NewWindowWithId
SetURL
GetURL
68
___________________________________________________
ControlPoint Protocol
2.4.5 Debug
Methods
GetLevel
SetLevel
( [out] unsigned )
( [in] unsigned NewLevel,
[out unsigned OldLevel )
GetOutputs
SetOutputs
( [out] DWORD )
( [in] DWORD, new, [out] DWORD old )
GetFileName
CloseFile
OpenFile
FlushToFile
( [out] string )
()
( [in, string] )
( [in, string] )
2.4.6 EventLog
Methods
SetPosition
GetRecord
RegisterNotifyTarget
UnregisterNotifyTarget
___________________________________________________
69
ControlPoint Protocol
Usage
+EventLog SetPosition flag recNum
+EventLog SetPosition 2 0
Sets the current position in the event log. The recNumber is the record number
at which to position the record pointer, the flags bits determines the seek mode:
Bit 0 (mask 1) go to the oldest record in the event log
Bit 1 (mask 2) go to the latest (newest) event
Bit 2 (mask 4) go to the record specified in recNum
Bit 3 (mask 8) after positioning, the reading will be done in forward motion
Bit 4 (mask 16) after positioning, the reading will be done in backward
motion
Notes:
recNum will only be valid for Bit2 (mask 4) but the position must be filled
when sending the method. Failure to fill all fields will cause an error.
In order to retrieve a record you must first set the position in the record then
get the record.
2.4.7 EventLogNotify
Methods
NewEvent
70
___________________________________________________
ControlPoint Protocol
Usage
Note:
It is important to note that this Object and its Methods are normally ONLY
called by the server. Once you have registered notification this object will
be called whenever a change is made in EventLog.
+EventLogNotify NewEvent
The server calls this method on the client when a new event is generated. The
arguments are the record header, the name of the source that generated the event
and the text of the event message.
:EventLogNotify { 1074003997 0 20 1047388718 } "GalSysMon"
"Chassis Fan-3 speed back to normal. Current speed is 2463
RPM"
2.4.8 GalWinSys
Methods
GetKind
IsOfKind
( [out] SubSystemKind_t )
( [in] WinId_t )
QueryAllWindows
NewWindow
NewWindowWithId
( [out] TWindowState_array_t )
( [out] WinId_t )
( [in] WinId_t )
Start
Stop
Freeze
( [in] WinId_t )
( [in] WinId_t )
( [in] WinId_t )
SetCrop
SetOrigin
GetCrop
GetImgBalance
SetImgBalance
GetInputSize
ApplyDefaults
( [in] WinId_t )
QueryAllInputsCS
SelectInput
GetInput
( [out] )
( [in] WinId_t wid, inputName )
( [in] WinId_t wid, [out, inputName] )
___________________________________________________
71
ControlPoint Protocol
The GalWinSys object and its methods can operate on all window types (see
SubSystemKind) and are inherited by LiveVideoSys and RGBSys. While
GalWinSys can operate on all window types, LiveVideoSys and RGBSys can
only operate on their respective (and proper) window types.
GalWinSys Usage
+GalWinSys GetKind { } (returns the SubSystemKind this Object can operate on).
When used with LiveVideoSys or RGBSys returns SubSystemKind for respective Object.
+GalWinSys IsOfKind { 123 } (returns either 0 or 1 (1= success but false) for
question Can this Object operate on this window?). When used with LiveVideoSys or
RGBSys returns 0 or 1 (true or false) for type of window queried.
+GalWinSys QueryAllWindows
(Starts capturing)
(Stops capturing )
(Freezes the current frame)
72
___________________________________________________
ControlPoint Protocol
GalWinSys Usage (Cont.)
+GalWinSys ApplyDefaults { 123 }
Brightness, contract, hue, saturation and cropping are reset.
+GalWinSys QueryAllInputsCS
Returns a string with comma-delimited input names.
2.4.9 ListCfgGroup
Methods
ListCfgGroup
( [in] group_code,
[out,string] objNames )
___________________________________________________
73
ControlPoint Protocol
SetVideoSource
GetVideoSource
GetChannelRange
Note:
It is important to note that when using the SetChannel Method with either the
LiveVideSys or RGBSys Objects, you define the type of window (either RGB
or LiveVideo) by the type of input it receives.
When first created with the NewWindow command, the window will be hidden.
The window will have size (0,0) and position (0,0).
74
___________________________________________________
ControlPoint Protocol
2.4.11 Notify
Methods
WindowsState
ScreenConfigChanged
( [in] TWindowState_array_t )
( [in] CPScreenConfig )
If the user wants the serial device to receive notifications whenever something
happens with ControlPoint windows he executes the command:
+WinServer RegisterNotifyTarget
=00000000
From then on, ControlPoint server will send asynchronous notifications to the
device, indicating changes of window status, etc. Notifications are sent in the
form:
:Notify WindowsState { 1 { { 10002 } 2 1 5120
254 244 684 507 { -1 } }}
The serial device does not respond to the notifications messages. They are just
being broadcasted by ControlPoint server to the interested parties.
___________________________________________________
75
ControlPoint Protocol
2.4.12 PictureViewerSys
Methods
NewWindow
NewWindowWithId
ShowPicture
GetFileName
76
___________________________________________________
ControlPoint Protocol
2.4.13 PixelNetSys
Methods
NewWindow
NewWindowWithId
QueryInputs
SelectInput
GetInput
Start
Stop
Freeze
GetParameters
SetParameters
SetCrop
SetOrigin
GetCrop
GetInputSize
DetectTiming
SetRefreshClass
GetRefreshClass
GetPixNetInfo
___________________________________________________
77
ControlPoint Protocol
Usage
NewWindow creates a new PixelNet window and returns the window ID for that
window.
+PixelNetSys NewWindow (returns new window ID)
NewWindowWithId creates a new PixelNet window with a user-specified
window ID.
+ PixelNetSys NewWindowWithId { 123 }
QueryInputs gives all of the PixelNet input nodes on-line. It returns a list of the
input names.
+PixelNetSys QueryInputs ( returns a safearray containing a list of the input
names)
SelectInput selects an input node for a PixelNet window. The window ID must
be specified.
+ PixelNetSys SelectInput { 10023 } InputName
GetInput gets the input name for a window. The window ID must be specified.
+PixelNetSys GetInput ( returns the input name associated with that
window).
SetRefreshClasst sets the Refresh Class to the input node for a PixelNet window.
The window ID must be specified.
+ PixelNetSys SetRefreshClass { 10023 } { 1 }
GetRefreshClasst gets the Refresh Class from the input node for a PixelNet
window. The window ID must be specified.
+ PixelNetSys GetRefreshClass { 10023 }
=00000000 1 (Returns current refresh class of the PixelNet window)
78
___________________________________________________
ControlPoint Protocol
2.4.14 PixelNetMgr
Methods
QueryDevices
GetDeviceMetadata
SetDeviceMetadata
ResetDevice
( [out,retval] SAFEARRAY(VARIANT) *
pVal )
( [in] long puid, [out] int * numRecs,
[out,size_is(,*numRecs)]
CaMetadataRecord_t ** pMetadata )
( [in] long puid, [in] /*Dictionary_t*/
unsigned char * metadata );
( [in] long puid)
QueryDevices gives all of the PixelNet input nodes on-line. It returns a list of the
input device info records. See the next Section for the structure of
CaPixelNetDeviceInfo_t.
+PixelNetMgr QueryInputs ( returns { CaPixelNetDeviceInfo_t pData[ ] }
GetDeviceMetadata gets the metadata of a PixelNet input device. The device ID
must be specified. See section 2.5.21 for the structure of MetadataRecord_t.
+ PixelNetMgr GetDeviceMetadata { puid } (returns { numRecs
MetadataRecord_t pData[ ] }
SetDeviceMetadata sets the metadata to a PixelNet input device. The device ID
must be specified.
+ PixelNetMgr SetDeviceMetadata { puid } { Dictionary_t*
pData }
___________________________________________________
79
ControlPoint Protocol
SetTiming
GetTiming
DetectTiming
SetAutoDetectTiming
GetAutoDetectTiming
SetRefreshClass
GetRefreshClass
GetChannelRange
80
___________________________________________________
ControlPoint Protocol
+RGBSys SetRefreshClass { 102 } 1 (Sets RGB window 102 to refresh
class rgbClassFast. This causes the refresh rate of the window to a maximum of 30
fps. The fps limits for the refresh classes are rgbClassMaxSpeed (no limit),
rgbClassFast (up to 30 fps), rgbClassMedium (up to 15 fps), and rgbClassSlow (up to
2 fps)).
+RGBSys GetRefreshClass { 102 }
=00000000 1 (Returns current refesh class of the RGB window)
+RGBSys GetChannelRange
=000000000 1 32 (Returns the first and the last channel numbers for the subsystem)
2.4.16 SreenUtil
Methods
ShowPattern
SetPatternProp
GetPatternProp
___________________________________________________
81
ControlPoint Protocol
+ScreenUtil
0 0 0 0 0 }
screen)
+ScreenUtil
0 0 0 0 0 }
+ScreenUtil
0 0 0 0 0 }
SetPatternProp setpatternprop { 1 0 0 0 0 0 0
(Sets the SingleScreen to 0; that is, the test will be applied to virtual
SetPatternProp setpatternprop { 2 0 2 0 0 0 0
(Sets the BarType to 2; that is, the color pattern will be horizontal bars )
SetPatternProp setpatternprop { 4 0 0 1 0 0 0
(Sets the GridCircle to 1; that is, circles will be drawn in grid pattern )
2.4.17 SysMonEx
Methods
QueryAllValues
QueryValues
QueryECCInfo
RegisterNotifyTarget
UnregisterNotifyTarget
82
___________________________________________________
ControlPoint Protocol
Usage
+SysMonEx QueryAllValues
Returns all system monitoring information. This method uses the
TCPSysMonValue_array_t data structure.
Example:
To illustrate the use of the Module and Parameter Codes as shown in the tables,
consider an installation with two chassis (a main chassis and an expansion
chassis)and each chassis has a set of blowers. To show values for each blower,
the code for Blower 1 in the Main Chassis is 8192 + 0x01000000 = 0x01002000
[16785408] and the code for Blower 1 in Expansion Chassis 1 is 2048 +
0x02000000 = 0x02000800 [33562624]. All returned values are in decimal. This
example shows the status of all three chassis fans at 0 RPM. (Status values other
than zero indicate an alarm condition.) The example has been formatted for ease
of reading.
=00000000
{ 16 { 1 30 30 0 }
{ 2 29 29 0 }
{ 5 1456 1456 0 }
{ 4 6026 6026 0 }
{ 16 3248 3248 0 }
{ 160 3312 3312 0 }
{ 48 11917 11917 0 } { 64 -11410 -11410 0 }
{ 256 32 32 0 }
{ 16779264 0 1000 2 }
{ 16783360 0 1000 2 } }
{
{
{
{
{
3 5921 5921 0 }
6 1456 1456 0 }
32 4731 4731 0 }
176 1792 1792 0 }
16781312 0 1000 2 }
The first number (16) is the number of parameters returned in the array
=00000000 { 16 { 1 30 30 0 }
___________________________________________________
83
ControlPoint Protocol
Usage
+SysMonEx QueryECCInfo
Returns ECC error information. This method uses the TCPSystemECCInfo data
structure.
+SysMonEx QueryECCInfo
=00000000 { 1 0 0 0 }
TCPSysMonECCInfo structure
Valid
SingleBitErrors
MultiBitErrors
BlockAddr
Usage
+SysMonEx RegisterNotifyTarget
Registers the client to receive notifications when the system status changes.
See SysMonNotifyEx object. Use this method to turn on the notify messages.
+SysMonEx UnregisterNotifyTarget
TCPSysMonValue Structure
Code
Value
Threshold
Status
Status
The status field shows the current status of the monitored value:
0 normal
1 above high threshold. (See threshold field for threshold value)
2 below low threshold. (See threshold field for threshold value)
3 invalid measurement
84
___________________________________________________
ControlPoint Protocol
As an example, SysMon can provide system monitoring for the specific values
found in the Fusion 960:
Parameter
CPU1 Temp.
CPU2 Temp.
CPU1 Fan Speed
CPU2 Fan Speed
CPU1 Core Voltage
CPU2 Core Voltage
+3.3 Volts
+3.3 Volts Standby
+5.0 Volts
+12 Volts
-12 Volts
+1.8 Volts
Motherboard Temp
Chassis Fan 1
Chassis Fan 2
Chassis Fan 3
Units
Degrees C
Degrees C
RPM
RPM
millivolts
millivolts
millivolts
millivolts
millivolts
millivolts
millivolts
millivolts
Degrees C
RPM
RPM
RPM
2.4.18 SysMonNotifyEx
Methods
ValuesChanged
ECCError
[in] TCPSysMonValue_array_t )
( [in] TCPSysMonECCInfo )
Note:
It is important to note that this Object and its Methods are normally ONLY
called by the server. Once you have registered notification this object will
be called whenever a change is made in SysMon.
___________________________________________________
85
ControlPoint Protocol
+SysMonNotifyEx ValuesChanged
The server calls this method on the client to supply information about values that
changed. The supplied parameter is an array (TCPSysMonValue_array_t) of
the values that have changed since the last notification.
:SysMonNotifyEx ValuesChanged { 3 { 5 1696 1696 0 } { 128
-5178 -5178 0 } { 48 12464 12464 0 } }
+SysMonNotifyEx ECCError
Called when an ECC error occurs. This method returns the System EDD Data.
:SysMonNotifyEx ECCError { 1 0 0 0 }
TCPSysMonECCInfo structure
Valid
SingleBitErrors
MultiBitErrors
BlockAddr
+EventLog GetRecord
Reads one record from the event log. Returns the record header information, the
name of the source that generated the event and the text of the event. The
position is automatically moved to the next record depending on the seek mode
(forwards or backwards) specified in flag Bit 3 or Bit 4.
{ header } source text
Where header is described below, source is the program element that caused the error
and text is the text of the event log message
=00000000 { 1074003997 0 20 1047388718 } "GalSysMon"
"Chassis Fan-3 speed back to normal. Current speed is 2463
RPM"
=00000001 { 0 0 0 0 }
86
___________________________________________________
ControlPoint Protocol
nRecNumber = the record number in the event log
The nRecNumber field shows the position of the record in the system
event log.
nTime = encoded time of the event
The nTime field has the encoded time of the event. It is the number of
seconds elapsed since midnight (00:00:00) January 1, 1970.
+EventLog RegisterNotifyTarget
___________________________________________________
87
ControlPoint Protocol
2.4.19 UserMan
Methods
AddUser
DeleteUser
EnumUsersCS
SetUserInfo
GetUserInfo
ChangePassword
(deletes user)
88
___________________________________________________
ControlPoint Protocol
2.4.20 VidStreamSys
Methods
NewWindow
NewWindowWithId
SetSource
GetSource
Start
Stop
GetImgBalancePrm
SetImgBalancePrm
SetCropPrm
SetOrigin
GetCropPrm
GetInputSize
___________________________________________________
89
ControlPoint Protocol
SetSource sets the video source for a VideoStream window. The window ID must
be specified. The source object must be predefined. Refer to the ControlPoint User
Manual about creating a VideoStream source object.
+VidStreamSys SetSource { 123 } SourceObjectName
GetSource gets the object name of the current video source on a VideoStream
window. The window ID must be specified.
+VidStreamSys GetSource { 123 }
Start starts to display the image from a video source on a VideoStream window.
The window ID must be specified.
+VidStreamSys Start { 123 }
Stop stops displaying the video image on a VideoStream window. The window ID
must be specified.
+VidStreamSys Stop { 123 }
SetImgBalancePrm sets the image balance parameters to a VideoStream window. The
parameters are Brightness, Contrast, and Saturation.
+VidStreamSys SetImgBalancePrm { 123 } { Set Brightness
Contrast Gamma Hue Saturation }
+VidStreamSys SetImgBalancePrm { 123 } { 19 0 100 0 0 100
}
GetImgBalancePrm gets the image balance information from on a VideoStream window.
The return information is Brightness, Contrast, and Saturation.
+VidStreamSys GetImgBalancePrm { 123 }
SetCropPrm sets the cropping parameters to a VideoStream window.
Cropping works by relation to the normal image size. X and Y specify the pixels
removed from the left and the top. W and H specify the size of the cropped image.
A 640x480 window set at 10 10 600 400 will have 10 pixels remove from the top,
10 pixels removed from the left, 30 pixels from the right, and 70 removed from the right.
ImageWidth X (right pixels) = W or 640 10 30 = 600.
+VidStreamSys SetCropPrm { 123 } { X Y W H }
+VidStreamSys SetCropPrm { 123 } { 10 10 600 400 }
GetCropPrm gets the cropping parameters from a VideoStream window.
+VidStreamSys GetCropPrm { 123 }
SetOrigin gets the origin of cropped image to effect panning.
+VidStreamSys SetOrigin { 123 } X Y
90
___________________________________________________
ControlPoint Protocol
2.4.21 Window
Methods
GetState
SetState
GetTitle
SetTitle
GetFrameInfo
SetFrameInfo
GetTitleInfo
SetTitleInfo
___________________________________________________
91
ControlPoint Protocol
The SetState command is required to make a window visible. When first created
with the NewWindow command, the window will be hidden. The window will
have size (0,0) (height 0, width 0) and position (0,0).
TWindowState Elements - Id
When using the SetState command you must set the valid information fields in
nStateChange (nSC) to make any subsequent fields valid. To make a window
visible you must not only state that is visible in nState, you must make that field
valid in the nStateChange field.
nStateChange shows 0xC01. If we look in the tables, we see that the 0xC is a
combination of 8 and 4 which validates the size and position field, while the 0x01
validates the Visible field in the nState field.
nStateChange
GetSet
Flags
Notify
Flags
**
* wsVisible
* wsMinimized
* wsMaximized
* wsFramed
0x0001
0x0002
0x0004
0x0008
* wsLockAspect
0x0010
* wsAlwaysOnTop
0x0020
*wsCreated
*wsDestroyed
* wsPosition
* wsSize
0x0100
0x0200
0x0400
0x0800
* wsZOrder
wsTitle
0x1000
0x2000
wsKind
0x4000
wsChannel
wsBalance
wsFormat
wsCrop
wsInput
0x00010000
0x00020000
0x00040000
0x00080000
0x00200000
92
___________________________________________________
ControlPoint Protocol
nState bits
wsVisible
0x0001
wsMinimized
0x0002
wsMaximized
0x0004
wsFramed
0x0008
wsLockAspect
0x0010
wsAlwaysOnTop 0x0020
SetFrameInfo sets the frame information for a window. This information includes the
width of the frame, the color of the frame and whether to show the title text or not.
+Window SetFrameInfo { wid } { Set Width Color ShowTitle }
+Window SetFrameInfo { 123 } { 7 10 16777219 1 } (Sets the
window frame to width = 10, color = white, show title text = Yes)
+Window SetFrameInfo { 123 } { 2 0 255 0 } (Sets the window frame
to color = red, ignoring other parameters )
GetFrameInfo gets the frame information from a window.
+Window GetFrameInfo { 123 }
SetTitleInfo sets the title information for a window. This information includes the text
color, the position of the title bar (on top of the window or at bottom), the minimum
height of the title bar, horizontal justified and vertical justified.
+Window SetTitleInfo { wid } { Set TextColor BarPos
MinBarHeight HorizJust VertJust }
+Window SetTitleInfo { 123 } { 1 0 0 0 0 0 } (Sets the text color to
black, and the other parameters are ignored)
+Window SetTitleInfo { 123 } { 10 0 1 0 1 0 } (Sets the title bar at
the bottom of the window, the text is horizontal center justified, and the other parameters
are ignored )
GetTitleInfo gets the title information from a window.
+Window GetTitleInfo { 123 }
SetTitleFontInfo sets the title font information for a window. This information includes
the text size, text flags and the font name.
+Window SetTitleFontInfo { wid } { Set TextSize Flags
FontName }
+Window SetTitleFontInfo { 123 } { 5 14 0 Arial } (sets the text
size = 14, font name = Arial, and ignores the flags)
GetTitleFontInfo gets the title font information from a window.
+Window GetTitleFontInfo { 123 }
___________________________________________________
93
ControlPoint Protocol
2.4.22 WinServer
Methods
DeleteWindow
QueryAllWindows
QueryWindows
FindWindow
InvokeAppWindow
GetAppWinInfo
( [in] WinId_t )
( [out] TWindowState_array_t )
( [in] WinId_t_array_t,
[out] TwindowState_array_t )
( [in,string] window_descriptor,
[out] WinId_t )
( [in,string] appWinName,
[out] WinId_t )
( [in] WinId_t winid,
[out,string] window_descriptor,
[out,string] cmdline,
[out_string] workDir )
RegisterNotifyTarget
UnregisterNotifyTarget
()
()
GetServerInfo
GetScreenConfig
( [out] CPServerInfo )
( [out] CPScreenConfig )
Quit
()
QueryAllLayoutsCS
SetLayout
SaveLayout
( [out, string] )
( [in, string] )
( [in, string],
[in] WinId_t_array_t )
( [in, string] )
DeleteLayout
94
___________________________________________________
ControlPoint Protocol
Usage
+WinServer DeleteWindow { 123 }
___________________________________________________
95
ControlPoint Protocol
2.5.1 WinId_t
The following table is a list of the available Data Structures, and their items:
Type
Type Name
WinId_t
Long
WinId_t_array_t
Unsigned
Elements
_id
nCount
WinId_t
pData[ ]
_id
window ID number - >0 and <10,000 for User Defined ID numbers
window ID number - >10,000 for ControlPoint generated ID numbers
2.5.2 WinId_t_array_t
WinId_t_array_t
nCount
WinId_t
pData [ ]
Example of array:
Element
0
1
2
Window
ID
10001
10002
123
96
___________________________________________________
ControlPoint Protocol
2.5.3 TWindowState
Type
Type Name
TWindowState
Elements
WinId_t
SubSystemKind_t
unsigned
unsigned
integer
WinId_t
Id
Kind
nState
nStateChange
x, y, w, h
ZAfter
TWindowState
Id
Kind
nState
window ID number
type of window SubSystemKind [0, 1, 2, 3]
nState bits
wsVisible
wsMinimized
wsMaximized
wsFramed
wsLockAspect
wsAlwaysOnTop
0x0001
0x0002
0x0004
0x0008
0x0010
0x0020
x, y
w, h
ZAfter
Notes:
___________________________________________________
97
ControlPoint Protocol
2.5.4 TWindowState_array_t
Type
Type Name
TWindowState_array_t
Elements
unsigned
nCount
TwindowState
pData[ ]
nCount
array size
TWindowState
See TWindowState above
pData[ ]
array elements
Example of array:
Element
0
1
2
ID
10001
10002
123
Kind
Kind
Kind
nState
nState
nState
nStateChange
nStateChange
nStateChange
x
x
x
y
y
y
w
w
w
h
h
h
ZAfter
ZAfter
ZAfter
2.5.4.1 LiveVideoType
The following table enumerates the available LiveVideo Types. These values will
be used whenever setting the type of input source used.
LiveVideoType
LIVE_VIDEO_COMPOSITE 0
LIVE_VIDEO_SVIDEO
1
98
___________________________________________________
ControlPoint Protocol
2.5.4.2 LiveVideoFormat
The following table enumerates the available LiveVideo Formats. These values
will be used whenever setting the type of video input format.
LiveVideoFormat
LIVE_VIDEO_NTSC
LIVE_VIDEO_NTSCJ
LIVE_VIDEO_PAL
LIVE_VIDEO_PALM
LIVE_VIDEO_PALN
LIVE_VIDEO_SECAM
LIVE_VIDEO_PALNc
LIVE_VIDEO_NTSC443
LIVE_VIDEO_PAL60
0
1
2
3
4
5
6
7
8
Note:
The Set argument determines which other arguments will be valid.
1 = Format 2 = Type 3 = Both
___________________________________________________
99
ControlPoint Protocol
2.5.5 ImgBalance
Type
Type Name
ImgBalance
Elements
unsigned
float
Set
Brightness, Contrast,
Gamma, Hue, Saturation
Set *
Brightness
Contrast
Gamma
Hue
Saturation
64
0
32
0
16
Sat
8
Hue
4
Gam
2
Con
100
___________________________________________________
1
Bri
ControlPoint Protocol
2.5.6 CPLiveVideoSource
Type
Type Name
CPLiveVideoSource
Elements
CPRect
unsigned
long
long
long
CPSize
long
Set
Format
InputType
nX, nY, nW, nH
cx, cy
Set *
bit field low order two bits (0000 0011)
Format
video format (lsb)
InputType video input type - (msb)
* The Set bits insure that the respective files contain valid data. Other
fields may contain data but may not be valid.
Set bit positions
128
0
64
0
32
0
16
0
8
0
4
0
2
Inp
1
For
CPRect
CPSize
cx, cy
current size
___________________________________________________
101
ControlPoint Protocol
2.5.7 CPRGBTiming
Type Name
CPRGBTiming
Type
boolean
short
short
short
short
short
short
long
short
long
boolean
boolean
Elements
bValid
nWidth
nHTotal
nHOffset
nHeight
nVTotal
nVOffset
nPhase
nVFreq
nSyncType
bHSyncNeg
bVSyncNeg
bValid
nWidth
nHTotal
nHOffset
nHeight
nVTotal
nVOffset
nPhase
nVFreq
nSyncType
bHsynNeg
bVsyncNeg
102
is valid Boolean 0 or 1
width of RGB image
horizontal total of RGB Image
horizontal offset
height of RGB image
total vertical pixels
vertical offset
RGB Pixel Phase
scan frequency
sync type
horizontal negative sync Boolean 0 or 1
vertical negative sync Boolean 0 or 1
___________________________________________________
ControlPoint Protocol
2.5.8 CPScreenConfig
Type Name
CPScreenConfig
Type
Elements
int
int
int
int
TotalWidth
TotalHeight
SingleScreenWidth
SingleScreenHeight
TotalWidth
TotalHeight
SingleScreenWidth
SingleScreenHeight
2.5.9 CPServerInfo
Type Name
CPServerInfo
Type
unsigned long
unsigned long
unsigned long
unsigned long
Elements
dwVersionMS
dwVersionLS
dwFileTimeMS
dwdwFileTimeLS
dwVersionMS
dwVersionLS
dwFileTimeMS
dwdwFileTimeLS
2.5.10 TString_array_t
Type Name
TString_array_t
Type
unsigned
string
Elements
nCount
pData[ ]
nCount
pData[ ]
___________________________________________________
103
ControlPoint Protocol
2.5.11 TCPSysMonECCInfo
Type Name
TCPSysMonECCInfo
Type
Elements
Valid
Long
Long
unsigned long
Boolean
SingleBitErrors
MultiBitErrors
BlockAddr
Table 49 TCPSysMonECCInfo
TCPSysMonECCInfo structure
Valid
1 if the data in the structure is valid. 0 if the data is invalid.
SingleBitErrors total number of single-bit errors since last boot.
MultiBitErrors total number of multi-bit errors since last boot.
BlockAddr
address of the 4k block in which the last error occurred.
2.5.12 TCPSysMonValue
Type Name
TCPSysMonValue
Type
Elements
Long
long
long
int
code
value
threshold
status
Table 50 TCPSysMonValue
TCPSysMonValue
code
value
threshold
status
104
___________________________________________________
ControlPoint Protocol
TCPSysMonValue codes:
The TCPSysMonValue parameter code is a 32-bit value. The low order 24 bits
contain the code of the parameter within the hardware module; the high order 8
bits contain the code of the hardware module (the location of the monitored
parameter).
3
2
3
1
3
0
2
9
2
8
2
7
2
6
2
5
2
4
2
3
2
2
1
2
8
6
4
3
2
1
6
0
8
0
4
0
2
0
1
0
7
8
0
0
6
4
0
2
5
2
0
0
4
1
0
0
3
8
0
2
4
0
1
2
0
0
1
8
3
8
8
6
0
8
2
3
1
0
0
0
0
0
0
4
1
9
4
3
0
4
2
2
8
0
0
0
0
0
2
0
9
7
1
5
2
2
1
4
0
0
0
0
0
2
0
1
9
1
8
1
7
1
6
1
5
1
4
1
3
1
2
1
1
1
0
0
9
0
8
0
7
0
6
0
5
0
4
0
3
0
2
0
1
1
0
4
8
5
7
6
2
0
2
0
0
0
0
0
5
2
4
2
8
8
2
6
2
1
4
4
1
3
1
0
7
2
6
5
6
3
6
3
2
7
6
8
1
6
3
8
4
8
1
9
2
4
0
9
6
2
0
4
8
1
0
2
4
5
1
2
2
5
6
1
2
8
6
4
3
2
1
6
0
8
0
4
0
2
0
1
1
9
1
0
0
0
0
0
1
8
8
0
0
0
0
1
7
4
0
0
0
0
1
6
2
0
0
0
0
1
5
1
0
0
0
0
1
4
8
0
0
0
1
3
4
0
0
0
1
2
2
0
0
0
1
1
1
0
0
0
1
0
8
0
0
0
9
2
0
0
0
8
1
0
0
0
7
8
0
0
6
4
0
0
5
2
0
0
4
1
0
0
3
8
0
2
4
0
1
2
0
0
1
Parameter Code
Table Key:
Title
Bit position
Data Word Sections
Positional Value base 10
Power of 2
Hex value
0 Motherboard
1 Main Chassis
2 Expansion Chassis 1
3 Expansion Chassis 2
Table 52 Hardware Module Codes
___________________________________________________
105
ControlPoint Protocol
Example:
To illustrate the use of the Module and Parameter Codes, consider an installation
with two chassis (a main chassis and an expansion chassis)and each chassis has a
set of blowers. To show values for each blower, the code for Blower 1 in the
Main Chassis is 8192 + 0x01000000 = 0x01002000 [16785408] and the code for
Blower 1 in Expansion Chassis 1 is 2048 + 0x02000000 = 0x02000800
[33562624]. All returned values are in decimal. This example shows the status of
all three chassis fans at 0 RPM. (Status values other than zero indicate an alarm
condition.)
The status field shows the current status of the monitored value:
0 normal
1 above high threshold. (See threshold field for threshold value)
2 below low threshold. (See threshold field for threshold value)
3 invalid measurement
+SysMonEx QueryAllValues
=00000000
{ 16 { 1 30 30 0 }
{ 2 29 29 0 }
{ 5 1456 1456 0 }
{ 4 6026 6026 0 }
{ 16 3248 3248 0 }
{ 160 3312 3312 0 }
{ 48 11917 11917 0 } { 64 -11410 -11410 0 }
{ 256 32 32 0 }
{ 16779264 0 1000 2 }
{ 16783360 0 1000 2 } }
{
{
{
{
{
3 5921 5921 0 }
6 1456 1456 0 }
32 4731 4731 0 }
176 1792 1792 0 }
16781312 0 1000 2 }
2.5.13 SysMonValueIndex_array_t
SysMonValueIndex_array_t an array of integers, specifying the value code.
This is the array used for entering parameters for the QueryValues method.
{ n codea codeb }
Where n is the number of elements (list of code values to return) and codex is the
code of the parameter desired. The figure below is an axample of the array.
Element
0
1
2
SysMonValueIndex_array_t
2, 4, 17
3, 4, 17, 9
1, 17
106
___________________________________________________
ControlPoint Protocol
2.5.14 TCPSysMonValue_array_t
TCPSysMonValue_array_t an array of TCPSysMonValue Structures.
TCPSysMonValue
index
value
threshold
status
=00000000
{ 16 { 1 30 30 0 }
{ 2 29 29 0 }
{ 4 6026 6026 0 }
{ 5 1456 1456 0 }
{ 16 3248 3248 0 }
{ 160 3312 3312 0 }
{ 48 11917 11917 0 } { 64 -11410 -11410 0 }
{ 256 32 32 0 }
{ 16779264 0 1000 2 }
{ 16783360 0 1000 2 } }
{
{
{
{
{
3 5921 5921 0 }
6 1456 1456 0 }
32 4731 4731 0 }
176 1792 1792 0 }
16781312 0 1000 2 }
The first number (16) is the number of parameters returned in the array
=00000000 { 16 { 1 30 30 0 }
Hardware module
Motherboard
Main Chassis
Expansion Chassis 1
Expansion Chassis 2
___________________________________________________
107
ControlPoint Protocol
2.5.15 TCPEventLogRecord
Type
Type Name
TCPEventLogRecord
unsigned long
unsigned long
unsigned long
unsigned long
Elements
nEventID
CPEventLogRecType
nRecNumber
nTime
Table 54 TCPSysMonValue
nEventID
108
___________________________________________________
ControlPoint Protocol
2.5.16 CPWndFrameInfo
Type
Type Name
CPWndFrameInfo
Elements
unsigned
short
DWORD
Boolean
Set
nFrameWidth
rgbFrameColor
bShowTitle
Set *
nFrameWidth
rgbFrameColor
bShowTitle
64
0
32
0
16
0
8
0
4
ST
2
FC
1
FW
___________________________________________________
109
ControlPoint Protocol
2.5.17 CPWndTitleInfo
Type
Type Name
CPWndTitleInfo
Elements
unsigned
DWORD
CPWndTitleBarPos
short
CPWndTitleHorizJust
CPWndTitleVertJust
Set
rgbTextColor
nBarPos
nMinBarHeight
nHorizJust
nVertJust
Set *
rgbTextColor
nBarPos
nMinBarHeight
nHorizJust
nVertJust
64
0
32
0
16
VJ
8
HJ
4
MH
110
___________________________________________________
2
BP
1
TC
ControlPoint Protocol
2.5.18 CPWndTitleFontInfo
Type
Type Name
_CPWndTitleFontInfo
Elements
unsigned
short
unsigned
wchar_t *
Set
nTextSize
nTextFlags
pszFontName
Set *
nTextSize
nTextFlags
pazFontName
64
0
32
0
16
0
8
0
4
FN
2
TF
1
TS
___________________________________________________
111
ControlPoint Protocol
2.5.19 ScreenTestPattern
Type Name
ScreenTestPattern
Type
Elements
unsigned
short
short
short
short
short
short
short
short
short
short
int
Set
nSingleScreen
nBarType
nGridCircle
nFgColorRed
nFgColorGreen
nFgColorBlue
nBgColorRed
nBgColorGreen
nBgColorBlue
nSmoothGradient
nLineSpacing
112
Set *
nSingleScreen
1 single screen
0 virtual screen
nBarType
0 solid color
1 vertical bars
2 horizontal bars
nGridCircle
nFgColorRed
nFgColorGreen
nFgColorBlue
nBgColorRed
nBgColorGreen
___________________________________________________
ControlPoint Protocol
nBgColorBlue
nSmoothGradient
LineSpacing
64
BR
32
FB
16
FG
8
FR
4
GC
2
BT
1
SS
8192
0
4096
0
2048
0
1024
LS
512
SG
256
BB
___________________________________________________
113
ControlPoint Protocol
2.5.20 CaPixelNetDeviceInfo_t
Type Name
CaPixelNetDeviceInfo_t
Type
long
long
long
DWORD
Elements
puid
devType
statusFlags
firmwareVersion
puid
devType
statusFlags
firmwareVersion
Input Device ID
Input Type:
FusionLink - 64
DVI Output - 65
DVI Input 128 or 133
HD Comp. Input 130
Currently not used
Version number of the device firmware
2.5.21 MetadataRecord_t
Type Name
MetadataRecord_t
Type
OLECHAR *
OLECHAR *
Elements
propName
propValue
propName
propValue
114
Name of metadata
Value of metadata
___________________________________________________
Chapter 3
Programming
Chapter 3 Programming
Where Set validates subsequent elements in the command string. This same
command structure is used in a more complex manner in the SetState Method
shown following. The SetImgBalance Method will be used as an example for
explaining this structure. A knowledge and understanding of the Binary and
Hexadecimal number systems will be helpful in understanding these structures as
they use the binary bit position as shown in the examples following.
___________________________________________________
115
Programming
The SetImgBalance Method sets the image balance of the specified LiveVideo or
RGB window. The SetImgBalance Method syntax and an example command are
shown below.
+LiveVideoSys SetImgBalance { WinId } { Set Bri Con Gam Hue Sat }
+LiveVideoSys SetImgBalance { 101 } { 27 0 100 0 0 100 }
The Set Element is used to validate all other elements in the subsequent list.
Set bit positions
128
0
64
0
32
0
16
Sat
8
Hue
4
Gam
2
Con
1
Bri
In this example Set is equal to 27. 27 is the sum of 16, 8 2 and 1 (1+2+8+16=21).
These values equate to the bit positions (powers of 2) in the table above that are
associated with the image balancing properties Hue, Saturation, Contrast, and
Brightness.
+LiveVideoSys SetImgBalance { 101 } { 27 0 100 0 0 100 }
27 =16 + 8 + 2 + 1
1 = Brightness = 0
2 = Contrast
= 100
8 = Hue
=0
16 = Saturation = 100
Since Gamma is not used, Set with a value of 27, validates all four remaining
elements in the list. The values shown are the default values for the parameters.
If you wanted only to set contrast and brightness (2 and 1) the Set element should
be 3 as shown in the following program line which sets contrast to 7 and
brightness to 93. All other values in the element list will be ignored except those
specified by Set.
+LiveVideoSys SetImgBalance { 101 } { 24 0 100 0 7 93 }
24 =8 + 16
8 = Hue= 7
16 = Saturation= 93
116
___________________________________________________
Programming
Get Set
Flags
Notify
Flags
(read
only)
wsVisible
wsMinimized
wsMaximized
wsFramed
0x0001
0x0002
0x0004
0x0008
wsLockAspect
0x0010
wsAlwaysOnTop 0x0020
wsPosition
wsSize
0x0400
0x0800
wsZOrder
wsTitle
0x1000
0x2000
wsKind
0x4000
wsChannel
wsBalance
wsFormat
wsCrop
0x00010000
0x00020000
0x00040000
0x00080000
Table 57 Flags
Several of these flags may be combined in one argument, some examples:
0x0005 = wsVisible, and wsMinimized
0x000b = wsVisible, wsMinimized, and wsFramed
0x0c03 = wsPosition, wsSize, and wsVisible, and wsMinimized
___________________________________________________
117
Programming
80000
40000
20000
10000
0x1000
wsCrop
wsFormat
wsBalance
wsChannel
8000
4000
2000
1000
na
wsKind
wsTitle
wsZOrder
800
400
200
100
0x100
wsSize
wsPosition
wsDestroyed
wsCreated
80
40
20
10
0x10
na
na
wsAlwaysOnTop
wsLockAspect
8
4
2
1
0x1
wsFramed
wsMaximized
wsMinimized
wsVisible
0x0001
0x0002
0x0004
0x0008
0x0010
0x0020
Visible - true - 1
Framed - true
8
0xC09
Visible
1=true
Valid 8 & 1
118
Position
4
Size
8
Valid 4 & 8
___________________________________________________
Programming
___________________________________________________
119
Programming
120
___________________________________________________
Programming
___________________________________________________
121
Programming
122
___________________________________________________
Programming
Three Set State
Third, you must make the window visible, size it, and place it somewhere on
your display wall. The four parameters required to do this can be set with the
SetState command. All windows are created with 0 width, 0 height, at
position (0,0), and are hidden (invisible), so at a minimum these four
parameters must be set with this command in order to view the window.
+Window SetState { { 101 } 2 1 7183 100 100 320 240 { -1 } }
Four - Start
Fourth, you must start the capture process with the Start command. In all
cases, the window type must be specified before it is Started. A windows
type can be specified with either the proper object (i.e. RGBSys) when
creating the window, or with the SetChannel Method, which requires the
proper object [RGBSys SetChannel ]. It is the action of giving the
window a specified content that makes it a specific Subsystem type when
using the SetChannel Method.
+GalWinSys Start { 101 }
Variations
The third step (Set State) may be used last after a window is completely
defined and started. This gives you the ability to make a window visible (or
not) and place it after it is completely defined. (See Notes following).
The listing below shows the creation of an RGB window using the generic form
with the GalWinSys Object.
1.
2.
3.
4.
GalWinSys NewWindowWithId
RGBSys SetChannel
Window SetState
GalWinSys Start
RGBSys NewWindowWithId
RGBSys SetChannel
Window SetState
RGBSys Start
___________________________________________________
123
Programming
The following example is one that uses the SetState command last to make the
window visible and place it in the last step.
1.
2.
3.
4.
RGBSys NewWindowWithId
RGBSys SetChannel
RGBSys Start
Window SetState
Creating the window with the RGBSys or LiveVideoSys Objects sets the window
type and allows you to use the Start command immediately after if desired.
Care must be taken when creating windows, to set the subtype before you Start
the window. When generic windows are created and open using GalWinSys, a
SetChannel command must be sent before the Start command. The SetChannel
command sets the subtype so the Start command knows what to start. If a
subtype is used to create the window (i.e. RGBSys or LiveVideoSys), then you
may send the Start command immediately and subsequently set a channel and
then size and place the window in whichever order you wish. Keep in mind that
all windows default to channel 1 when first created, so setting the proper input
channel is important.
Some window considerations:
LiveVideo windows cannot overlap or be stacked with each other but can
overlap or be staked with any other window.
RGB windows can overlap and be stacked with any window.
Notes:
The window SubSystemKind must be established before issuing the Start
command. This procedure must be followed in order to avoid Window Type
Mismatch errors.
Windows are created with 0 height, 0 width, hidden, and at position (0,0).
These four parameters must be set (using the SetState command), in order to
open and view an RGB or LiveVideo window.
All windows default to channel 1 when created when creating a window, it is
important to use the SetChannel command to select the proper input to be
viewed.
124
___________________________________________________
Programming
make Video visible, place at (100, 100), size at 320x240 and place on top
+Window SetState { { 102 } 3 9 7183 0 0 320 240 { -1 } }
make RGB visible, framed, place at ( 0, 0), size at 320x240 and place on top
Windows must be made visible, sized and positioned. Windows when first
created have size (0,0), position (0,0), and are invisible (hidden).
The following four lines of code are the minimal needed to create and place a
video window. This example is given in proper order (the last two commands
may be reordered if desired).
+LiveVideoSys NewWindowWithId { 101 }
+LiveVideoSys SetChannel { 101 } 2
+Window SetState { { 101 } 2 1 7183 100 100 320 240 { -1 } }
+GalWinSys Start { 101 }
Note:
Care must be taken to set the subtype either with the specific Object and
Method or by using the SetChannel command, before starting the window.
___________________________________________________
125
Programming
126
___________________________________________________
Programming
make Video visible, place at (100, 100), size at 320x240 and place on top
+Window SetState { { 102 } 3 9 7183 10 10 320 240 { -1 } }
make RGB visible, framed, place at ( 10, 1 0), size at 320x240 and place on top
+GalWinSys Start { 101 }
___________________________________________________
127
Programming
We have now opened, configured, and placed an RGB and a LiveVideo window
on screen one. Referring to the following figure, we will now move the RGB
window to screen 3 (offset by 50 pixels both x and y), and the LiveVideo window
to screen 6. We will move the video window and then resize it to fill the screen,
and we will put a frame around it.
1024
2048
3072
4095
0
768
123
5
4
6
1535
Screen
Numbers
make Video visible, place at (100, 100), size at 320x240 and place on top
+Window SetState { { 102 } 3 9 7183 1024 768 1024 768 { -1 } }
make RGB visible, framed, place at (1024, 768), size at 1024x768 and place
it on top
128
___________________________________________________
Programming
returns:
=00000000 1
Note:
It is important to note that when using the SetChannel Method with either the
LiveVideSys or RGBSys Objects, you define the type of window (either RGB
or LiveVideo) by the type of input it receives. SetChannel can be used to
change the sub-type of a window.
returns:
=00000000 { 3 1 0 }
(success - Set=3 for both Format and Type 1 for NTSC, 0 for Composite)
+LiveVideoSys SetVideoSource { 101 } { 3 1 0 }
Set=3 for both Format and Type 1 for NTSC, 0 for Composite
___________________________________________________
129
Programming
returns:
=00000000
{ 0 0 640 480 }
(success - {nX nY nW nH }
Returns:
=00000000 2
Success - reports 2 (LiveVideo) Since we have inquired under LiveVideoSys, it tells
us that LiveVideoSys can operate on LiveVideo windows.
+GalWinSys GetKind
Returns:
=00000000 1 (1 = all Galileo Windows)
130
___________________________________________________
Programming
+LiveVideoSys QueryAllWindows
nState flags together with x, y, w, h and ZOrder represent the current state of the
window. These fields carry data if marked as valid in nStateChange. For
example, if you want to see if a window is minimized, you first have to make sure
that wsMinimized in nStateChange is set to 1, which means that the bit in
nState carries info about the minimized state of the window. Then check the bit
wsMinimized in nState to see if the window is minimized or not. Do not get
confused because the name of the flag is the same for nStateChange and nState nStateChange verifies that the corresponding bit in nState is valid and means
something.
___________________________________________________
131
Programming
64
0
32
0
16
Sat
8
Hue
4
Gam
2
Con
1
Bri
Parameter Min.
Brightness
Contrast
Hue
Saturation
-100%
0%
-180
0%
Default Max.
0
100
0
100
+100%
200%
+180
200%
or
+GalWinSys ApplyDefaults { 123 }
132
___________________________________________________
Programming
64
0
32
0
16
0
8
0
4
0
2
Type
1
Format
LiveVideoFormat
LIVE_VIDEO_NTSC
LIVE_VIDEO_NTSCJ
LIVE_VIDEO_PAL
LIVE_VIDEO_PALM
LIVE_VIDEO_PALN
LIVE_VIDEO_SECAM
LIVE_VIDEO_PALNc
LIVE_VIDEO_NTSC443
LIVE_VIDEO_PAL60
0
1
2
3
4
5
6
7
8
LiveVideoType
LIVE_VIDEO_COMPOSITE 0
LIVE_VIDEO_SVIDEO
1
___________________________________________________
133
Programming
Sets the timing settings for this RGB window. Note, users should perform
a Set Timing immediately after creating a window; otherwise, the
execution will include the wait for the auto-detect timer to finish.
+RGBSys SetTiming { 102 } { 1 640 800 144 480 525 35 3 60 0
0 0 }
64
0
32
0
16
Sat
8
Hue
4
Gam
2
Con
1
Bri
___________________________________________________
Programming
{ 640 480
135
Programming
The SetState Method uses several flags and can be somewhat complicated. The
nStateChange flags determine which state fields will be valid either for a Get or
a Set. Non-valid data fields may have data but may not be correct if not specified
as valid in the nStateChange field.
Note:
The nStateChange flags determine which state fields will be valid. Data
fields returned with Get may not be valid if associated nStateChange bits are
not set.
136
___________________________________________________
Programming
Get a Windows State
The GetState command is shown below for window number 123 with the
response following.
+Window GetState { 123 }
=00000000 { { 123 } 2 9 7183 137 272 320 240
{ -1 } }
The SetState command is shown below for window 123. Note the labeling of the
specific fields.
TWindowState Elements - Id
___________________________________________________
137
Programming
Note:
It should be noted that while the nState bits are used to change the respective
parameters, the nStateChange bits make them valid.
nState bits
wsVisible
wsMinimized
wsMaximized
wsFramed
wsLockAspect
wsAlwaysOnTop
0x0001
0x0002
0x0004
0x0008
0x0010
0x0020
A window cannot be both minimized and maximized at the same time so the
max. value will either be 9 + 2 or 9 + 4, 11 or 13 ( 1B or 1D).
nStateChange bits
wsVisible
0x0001
wsMinimized
0x0002
wsMaximized
0x0004
wsFramed
0x0008
wsLockAspect
0x0010
wsAlwaysOnTop
0x0020
wsZAfter
0x1000
138
___________________________________________________
Programming
An example:
If you only want to set a window on top, you would use the following command.
+Window SetState { { 123 } 2 0 0x1000 0 0 0 0 { -1 } }
=00000000 { { 123 } 2 9 7183 137 272 320 240 { -1 }
___________________________________________________
139
Programming
3.4.6.3.4 QueryAllValues
Use QueryAllValues to retrieve all monitored system parameters. The
QueryAllValues command returns 24 separate parameters.
+SysMonEx QueryAllValues
{
{
{
{
{
3 5921 5921 0 }
6 1456 1456 0 }
32 4731 4731 0 }
176 1792 1792 0 }
16781312 0 1000 2 }
TCPSysMonValue
code
value
threshold
status
140
___________________________________________________
Programming
Parameter codes:
Code
Parameter
1
2
3
4
5
6
7
8
16
32
48
64
80
96
112
128
144
160
176
hex
Code
CPU1 temperature
CPU2 Temp
CPU1 Fan speed
CPU2 Fan Speed
CPU1 core voltage
CPU2 core voltage
CPU1 socket temp
CPU2 socket temp
01
02
03
04
05
06
07
08
256
512
motherboard temp
chassis temp
100
200
2048
800
4096
1000
3.3V
+5V
+12V
-12V
2.5V
Battery
1.5V
- 5V
5V standby
3.3V standby
1.8V
10
20
30
40
50
60
70
80
90
A0
B0
1800
2000
2800
3000
6144
8192
10240
12288
Parameter
hex
___________________________________________________
141
Programming
This example sets the current position in the event log. The recNumber is the
record number at which to position the record pointer, the flags bits determines
the seek mode:
Bit 0 (mask 1) go to the oldest record in the event log
Bit 1 (mask 2) go to the latest (newest) event
Bit 2 (mask 4) go to the record specified in recNum
Bit 3 (mask 8) after positioning, the reading will be done in forward motion
Bit 4 (mask 16) after positioning, the reading will be done in backward
motion
Notes:
recNum will only be valid for Bit2 (mask 4) but the position must be filled
when sending the method. Failure to fill all fields will cause an error.
In order to retrieve a record you must first set the position in the record then
get the record.
142
___________________________________________________
Programming
+EventLog SetPosition 2 0
+EventLog GetRecord
This command reads one record from the event log at the latest entered record. It
returns the record header information, the name of the source that generated the
event and the text of the event. The position is automatically moved to the next
record depending on the seek mode (forwards or backwards) specified in flag Bit
3 or Bit 4.
=00000000 { header } source text
Where header is described below, source is the program element that caused the error,
and text is the text of the event log message
=00000000 { 1074003997 0 20 1047388718 } "GalSysMon"
"Chassis Fan-3 speed back to normal. Current speed is 2463
RPM"
=00000001 { 0 0 0 0 }
This is really an error condition indicating end of file (EOF). You will get this
return condition if, after retrieving the newest record you, you try to retrieve
another record without first setting the pointer. At this point, the pointer has
advanced past the last (newest) record. See also Bit3 and Bit4 for setting the
direction for moving the pointer after reading a record.
header - { nEventID CPEventLogRecType_t nRecNumber nTime }
nEventID = the identifier of the event
The nEventID field is the unique identifier of the event.
CPEventLogRecType_t nType = type of the event (severity)
The nType field shows the type (severity) of the event:
0 Information message
1 Error event
2 Warning event
nRecNumber = the record number in the event log
The nRecNumber field shows the position of the record in the system
event log.
nTime = encoded time of the event
The nTime field has the encoded time of the event. It is the number of
seconds elapsed since midnight (00:00:00) January 1, 1970.
___________________________________________________
143
Programming
sets up a new user with user name, password and user level
This is an admin only command.
3.4.7.2 Delete User
The DeleteUser Method allows the administrator to remove users from the
authentication list.
+UserMan DeleteUser username
144
___________________________________________________
Programming
___________________________________________________
145
Programming
' this is similar to the manual operation using the window properties
dialog.
Note:
The Start command must be used whenever the SubType of a window is
changed.
146
___________________________________________________
Programming
3.4.10 Layouts
Use the commands as outlined below when working with layouts.
Save Layout
+WinServer SaveLayout layoutname { 0 }
Set Layout
+WinServer SetLayout layoutname
Delete Layout
+WinServer DeleteLayout layoutname
___________________________________________________
147
Programming
3.4.12 CPWeb Window
Use the commands as outlined below when working with CPWeb window.
Set URL
+CPWebSys SetURL { 123 } http://www.jupiter.com
Get URL
+ CPWebSys GetURL { 123 }
C:/MyPictures/APic.bmp
148
___________________________________________________
Programming
___________________________________________________
149
Programming
Start
Send
Connect
No
OK?
Send
Authenticate
Optional
Send
Protocol
150
___________________________________________________
Programming
Note:
Windows command line argument values will change the default values while
serial device commands do not change them.
___________________________________________________
151
Programming
152
___________________________________________________
Programming
All commands sent to the Wall Controller from the serial device should be
followed with a test for the success response code =00000000 (success) and/or
the ER Socket Error, which indicates a disconnected status. If you receive
ER error response, you will need to send your connect and authentication strings
again as described previously and then re-issue the original command that
received the error status.
ControlPoint
Command
YES
Response =
"=00000000"
NO
Connect &
Authenticate
ControlPoint
Command
NO
Response =
"ER Socket
Error""
ControlPoint
Command
YES
YES
Connect &
Authenticate
Response =
"=00000000"
NO
Response =
"ER Socket
Error"
NO
YES
ControlPoint
Commands
Continue
ControlPoint
Commands
Continue
Connect &
Authenticate
ControlPoint
Commands
Continue
___________________________________________________
153
Programming
154
___________________________________________________
Programming
send to the PESA switch. PESA switch commands can be found in the PESA
Switch Manual. Example: /cmd="H001005"
___________________________________________________
155
Programming
= 0x00200000
This flag is used in window state notifications to show that a new input is selected
for the window.
156
___________________________________________________
Programming
Where SEND_STRING is the output command and JWC is the Jupiter Wall
Controller (defined device). What follows is the actual command surrounded by
double quotes. The actual protocol text is between single quotes. The numbers
13 and 10 represent the carriage return and line feed characters that must conclude
every ControlPoint command line.
Each command must be on a single line and cannot be broken across multiple
lines. The example below is shown on two lines but actually is only a single
program line.
SEND_STRING JWC,"'+Window SetState { { 2 } 3 1 7168 10 10
199 150 { -1 } }',13,10"
___________________________________________________
157
Programming
158
= 5001:2:0
___________________________________________________
Appendix A
Constants, Structures, Objects, and
Methods
Appendices
Appendix A Constants, Structures, Objects, and Methods
The ControlPoint logical protocol is developed on top of RMC (Remote Method
Call) inter-process communication protocol, implemented over a TCP/IP
connection.
1. RMC Protocol
1.1. Protocol Syntax
The RMC protocol is a text-based streaming protocol that allows peers to invoke
methods of objects and receive asynchronous notifications. The peer that invokes
a method is called client and the peer that services the method and returns the
result of the execution is called server. For each client request there is a server
response. Requests and responses are synchronous and a client cannot issue a
new command before the current call completes.
Notifications/events are generated by the server and are asynchronous with the
request-response mechanism. Notifications are only one way and are not
acknowledged by the client. Notifications can happen in-between a requestresponse transaction.
A sentence completes with LF character; a CR character before the LF character
is ignored. All tokens in the sentence are separated with spaces. Extra spaces are
ignored.
The first character of the sentence determines the type request, response or
notification.
<request> ::= +<object name> <method> [<value list>]
<response> ::= =<result code> [<value list>]
<notification> ::= :<object name> <method> [<value list>]
___________________________________________________
159
Note, that there are spaces at the opening and closing bracket. The spaces are
needed because they separate the bracket character from the next token. The
bracket character itself is not a separator. There is the array data type, which is
actually a structure with the first fields set to the number of elements to follow.
160
___________________________________________________
{ 0 }
The server returns one additional piece of data a structure with one integer
element of value 10001.
+Window GetTitle { 10001 }
=00000000 "10001"
The client supplies one argument to the operation a structure. The server
returns an additional string value.
+Window SetTitle { 10001 } "New Title"
=80040504
The object name Window is misspelled, thats why the server returns error code
0x80040504, meaning object does not exist.
+Window SetTitle { 10001 } "New Title"
=00000000
Two arguments are provided to the operation one structure and one text string.
+WinServer QueryAllWindows
=00000000 { 1 { { 10001 } 2 0 7183 0 0 0 0
{ -1 } } }
This transaction returns an array of one element and has two levels of nested
structures.
___________________________________________________
161
1.2. Authentication
An RMC server requires client authentication before it can accept operation
requests. The authentication mechanism is plain password authentication,
where the client gives a user name and a password and the server verifies the pair.
The user name and password are sent as individual text lines.
If the user is authenticated, the server responds with OK, otherwise with ER.
After the OK message, the server is ready to accept RMC requests.
Example:
myname
mypassword
OK
or
myname
mywrongpassword
ER
2. Constants
enum WindowStateFlags
{
wsVisible
wsMinimized
wsMaximized
wsFramed
wsLockAspect
wsAlwaysOnTop
=
=
=
=
=
=
0x0001,
0x0002,
0x0004,
0x0008,
0x0010,
0x0020,
wsCreated
wsDestroyed
wsPosition
wsSize
wsZOrder
wsTitle
wsKind
=
=
=
=
=
=
=
0x0100,
0x0200,
0x0400,
0x0800,
0x1000,
0x2000,
0x4000,
=
=
=
=
0x00010000,
0x00020000,
0x00040000,
0x00080000,
wsChannel
wsBalance
wsFormat
wsCrop
};
162
___________________________________________________
enum LiveVideoInputType
{
LIVE_VIDEO_COMPOSITE = 0,
LIVE_VIDEO_SVIDEO = 1,
};
enum SubSystemKind
{
SubSystemKind_None = 0,
SubSystemKind_Galileo = 1,
SubSystemKind_LiveVideo = 2,
SubSystemKind_RGBCapture = 3,
SubSystemKind_SystemWindow = 4,
SubSystemKind_CPShare = 5,
SubSystemKind_VidStream = 6,
SubSystemKind_CPWeb = 7,
SubSystemKind_PictureViewer = 8,
SubSystemKind_PixelNet = 9,
};
enum RGBRefreshClass
{
rgbClassMaxSpeed = 0,
rgbClassFast = 1,
rgbClassMedium = 2,
rgbClassSlow = 3,
};
___________________________________________________
163
3. Structures
struct WinId_t
{
long _id;
};
struct WinId_t_array_t
{
unsigned nCount;
[size_is(nCount)] WinId_t pData[];
};
struct TWindowState
{
WinId_t Id;
SubSystemKind_t Kind;
unsigned nState;
unsigned nStateChange;
int x, y, w, h;
WinId_t
};
ZAfter;
struct ImgBalance
{
unsigned Set;
float Brightness, Contrast, Gamma, Hue, Saturation;
};
struct CPLiveVideoSource
{
unsigned Set;
long Format;
long InputType;
};
struct CPRect
{
long nX, nY, nW, nH;
};
struct CPSize
{
long cx, cy;
};
164
___________________________________________________
struct CPScreenConfig
{
int TotalWidth, TotalHeight;
int SingleScreenWidth, SingleScreenHeight;
};
struct CPServerInfo
{
unsigned long dwVersionMS;
unsigned long dwVersionLS;
unsigned long dwFileTimeMS;
unsigned long dwFileTimeLS;
};
struct TString_array_t
{
unsigned nCount;
[size_is(nCount),string] char pData[];
} TString_array_t;
___________________________________________________
165
object Notify
{
HRESULT WindowsState ( [in] TWindowState_array_t );
HRESULT ScreenConfigChanged ( [in] CPScreenConfig );
};
object WinServer
{
HRESULT DeleteWindow ( [in] WinId_t );
HRESULT QueryAllWindows ( [out] TWindowState_array_t );
HRESULT QueryWindows ( [in] WinId_t_array_t, [out]
TWindowState_array_t );
HRESULT FindWindow ( [in,string] window_descriptor,
[out] WinId_t );
HRESULT InvokeAppWindow ( [in,string] appWinName,
[out] WinId_t );
HRESULT GetAppWinInfo ( [in] WinId_t winid, [out,string]
window_descriptor, [out,string] cmdline, [out_string] workDir );
HRESULT RegisterNotifyTarget ();
HRESULT UnregisterNotifyTarget ();
HRESULT GetServerInfo ( [out] CPServerInfo );
HRESULT GetScreenConfig ( [out] CPScreenConfig );
HRESULT Quit ();
HRESULT
HRESULT
HRESULT
HRESULT
};
166
QueryAllLayoutsCS ( [out,string] );
SetLayout ( [in,string] );
SaveLayout ( [in,string], [in] WinId_t_array_t );
DeleteLayout ( [in,string] );
___________________________________________________
GetFileName
CloseFile
OpenFile
FlushToFile
( [out,string] );
();
( [in,string] );
( [in,string] );
object GalWinSys
{
HRESULT GetKind ( [out] SubSystemKind_t );
HRESULT IsOfKind ( [in] WinId_t );
HRESULT QueryAllWindows ( [out] TWindowState_array_t );
HRESULT NewWindow ( [out] WinId_t );
HRESULT NewWindowWithId ( [in] WinId_t );
HRESULT Start ( [in] WinId_t );
HRESULT Stop ( [in] WinId_t );
HRESULT Freeze ( [in] WinId_t );
HRESULT SetCrop ( [in] WinId_t, [in] CPRect );
HRESULT SetOrigin ( [in] WinId_t, [in] long x, [in] long y );
HRESULT GetCrop ( [in] WinId_t, [out] CPRect );
___________________________________________________
167
object UserMan
{
HRESULT AddUser ( [in,string] UserName, [in,string] AuthToken,
[in] short Level );
HRESULT DeleteUser ( [in,string] );
HRESULT EnumUsersCS ( [out,string] );
HRESULT SetUserInfo ( [in,string] Name, [in,string] AuthToken,
[in] short Level );
HRESULT GetUserInfo ( [in,string] Name, [out,string] AuthToken,
[out] short Level );
HRESULT ChangePassword ( [in,string] OldToken,
[in,string] NewToken );
};
168
___________________________________________________
SysMonEx methods:
HRESULT QueryAllValues ( [out] TCPSysMonValue_array_t * values );
HRESULT QueryValues ( [in] CPSysMonValueCode_array_t list,
[out] TCPSysMonValue_array_t * values );
HRESULT QueryECCInfo ( [out] TCPSysMonECCInfo * ecc );
HRESULT RegisterNotifyTarget ();
HRESULT UnregisterNotifyTarget ();
TCPSysMonValue structure
Code the code of the monitored parameter
Value the current reading of the parameter
Threshold threshold value that caused the alarm
Status alarm status of the parameter
TCPSysMonValue code:
The parameter code is a 32-bit number. The low 24 bits contain the code of the
parameter within the hardware module, the high 8 bits contain the code of the
hardware module (the location of the monitored parameter).
Hardware module codes:
0 motherboard
1 main chassis
2 1st expansion chassis
3 2nd expansion chassis
Parameter codes:
1 CPU1 Temp.,
2 - CPU2 Temp.,
3 CPU1 Fan speed,
4 CPU2 Fan Speed,
5 CPU1 core voltage,
6 CPU2 core voltage,
7 CPU1 socket temp,
8 CPU2 socket temp,
16 3.3V
32 +5V,
48 - +12V,
64 - -12V,
80 2.5V,
___________________________________________________
169
170
___________________________________________________
Appendix B
Error Codes
Result Codes
This section lists the Result codes.
Result Codes
00000000
00000001
OK
Success, but false returned
___________________________________________________
171
B - Error Codes
172
___________________________________________________
B - Error Codes
___________________________________________________
173
B - Error Codes
Blank Page
174
___________________________________________________
Appendix C
Command Listing
Appendix C - Alphabetic Command Listing
This appendix lists all the ControlPoint commands in alphabetical order by Object
and Method. See Methods on page 189 for a listing by Method.
Objects
The following is a listing of the Objects and their Methods in alphabetical order.
AppCtrl
Exec ( [in, string] CmdLine )
+AppCtrl Exec program path
Executes the specified command-line on the server. Note that all paths are server-relative. Program
path is the path on the server to the program you wish to run.
ConfigSys
GetServerInfo ( [out] CPPlatformInfo, [out,string] versionInfo )
+ConfigSys GetServerInfo
=00000000 { 3 0 0 0 1 } "1.7.0.107"
Returns information about the hardware platform and the version of the Galileo software installed on
the server.
CPShareSys
NewWindow ( [out] WinId_t pwid )
NewWindowWithId ( [in] WinId_t wid )
SetConnection ( [in] WinId_t wid, [in,string] connection )
GetConnection ( [in] WinId_t wid, [out,string] connection )
GetCredentials ( [in] WinId_t wid, [out,string] server, [out,
string] password )
___________________________________________________
175
C - Command Listing
CPWebSys
NewWindow ( [out] WinId_t pwid )
NewWindowWithId ( [in] WinId_t wid )
SetURL ([in] WinId_t, [in,string])
+CPWebSys SetURL { 123 } http://www.jupiter.com
Load a web page with the specified url address.
Debug
CloseFile
()
( [in, string] )
176
___________________________________________________
C - Command Listing
EventLog
SetPosition ( [in] unsigned flags), ( [in] unsigned long recNum )
+EventLog SetPosition flag recNum
+EventLog SetPosition 2 0 Sets the current position in the event log. The recNumber
is the record number to position at, the flags bits determines the seek mode:
RegisterNotifyTarget ( )
+EventLog RegisterNotifyTarget Registers the client to receive event notifications
from the server. See EventLogNotify object.
UnregisterNotifyTarget ( )
+EventLog UnregisterNotifyTarget
EventLogNotify
NewEvent ( [in] TCPEventLogRecord rec ), [in, string] SourceName
), [in, string] EventText )
+EventLogNotify NewEvent
The server calls this method on the client when a new event is generated. The arguments are the
record header, the name of the source that generated the event and the text of the event message.
=00000000 { 1074003997 0 20 1047388718 } "GalSysMon" "Chassis Fan-3
speed back to normal. Current speed is 2463 RPM"
___________________________________________________
177
C - Command Listing
GalWinSys
ApplyDefaults ( [in] WinId_t )
+GalWinSys ApplyDefaults { 123 }
Brightness, contract, hue, saturation and cropping are reset.
178
___________________________________________________
C - Command Listing
GalWinSys (Continued)
SetCrop ( [in] WinId_t, [in] CPRect )
+GalWinSys SetCrop { 123 } {nX nY nW nH }
Crop works by relation to the normal image size. nX and nY specify the pixels removed from the top
and bottom. nW and nH specify the size of the cropped image. A 640x480 window set at 10 10 600
400 will have 10 pixels removed from the top, 10 pixels removed from the left, 30 and 70 removed
from the right and bottom. ImageWidth - nX - (right pixels) = nW or 640 10 30 = 600.
(Starts capturing)
(Stops capturing )
___________________________________________________
179
C - Command Listing
ListCfgGroup
ListCfgGroup ( [in] group_code, [out,string] objNames[]
+ConfigSys ListCfgGroup 1
=00000000 { 3 "my rgb" "rgb" "video" }
Returns the object names in a configuration group. The configuration group codes are:
1 Named Inputs
2 Application Windows
The result is an array of strings.
LiveVideoSys
GetChannel ( [in] WinId_t, [out] short )
+LiveVideoSys GetChannel { 123 } (Returns current Channel)
Notify
ScreenConfigChanged ( [in] CPScreenConfig
180
___________________________________________________
(Id Kind
C - Command Listing
PictureViewerSys
NewWindow ( [out] WinId_t pwid )
NewWindowWithId ( [in] WinId_t wid )
ShowPicture ([in] WinId_t, [in,string])
+PictureViewerSys ShowPicture { 123 } C:/MyPictures/APic.bmp
Show a picture with the specified file name.
___________________________________________________
181
C - Command Listing
RGBSys
GetAutoDetectTiming ( [in] WinId_t wid, [out] Boolean * bEnabled
+RGBSys GetAutoDetectTiming { 102 } (Returns auto detect setting (1/0))
bEnable )
182
___________________________________________________
C - Command Listing
ScreenUtil
ShowPattern ([in,string])
+ScreenUtil ShowPattern colorpat
Show a screen test pattern with the specified pattern name.
___________________________________________________
183
C - Command Listing
SysMonEx
QueryAllValues ([out] TCPSysMonValue_array_t )
Returns all monitored values. This object uses the TCPSysMonValue_array_t data structure.
+SysMonEx QueryAllValues
RegisterNotifyTarget ( )
Registers the client to receive notifications when the system status changes. See SysMonNotifyEx
object. Use this method to turn on the notify messages.
+SysMonEx RegisterNotifyTarget
UnregisterNotifyTarget ( )
Unregisters the client to receive system-monitoring notifications. Use this method to turn off the
notify messages.
+SysMonEx UnregisterNotifyTarget
SysMonNotifyEx
ECCError [in] TCPSysMonValue_array_t )
Called when an ECC error occurs. This method returns the System EDD Data.
+SysMonNotifyEx ECCError
:SysMonNotifyEx ECCError { 0 1 0 0 }
184
___________________________________________________
C - Command Listing
UserMan
AddUser ( [in, string] UserName, [in, string] AuthToken, [in]
short Level )
+UserMan AddUser username password level adds a user of user name and password with user
level see User Levels below
(deletes user)
___________________________________________________
185
C - Command Listing
Window
GetState ( [in] WinId_t, [out] TWindowState )
+Window GetState { 123 }
Returns (Id Kind nState nStateChange x y w h ZAfter)
=00000000 { { 123 } 2 1 7183 100 100 320 200 { 1 } }
nStateChange indicates valid data fields. 7183 indicates that all are valid. See Flags and
nStateChange.
186
___________________________________________________
C - Command Listing
WinServer
DeleteLayout ( [in, string] )
+WinServer DeleteLayout layoutname
___________________________________________________
187
C - Command Listing
QueryWindows ( [in] WinId_t_array_t, [out] TWindowState_array_t )
+WinServer QueryWindows { 3 { 10001 } { 10002 } { 123 } }
Returns TwindowState_array_t for each specified window ID.
Quit ();
+WinServer Quit { } (quits (exits) ControlPoint Server)
RegisterNotifyTarget ()
+WinServer RegisterNotifyTarget { } (turns on notify messages)
UnregisterNotifyTarget ()
+WinServer UnregisterNotifyTarget { } (turns off notify messages)
188
___________________________________________________
C - Command Listing
Methods
The following is a list of all ControlPoint Methods in alphabetical order.
AddUser ( [in, string] UserName, [in, string] AuthToken, [in]
short Level )
+UserMan AddUser username password level
adds a user of user name and password with user level see User Levels below
CloseFile
()
(deletes user)
+SysMonNotifyEx ECCError
Called when an ECC error occurs. This method returns the System EDD Data.
:SysMonNotifyEx ECCError { 0 1 0 0 }
___________________________________________________
189
C - Command Listing
Methods (Continued)
FlushToFile ( [in, string] )
Freeze ( [in] WinId_t )
+GalWinSys Freeze { 123 }
GetPlatformInfo
+SysMonEx GetPlatformInfo Returns the hardware platform information.
=00000000 { 1 0 0 0 0 }
{ header } source text Reads one record from the event log
190
___________________________________________________
C - Command Listing
Methods (Continued)
GetScreenConfig ( [out] CPScreenConfig )
+WinServer GetScreenConfig
Returns { TotalWidth TotalHeight SingleScreenWidth SingleScreenHeight }
Can this Object operate on this window?). When used with LiveVideoSys or RGBSys
returns 0 or 1 (true or false) for type of window queried.
NewEvent ( [in] TCPEventLogRecord rec ), [in, string] SourceName
), [in, string] EventText )
+EventLogNotify NewEvent
The server calls this method on the client when a new event is generated. The arguments are the
record header, the name of the source that generated the event and the text of the event message.
=00000000 { 1074003997 0 20 1047388718 } "GalSysMon" "Chassis Fan-3
speed back to normal. Current speed is 2463 RPM"
___________________________________________________
191
C - Command Listing
Methods (Continued)
NewWindowWithId ( [in] WinId_t )
+GalWinSys NewWindowWithId { 123 } Creates new window with specified ID number.
Quit ()
+WinServer Quit { } (quits (exits) ControlPoint Server)
RegisterNotifyTarget ()
+WinServer RegisterNotifyTarget { } (turns on notify messages)
+SysMonExEx RegisterNotifyTarget Registers the client to receive notifications
when the system status changes
192
___________________________________________________
C - Command Listing
Methods (Continued)
SaveLayout ( [in, string], [in] WinId_t_array_t )
+WinServer SaveLayout layoutname { 0 } (Saves named layout)
{ WinId_t_array_t } (nCount WinId_t pData[ ])
bEnable )
___________________________________________________
193
C - Command Listing
Methods (Continued)
SetTiming ( [in] WinId_t, [in] CPRGBTiming )
+RGBSys SetTiming { 102 } { bValid nWidth nHTotal nHOffset nHeight
nVTotal nVOffset nPhase nVFreq nSyncType bHSynNeg bVSyncNeg }
UnregisterNotifyTarget ()
+WinServer UnregisterNotifyTarget { } (turns off notify messages)
+SysMonEx UnregisterNotifyTarget
Unregisters the client to receive system-monitoring notifications
194
___________________________________________________
(Id
Index of
Figures
Indexes
Index of Figures
Figure 1 Remote Connection Options..........................................................................................19
Figure 2 ControlPoint Block diagram ..........................................................................................26
Figure 3 Touch Panel Connection Options ..................................................................................27
Figure 4 Remotely Connected Touch Panel.................................................................................28
Figure 5 Start Menu for GalileoConnect......................................................................................31
Figure 6 GalileoConnect Icon ......................................................................................................32
Figure 7 GalileoConnect About (Representative Image) .............................................................32
Figure 8 GalileoConnect help ......................................................................................................33
Figure 9 Shortcut Dialog..............................................................................................................37
Figure 10 Shortcut Dialog............................................................................................................39
Figure 11 The WinID_t_array_t Array Example .........................................................................96
Figure 12 The WinID_t_array_t Array ........................................................................................98
Figure 13 The SysMonValueIndex_array_t Example................................................................106
Figure 14 Example Coordinates for Moving Windows .............................................................128
Figure 15 Example of SetState...................................................................................................137
Figure 16 Connect Loop Flow Chart..........................................................................................150
Figure 17 Stay Connected Flow Charts......................................................................................153
___________________________________________________
195
Figures
Blank Page
196
___________________________________________________
Index of
Tables
Index of Tables
Table 1 Default Argument Values ...............................................................................................36
Table 2 Set variable Bit Positions ................................................................................................60
Table 3 Flags................................................................................................................................61
Table 4 Flag Hex Positions ..........................................................................................................62
Table 5 Live Video Format ..........................................................................................................62
Table 6 Live Video Type .............................................................................................................63
Table 7 SubSystemKind...............................................................................................................63
Table 8 RGBRefreshClass ...........................................................................................................64
Table 9 Objects ............................................................................................................................65
Table 10 AppCtrl Object..............................................................................................................66
Table 11 ConfigSys Object ..........................................................................................................66
Table 12 CPShareSys Object .......................................................................................................67
Table 13 VidStreamSys Object....................................................................................................68
Table 14 Debug Object ................................................................................................................69
Table 15 EventLog Object ...........................................................................................................69
Table 16 EventLogNotify Object.................................................................................................70
Table 17 GalWinSys Object.........................................................................................................71
Table 18 ListCfgGroup Object.....................................................................................................73
Table 19 LiveVideoSys : GalWinSys Object...............................................................................74
Table 20 Notify Object ................................................................................................................75
Table 21 PictureViewerSys Object ..............................................................................................76
Table 22 PixelNetSys Object .......................................................................................................77
Table 23 PixelNetMgr Object ......................................................................................................79
Table 24 RGBSys : GalWinSys Object........................................................................................80
Table 25 ScreenUtil Object..........................................................................................................81
Table 26 SysMonEx Object .........................................................................................................82
Table 27 TCPSysMonValue Units...............................................................................................85
Table 28 SysMonNotifyEx Object...............................................................................................85
Table 29 User Management Object..............................................................................................88
Table 30 VidStreamSys Object....................................................................................................89
Table 31 Window Object .............................................................................................................91
Table 32 Flags..............................................................................................................................92
Table 33 nState Bits .....................................................................................................................93
Table 34 WinServer Object..........................................................................................................94
Table 35 Data Structures..............................................................................................................96
Table 36 Data Structure - TWindowState ....................................................................................97
Table 37 nState Bits .....................................................................................................................97
Table 38 Data Structure - TWindowState_array_t.......................................................................98
Table 39 Live Video Type ...........................................................................................................98
Table 40 Live Video Format ........................................................................................................99
Table 41 Data Structure - ImgBalance .......................................................................................100
Table 42 Image Balance Bit Positions .......................................................................................100
Table 43 Data Structures............................................................................................................101
Table 44 Input and Format Bit Positions ...................................................................................101
Table 45 Data Structure - CPRGBTiming .................................................................................102
Table 46 Data Structure - CPScreenConfig ...............................................................................103
Table 47 Data Structure - CPServerInfo ....................................................................................103
___________________________________________________
197
Tables
Table 48 Data Structure TString_array_t ................................................................................103
Table 49 TCPSysMonECCInfo..................................................................................................104
Table 50 TCPSysMonValue ......................................................................................................104
Table 51 TCPSysMonValue Codes............................................................................................105
Table 52 Hardware Module Codes.............................................................................................105
Table 53 Hardware Module Codes.............................................................................................107
Table 54 TCPSysMonValue ......................................................................................................108
Table 55 Data Structure - CPWndFrameInfo ..........................................................................109
Table 56 Window Frame Info Bit Positions...............................................................................109
Table 57 Flags............................................................................................................................117
Table 58 Flag Hex Positional Values.........................................................................................118
Table 59 nState Bits ...................................................................................................................118
Table 60 Default Image Balance Values....................................................................................132
Table 61 Type and Format Values .............................................................................................133
Table 62 nState and nState Change Bits ....................................................................................138
Table 63 Parameter Codes .........................................................................................................141
Table 64 Default GalCon Argument Values ..............................................................................151
Table 65 Results Codes..............................................................................................................171
Table 66 Server Error Codes......................................................................................................171
Table 67 Protocol Parsing Error Codes......................................................................................172
Table 68 Connection and Server Error Codes............................................................................172
Table 69 User Management Error Codes...................................................................................172
Table 70 RGB Error Codes ........................................................................................................173
Table 71 Video Error Codes ......................................................................................................173
198
___________________________________________________
Index
Index
bValid ....................................................................102
bVSyncNeg............................................................102
A
Acknowledgements ...................................................2
Add User................................................................144
AddUser...................................................88, 185, 189
Alphabetic Commands ..........................................175
AMX
Define Device ...................................................158
Sending Commands ..........................................157
Serial Port .........................................................157
Touch Panels.....................................................157
AMX......................................................................157
AppCtrl..................................................................175
Exec ....................................................................66
AppCtrl Object ........................................................66
Appendix A Constants, Structures, Objects, and
Methods ............................................................159
Appendix B Error Codes ....................................171
Appendix C Alphabetic Command Listing.........175
ApplyDefaults..........................................73, 132, 189
Arguments ...............................................................60
Array........................................................................18
Aspect Ratio ......................................................61, 62
Authentication .........................................................43
auto ............................................................35, 40, 151
B
Balance ..............................................................61, 62
baud .................................................................34, 151
Baud.........................................................................44
Baud Command .......................................................44
Baud Rate ................................................................44
bHSyncNeg............................................................102
Bit Fields .................................................................60
BlockAddr .............................................................104
Braces, Using...........................................................50
Brightness ..............................................................100
C
CaPixelNetDeviceInfo_t........................................114
Change LiveVideo to RGB Window .....................126
Change Password...................................................145
Change RGB to LiveVideo Window .....................126
Change Window Type ...........................................126
ChangePassword......................................88, 185, 189
Changing Window Type........................................146
Channel..............................................................61, 62
Chapter 1 Getting Started .....................................19
Chapter 2 ControlPoint Protocol ..........................57
Chapter 3 Program Examples .............................115
Chapter 3 Programming......................................115
CloseFile..........................................................69, 189
Command Line ........................................................40
Command Line Arguments......................................34
Command Line Default Values .............................151
Command Line Help .......................................33, 149
Command Structure.........................................52, 115
Commands.......................................................48, 175
ControlPoint........................................................48
GalileoConnect .............................................48, 49
Communicating with the ControlPoint Server.........20
comport......................................................34, 40, 151
Composite..........................................................63, 98
ConfigSys ..............................................................175
ConfigSys Object.....................................................66
Connect....................................................................45
Connect - * for Server Name ...................................45
Connect Mode ......................................................45
Connect Mode 1 No Parameters ........................45
Connect Mode 2 With Parameters .....................45
Connect And Login From The Command Line.....149
Connect and Login from the Touch Panel .............150
Connect Command ..................................................45
Connecting
___________________________________________________
199
Index
Command Line ...........................................40, 149
Serial Device...............................................41, 150
Shortcut...............................................................39
Connecting to ControlPoint .....................................38
Connection Testing..................................................42
Contrast .................................................................100
ControlPoint
Default Values ....................................................36
Protocol...............................................................57
Syntax .................................................................58
ControlPoint Notifications.......................................50
Copyright...................................................................2
CPEventLogRecType_t nType ................................86
CPLiveVideoSource ..............................................101
CPRect...................................................................101
CPRGBTiming ......................................................102
CPScreenConfig ....................................................103
CPServerAddress.....................................................45
CPServerInfo .........................................................103
CPSErverPort ..........................................................45
CPShareSys ...........................................................175
CPShareSys Object..................................................67
CPSize ...................................................................101
CPWeb Window ....................................................148
CPWebSys.............................................................176
CPWebSys Object ...................................................68
CPWndFrameInfo..................................................109
CPWndTitleFontInfo .............................................111
CPWndTitleInfo ....................................................110
Create and Move Windows ...................................127
Create then Configure Windows ...........................126
Created...............................................................61, 62
Creating Windows ...........................................53, 122
Crop ...................................................................61, 62
cx .......................................................................101
cy .......................................................................101
D
Data Structures ........................................................96
Debug ....................................................................176
Debug Object...........................................................69
Default Values .........................................................36
Define Device........................................................158
Delete User ............................................................144
DeleteLayout ...................................95, 147, 187, 189
DeleteUser ...............................................88, 185, 189
DeleteWindow.......................................146, 187, 189
Destroyed...........................................................61, 62
Detect Timing........................................................135
Detecting Disconnected Status ..............................152
DetectTiming...........................................80, 182, 189
Direct Connections ..................................................27
Display Device ........................................................18
dwFileTimeLS .......................................................103
200
dwFileTimeMS......................................................103
dwVersionLS.........................................................103
dwVersionMS........................................................103
E
Enum User .............................................................145
Enumerations...........................................................61
EnumUsersCS..........................................88, 185, 189
ER............................................................................44
Error Codes............................................................171
Protocol Parsing................................................172
RGB ..................................................................173
Server................................................................171
Socket ...............................................................172
Socket Connection ............................................172
User Management .............................................172
Video ................................................................173
Errors .....................................................................171
EventLog ...............................................................177
GetRecord ...........................................................86
RegisterNotifyTarget ..........................................87
SetPosition ..........................................................70
UnregisterNotifyTarget.......................................87
EventLog Object......................................................69
EventLogNotify .....................................................177
NewEvent ...........................................................70
EventLogNotify Object ...........................................70
Examples ...............................................................122
Exec .................................................................66, 189
Extended Information ..............................................55
External Device .......................................................19
F
Figures ...................................................................195
Flags ..........................................................61, 70, 117
FlushToFile..............................................................69
FlushToFile............................................................191
Format .................................................61, 62, 99, 101
Frame & Title ........................................................147
Framed...............................................................61, 62
Freeze ..............................................................72, 191
Fusion and Vizion....................................................17
G
galcon ......................................................................34
galcon.exe................................................................40
GalileoConnect ........................................................25
Arguments...........................................................60
Command Line Help...................................33, 149
Extended Information .........................................55
___________________________________________________
Index
Flags....................................................................61
Getting Connected ..............................................38
LiveVideoFormat..........................................62, 99
LiveVideoType .............................................63, 98
Methods ..............................................................65
Network Communications ..................................20
Notification Line.................................................59
Objects ................................................................65
Request Line .......................................................59
Response Line.....................................................59
Return and Error Codes ......................................55
RGBRefreshClass ...............................................64
Special Commands .............................................44
Starting................................................................30
Starting from the Command Line .......................33
Starting from the Start Menu ..............................31
Structures and Methods ......................................55
SubSystemKind ..................................................63
Syntax .................................................................48
Using the Command Line ...................................34
Window Numbering ...........................................51
WndTitleBarPos..................................................64
WndTitleJustification..........................................64
GalileoConnect Protocol..........................................48
GalWinSys.......................................................71, 178
ApplyDefaults.....................................................73
Freeze..................................................................72
GetCrop...............................................................72
GetImgBalance ...................................................72
GetInput ..............................................................73
GetInputSize .......................................................72
GetKind...............................................................72
IsOfKind .............................................................72
NewWindow .......................................................72
NewWindowWithId............................................72
QueryAllInputsCS ..............................................73
QueryAllWindows ..............................................72
SelectInput ..........................................................73
SetCrop ...............................................................72
SetImgBalance ....................................................72
SetOrigin.............................................................72
Start.....................................................................72
Stop.....................................................................72
GalWinSys SetCrop...............................................179
GalWinSys SetImgBalance ...................................179
GalWinSys SetOrigin ............................................179
GalWinSys Start ....................................................179
GalWinSys Stop ....................................................179
Gamma ..................................................................100
Get InputSize .................................................132, 135
Get Kind ................................................................130
Get User Info .........................................................145
Get Window State..................................................137
Get/Set Aspect Ratio .............................................136
Get/Set Channel.....................................................129
Get/Set Crop ..........................................................130
H
Height ......................................................................97
Hints, Notes, and Warnings .....................................16
Hue ........................................................................100
HyperTerminal ..................................................40, 42
I
Id..........................................................................97
ImgBalance............................................................100
index ......................................................................104
Index......................................................................199
Input Type .........................................................62, 99
InputType ..............................................................101
IsOfKind ..........................................................72, 191
___________________________________________________
201
Index
K
Kind .........................................................................97
L
Layout....................................................................147
Delete................................................................147
Save ..................................................................147
Set .....................................................................147
Layout see also SetLayout ..................................147
Limited Warranty ....................................................11
ListCfgGoup Object ................................................73
ListCfgGroup.........................................................180
Live_Video_Composite.....................................63, 98
Live_Video_SVideo ..........................................63, 98
LiveVideo Parameters ...........................................128
LiveVideoFormat...............................................62, 99
LiveVideoSys
GetChannel .................................................74, 180
GetChannelRange ...............................................74
GetVideoSource..........................................74, 180
SetChannel..................................................74, 180
SetVideoSource ..........................................74, 180
LiveVideoSys
GalWinSys Object ..............................................74
LiveVideoSys ........................................................180
LiveVideoType......................................62, 63, 98, 99
Lock Aspect.......................................................61, 62
log....................................................................35, 151
Logging on with Network........................................24
M
Managing Users.....................................................144
Maximized.........................................................61, 62
MetadataRecord_t..................................................114
Method...................................................................189
AddUser............................................................189
ApplyDefaults...................................................189
ChangePassword...............................................189
CloseFile ...........................................................189
DeleteLayout.....................................................189
DeleteUser ........................................................189
DeleteWindow ..................................................189
DetectTiming ....................................................189
ECCError ..........................................................189
EnumUsersCS...................................................189
Exec ..................................................................189
FlushToFile.......................................................191
Freeze................................................................191
GetAutoDetectTiming ......................................190
GetChannel .......................................................190
GetCrop.............................................................190
202
GetFileName.....................................................190
GetImgBalance .................................................190
GetInputSize .....................................................190
GetKind.............................................................190
GetRefreshTime................................................190
GetScreenConfig...............................................192
GetServerInfo ...................................................192
GetState.............................................................192
GetTiming.........................................................192
GetTitle .............................................................192
GetUserInfo ......................................................191
GetVideoSource................................................191
IsOfKind ...........................................................191
NewEvent .........................................................192
NewWindow .....................................................191
NewWindowWithId..........................................192
OpenFile ...........................................................192
QueryAllLayoutsCS..........................................192
QueryAllValues ................................................192
QueryAllWindows ............................................192
QueryECCInfo ..................................................192
QueryValues .....................................................192
QueryWindows .................................................192
Quit ...................................................................192
RegisterNotifyTarget ........................................192
SaveLayout .......................................................193
SetAutoDetectTiming .......................................194
SetOutputs.........................................................194
SetPosition ........................................................194
SetRefreshTime ................................................194
SetState .............................................................193
SetTiming .........................................................194
SetTitle..............................................................194
SetUserInfo .......................................................194
Start...................................................................194
Stop...................................................................194
UnregisterNotifyTarget.....................................194
ValuesChanged .................................................194
WindowsState ...................................................194
Method GetRecord ................................................191
MethodGetPlatformInfo ........................................191
Methods ...........................................................65, 189
Minimized..........................................................61, 62
ModelRevision ......................................................104
MultiBitErrors .......................................................104
N
Named Inputs.........................................................154
nCount .......................................................97, 98, 103
Network Communications .......................................20
Network Remote......................................................25
nEventID..................................................................87
NewEvent ..............................................................192
NewWindow....................................................72, 191
___________________________________________________
Index
NewWindowWithId.........................................72, 192
nH ......................................................................101
nHOffset ................................................................102
nHTotal..................................................................102
Notification Line......................................................59
Notify
ScreenConfigChanged ......................................180
WindowsState ...................................................180
Notify.....................................................................180
Notify Object ...........................................................75
nPhase....................................................................102
nRecNumber............................................................86
nState ...............................................................97, 117
nStateChange...................................................97, 117
nSyncType.............................................................102
nTime.......................................................................86
NTSC.................................................................62, 99
NTSC443...........................................................62, 99
NTSCJ ...............................................................62, 99
Numbering Windows...............................................51
nVFreq...................................................................102
nVOffset ................................................................102
nW .....................................................................101
nWidth ...................................................................102
nX ......................................................................101
nY ......................................................................101
O
Object
AppCtrl .............................................................175
ConfigSys .........................................................175
CPShareSys.......................................................175
CPWebSys ........................................................176
Debug..........................................................69, 176
EventLog...........................................................177
EventLog.............................................................69
EventLogNotify ................................................177
EventLogNotify ..................................................70
GalWinSys..................................................71, 178
ListCfgGroup....................................................180
LiveVideoSys ...................................................180
GalWinSys .....................................................74
Notify..........................................................75, 180
PictureViewerSys..............................................181
RGBSys ............................................................182
GalWinSys .....................................................80
ScreenUtil ...................................................81, 183
UserMan .............................................................88
VidStreamSys .....................................................89
Window...............................................91, 185, 186
WinServer ...................................................94, 187
Object
AppCtrl ...............................................................66
ConfigSys ...........................................................66
CPShareSys.........................................................67
CPWebSys ..........................................................68
Object
ListCfgGoup .......................................................73
Object
PictureViewerSys................................................76
Object
PixelNetSys.........................................................77
Object
PixelNetMgr .......................................................79
Object SysMonEx....................................................82
Object SysMonNotifyEx .........................................85
Objects.............................................................65, 175
OEMCode..............................................................104
OK ...........................................................................44
Open and Configure Windows ..............................125
OpenFile ..................................................................69
OpenFile ................................................................192
P
PAL ...................................................................62, 99
PAL60 ...............................................................62, 99
PALM................................................................62, 99
PALN.................................................................62, 99
PALNc...............................................................62, 99
pass ............................................................34, 40, 151
Password..................................................................43
pData .................................................................97, 98
pData[ ]..................................................................103
PESA.EXE Utility .................................................155
Picture Viewer Window ........................................148
PictureViewerSys ..................................................181
PictureViewerSys Object.........................................76
PixelNetMgr Object.................................................79
PixelNetSys Object..................................................77
port.............................................................34, 40, 151
Port Number ............................................................45
Position ..............................................................61, 62
Program Code Test ..................................................17
Program Examples.................................................122
Programming Considerations ................................149
Protocol ...................................................................57
Protocol Basics ........................................................48
Protocol For Named Inputs....................................156
Protocol Parsing.....................................................172
Protocol Parsing Errors..........................................172
Q
Query Windows.....................................................131
QueryAllInputsCS ...........................................73, 156
QueryAllLayoutsCS ................................95, 188, 192
QueryAllValues .......................................83, 140, 192
___________________________________________________
203
Index
QueryAllWindows...........................72, 131, 188, 192
QueryECCInfo...........................................82, 84, 192
QueryValues ............................................83, 184, 192
QueryWindows..............................................188, 192
Quit..........................................................95, 188, 192
R
recNum ....................................................................70
RegisterNotifyTarget ...........69, 82, 87, 184, 188, 192
Remote Control .......................................................25
Remote Control by External Device........................19
Remote System Connection.....................................28
Request Line............................................................59
Response
ControlPoint........................................................49
GalileoConnect - Negative..................................49
GalileoConnect - Positive ...................................49
Response Line .........................................................59
Result Codes..........................................................171
Return and Error Codes ...........................................55
RGB.........................................................................18
RGB Parameters ....................................................134
RGB Source.............................................................18
RGBRefreshClass....................................................64
RGBSys
DetectTiming ..............................................80, 182
GalWinSys Object ..............................................80
GetAutoDetectTiming ................................80, 183
GetChannel .................................................80, 183
GetChannelRange ...............................................81
GetRefreshTime..........................................81, 182
GetTiming...................................................80, 182
SetAutoDetectTiming .................................80, 182
SetChannel..................................................80, 182
SetPosition ........................................................183
SetRefreshTime ..........................................81, 182
SetTiming ...................................................80, 182
RGBSys .................................................................182
RMC Protocol........................................................159
RowAddr ...............................................................104
RS-232.....................................................................44
S
Saturation...............................................................100
SaveLayout ......................................95, 147, 188, 193
Screen Test Pattern ................................................148
ScreenConfigChanged ...........................................180
ScreenTestPattern ..................................................112
ScreenUtil ..............................................................183
ScreenUtil Object ....................................................81
SECAM .............................................................62, 99
SelectInput.......................................................73, 156
204
Sending Commands...............................................157
Serial Communication .......................................24, 29
Serial Device ...........................................................41
Serial Port ..............................................................157
Serial Remote ..........................................................25
SerialNumber.........................................................104
server .........................................................34, 40, 151
Server Assigned IDs.............................................120
Set....................................................52, 100, 101, 115
Set Command Structure...................................52, 115
Set Layout..............................................................147
Set User Info..........................................................145
Set Window State ..................................................137
SetAutoDetectTiming......................................80, 182
SetChannel.................................74, 80, 180, 182, 193
SetCrop ............................................................72, 179
SetImgBalance.................................................72, 179
SetLayout.........................................................95, 188
SetLevel...................................................................69
SetOrigin..................................................72, 179, 194
SetOutputs .......................................................69, 194
SetPosition.......................................70, 142, 183, 194
SetRefreshTime .......................................81, 182, 194
SetState ..........................................................186, 193
SetTiming ................................................80, 182, 194
SetTitle ..........................................................186, 194
SetUserInfo..............................................88, 185, 194
SetVideoSource .......................................74, 180, 194
Shortcut ...................................................................39
Show Picture..........................................................148
SingleBitErrors ......................................................104
SingleScreenHeight ...............................................103
SingleScreenWidth ................................................103
Size ....................................................................61, 62
Socket Errors .........................................................172
Software License Agreement...................................13
Software Warranty and Special Provisions .............11
Special Commands ..................................................44
Start .........................................................72, 179, 194
Start Menu Icon .......................................................39
Starting Automatically.............................................36
Starting from the Command Line ............................33
Starting from the Start Menu ...................................31
Starting GalCon
Command Line ...................................................40
Shortcut...............................................................39
Start Menu Icon ..................................................39
status......................................................................104
Status
below ................................................................106
invalid ...............................................................106
Staying Connected.................................................152
Stop..........................................................72, 179, 194
Structures and Methods ...........................................55
SubSystemKind .......................................................63
SubSystemKind_CPShare .......................................63
___________________________________________________
Index
SubSystemKind_CPWeb.........................................63
SubSystemKind_Galileo .........................................63
SubSystemKind_LiveVideo ....................................63
SubSystemKind_None.............................................63
SubSystemKind_PictureViewer ..............................63
SubSystemKind_PixelNet .......................................63
SubSystemKind_RGBCapture ................................63
SubSystemKind_SystemWindow............................63
SubSystemKind_VidStream ....................................63
S-Video..............................................................63, 98
Syntax................................................................48, 58
SysMonEx
QueryAllValues ............................................83, 86
QueryECCInfo ............................................84, 184
QueryValues ...............................................83, 184
RegisterNotifyTarget ........................................184
UnregisterNotifyTarget...............................84, 184
SysMonEx Object....................................................82
SysMonNotifyEx
ValuesChanged ...................................................85
SysMonNotifyEx Object .........................................85
SysMonValue_array_t ...........................................106
T
Table of Contents.......................................................3
Tables ....................................................................197
TCPEventLogRecord.............................................108
TCPSysMonECCInfo ......................................86, 104
TCPSysMonValue_array_t....................................107
Testing the Connection............................................42
threshold ................................................................104
Title ...................................................................61, 62
TotalHeight............................................................103
TotalWidth.............................................................103
Touch Panel .............................................................19
Touch Panel Connections ........................................27
Touch Panels .........................................................157
TString_array_t......................................................103
TWindowState ...................................................97, 98
TWindowState_array_t............................................98
type ....................................................................62, 99
U
UnregisterNotifyTarget . 70, 82, 84, 87, 184, 188, 194
user ............................................................34, 40, 151
User
Add ...................................................................144
Change Password..............................................145
Delete................................................................144
Get Info.............................................................145
List ....................................................................145
Set Info..............................................................145
V
Validity Fields .......................................................118
value ......................................................................104
ValuesChanged..........................................85, 86, 194
VGA ........................................................................18
Video .......................................................................18
VidStreamSys ..........................................................89
Visible ...............................................................61, 62
W
Wall Array ...............................................................18
Wall Control Models ...............................................17
Warranty
Consequential Damages......................................11
Limited Warranty................................................11
Web Window.........................................................148
Width .......................................................................97
Window .................................................................186
GetState.............................................................186
GetTitle .............................................................186
SetState .............................................................186
SetTitle..............................................................186
Window ...................................................................18
Window IDs .........................................................120
Window Name.......................................................119
Window Numbering ................................................51
Window Object........................................................91
Window Title.................................................119, 120
Windows Frame & Title ........................................147
WindowsState................................................180, 194
WinId_t..............................................................96, 97
WinId_t_array_t ......................................................96
WinServer..............................................................187
DeleteLayout...............................................95, 187
DeleteWindow ..................................................187
GetScreenConfig.........................................95, 187
___________________________________________________
205
Index
GetServerInfo .............................................95, 187
QueryAllLayoutsCS....................................95, 188
QueryAllWindows ............................................188
QueryWindows .................................................188
Quit .............................................................95, 188
RegisterNotifyTarget ........................................188
SaveLayout .................................................95, 188
SetLayout....................................................95, 188
UnregisterNotifyTarget.....................................188
WinServer Object ....................................................94
WndTitleBarPos ......................................................64
WndTitleJustification ..............................................64
wsBalance......................................................118, 119
wsChannel .....................................................118, 119
wsCreated ......................................................118, 119
wsCrop...........................................................118, 119
wsDestroyed ..................................................118, 119
wsFormat .......................................................118, 119
206
Z
ZAfter ......................................................................97
ZOrder ...............................................................61, 62
___________________________________________________