From d47112e5481abb3004811cd0ae6d270c24461d9c Mon Sep 17 00:00:00 2001 From: fcolin Date: Wed, 20 Dec 2000 16:47:19 +0000 Subject: multicast and glut eventloop support --- src/ivyprobe.c | 37 +++++++++++++++++++++++++++++++++++-- 1 file changed, 35 insertions(+), 2 deletions(-) (limited to 'src/ivyprobe.c') diff --git a/src/ivyprobe.c b/src/ivyprobe.c index c73df3a..f8e02fb 100644 --- a/src/ivyprobe.c +++ b/src/ivyprobe.c @@ -6,7 +6,7 @@ * * Main and only file * - * Authors: François-Régis Colin + * Authors: François-Régis Colin * * $Id$ * @@ -24,6 +24,10 @@ #undef IVYMAINLOOP #endif +#ifdef GLUTMAINLOOP +#undef IVYMAINLOOP +#endif + #include #include #include @@ -39,6 +43,9 @@ #ifdef GTKMAINLOOP #include "ivygtkloop.h" #endif +#ifdef GLUTMAINLOOP +#include "ivyglutloop.h" +#endif #ifdef IVYMAINLOOP #include "ivyloop.h" #endif @@ -79,6 +86,9 @@ void HandleStdin (Channel channel, HANDLE fd, void *data) #ifdef GTKMAINLOOP IvyGtkChannelClose(channel); #endif +#ifdef GLUTMAINLOOP + IvyGlutChannelClose(channel); +#endif #ifdef IVYMAINLOOP IvyChannelClose (channel); IvyStop(); @@ -183,6 +193,9 @@ void ApplicationCallback (IvyClientPtr app, void *user_data, IvyApplicationEvent #ifdef GTKMAINLLOP IvyGtkChannelSetUp( 0, NULL, NULL, HandleStdin); #endif +#ifdef GLUTMAINLLOP + IvyGlutChannelSetUp( 0, NULL, NULL, HandleStdin); +#endif #ifdef IVYMAINLOOP IvyChannelSetUp (0, NULL, NULL, HandleStdin); #endif @@ -208,7 +221,14 @@ void TimerCall(TimerId id, void *user_data, unsigned long delta) /*if ((int)user_data == 5) TimerModify (id, 2000);*/ } #endif - +#ifdef GLUTMAINLLOP +void +display(void) +{ + glClear(GL_COLOR_BUFFER_BIT); + glFlush(); +} +#endif int main(int argc, char *argv[]) { @@ -236,6 +256,12 @@ int main(int argc, char *argv[]) cntx = XtCreateApplicationContext(); IvyXtChannelAppContext (cntx); #endif +#ifdef GLUTMAINLLOOP + glutInit(&argc, argv); + glutCreateWindow("IvyProbe Test"); + glClearColor(0.49, 0.62, 0.75, 0.0); + glutDisplayFunc(display); +#endif IvyInit ("IVYPROBE", "IVYPROBE READY", ApplicationCallback,NULL,NULL,NULL); for (; optind < argc; optind++) IvyBindMsg (Callback, NULL, argv[optind]); @@ -247,6 +273,9 @@ int main(int argc, char *argv[]) #ifdef GTKMAINLOOP IvyGtkChannelSetUp (0, NULL, NULL, HandleStdin); #endif +#ifdef GLUTMAINLOOP + IvyGlutChannelSetUp (0, NULL, NULL, HandleStdin); +#endif #ifdef IVYMAINLOOP IvyChannelSetUp (0, NULL, NULL, HandleStdin); #endif @@ -266,6 +295,10 @@ int main(int argc, char *argv[]) #ifdef GTKMAINLOOP gtk_main(); #endif +#ifdef GLUTMAINLOOP + glutMainLoop(); +#endif + #ifdef IVYMAINLOOP IvyMainLoop (0); #endif -- cgit v1.1