# HG changeset patch # User kazz # Date 1277176190 -32400 # Node ID dd2fbc35e570168c6f22e8415a3bd69d794a971d # Parent 8323230d766b31a9e6edde37d3b2df48c1e31573# Parent d3899a44f314800736d1f28055c5a2d33174b0a3 merge diff -r d3899a44f314 -r dd2fbc35e570 Renderer/Test/Makefile.macosx --- a/Renderer/Test/Makefile.macosx Fri Jun 18 16:09:51 2010 +0900 +++ b/Renderer/Test/Makefile.macosx Tue Jun 22 12:09:50 2010 +0900 @@ -1,15 +1,24 @@ include ./Makefile.def +PROTO = protoc +PROTODIR = ./protobuf +PROTOFLAGS = -I=$(PROTODIR) --cpp_out=./ +PROTOLIBS = -lprotobuf + + LIBS += -lCerium -lFifoManager CFLAGS += `sdl-config --cflags` `xml2-config --cflags` $(INCLUDE) LIBS += `sdl-config --libs` `xml2-config --libs` -lSDL_image -Wl,-framework,OpenGL -.SUFFIXES: .cc .o .xml .xml.h .xml.cc +.SUFFIXES: .proto .pb.o .pb.cc .cc .o .xml .xml.h .xml.cc .cc.o: $(CC) $(CFLAGS) -c $< -o $@ +%.pb.cc: $(PROTODIR)/%.proto + $(PROTO) $(PROTOFLAGS) $< + ALL = ball_bound boss1_action direction gaplant ieshoot node panel universe untitled vacuum property_test send_linda dynamic writer chain_old SgRootChange viewer aquarium oFLAGS=-g -O2 @@ -84,9 +93,9 @@ viewer : $(VIEWER_OBJ) $(CC) -o $@ $? $(LIBS) -AQUARIUM_OBJ = aquarium.o -aquarium : $(AQUARIUM_OBJ) - $(CC) -o $@ $? $(LIBS) +AQUARIUM_OBJ = aquarium.pb.o aquarium.o +aquarium : $(AQUARIUM_OBJ) + $(CC) -o $@ $? $(LIBS) $(PROTOLIBS) run: $(TARGET) @@ -103,5 +112,6 @@ rm -f $(TARGET) $(OBJS) $(TASK_OBJS) *.o rm -f *~ \#* $(ALL) rm -f $(BALL_BOUND_XML).cc $(BALL_BOUND_XML).h $(BALL_BOUND_OBJ) - + rm -f *.pb.{cc,h} + -include depend.inc diff -r d3899a44f314 -r dd2fbc35e570 Renderer/Test/aquarium.cc --- a/Renderer/Test/aquarium.cc Fri Jun 18 16:09:51 2010 +0900 +++ b/Renderer/Test/aquarium.cc Tue Jun 22 12:09:50 2010 +0900 @@ -4,8 +4,12 @@ #include "lindaapi.h" #include "aquarium.h" +#define GET_SERIAL_ID 65535 + linda_t aquarium::linda_addr = { "localhost", 10000 }; int aquarium::linda; +int aquarium::serial_id; + const char *usr_help_str = "Usage: ./aquarium -linda LINDA_SERVER_NAME\n"; void TMend(TaskManager *manager); @@ -19,6 +23,7 @@ void init_network() { aquarium::linda_connect(); + } MainLoopPtr @@ -32,6 +37,15 @@ aquarium::linda_connect() { init_linda(); // セレクタの初期化 linda = open_linda_java(linda_addr.hostname, linda_addr.port); + // serial_id の取得 + int seq = psx_in(linda, GET_SERIAL_ID); + unsigned char *data = NULL; + do { + psx_sync_n(); + data = psx_reply(seq); + } while (data == NULL); + serial_id = atoi((char *)data + LINDA_HEADER_SIZE); + printf("Get serial_id: %d\n", serial_id); } int diff -r d3899a44f314 -r dd2fbc35e570 Renderer/Test/aquarium.h --- a/Renderer/Test/aquarium.h Fri Jun 18 16:09:51 2010 +0900 +++ b/Renderer/Test/aquarium.h Tue Jun 22 12:09:50 2010 +0900 @@ -12,6 +12,7 @@ public: static linda_t linda_addr; static int linda; + static int serial_id; static void linda_connect(); MainLoopPtr init(Viewer *viewer, int screen_w, int screen_h); };