gclib 2.0.9
Communications API for Galil controllers and PLCs
 
Loading...
Searching...
No Matches
motion_complete_example.cpp
Go to the documentation of this file.
1
10#include "examples.h"
11
12#include <iostream> //std::cout
13using namespace std;
14
16
20int main(int argc, char * argv[])
21{
22 GReturn rc = GALIL_EXAMPLE_OK;
23 char buf[G_SMALL_BUFFER];
24
25 //var used to refer to a unique connection. A valid connection is nonzero.
26 GCon g = 0;
27 try
28 {
29 if (argc != 2) //Invalid number of arguments
30 {
31 cerr << "Incorrect number of arguments provided\n";
32 cerr << "Usage: motion_complete_example.exe <ADDRESS>\n";
33 pause();
34 return GALIL_EXAMPLE_ERROR;
35 }
36
37 char* address = argv[1]; //Retrieve address from command line
38 sprintf(buf, "%s --subscribe EI", address); //Subscribe to event interrupts
39 e(GOpen(buf, &g)); //Opens a connection at the provided address
40
41 //Uses interrupts to track when the motion of controller is completed
43 }
44 catch (GReturn gr)
45 {
46 error(g, gr);
47 pause();
48 return GALIL_EXAMPLE_ERROR;
49 }
50
51 pause();
52 return GALIL_EXAMPLE_OK;
53}
int GReturn
Every function returns a value of type GReturn. See gclib_errors.h for possible values.
Definition gclib.h:93
#define G_SMALL_BUFFER
Most reads from Galil are small. This value will easily hold most, e.g. TH, TZ, etc.
Definition gclib.h:89
void * GCon
Connection handle. Unique for each connection in process. Assigned a non-zero value in GOpen().
Definition gclib.h:94
GCLIB_DLL_EXPORTED GReturn GCALL GOpen(GCStringIn address, GCon *g)
Open a connection to a Galil Controller.
int main(int argc, char *argv[])
Main function for Commands Example.
void e(GReturn rc)
A trivial, C++ style return code check used in Galil's examples and demos.
Definition examples.h:33
GReturn motion_complete(GCon g)
Uses interrupts to track when the motion of controller is completed.
void error(GCon g, GReturn rc)
An example of error handling and debugging information.
Definition examples.h:40
int pause()
Pauses console apps for a user key stroke.
Definition examples.h:62
GReturn vector(GCon g, char *file)
Puts controller into Vector Mode and accepts a file defining vector points.
Definition vector.cpp:36