RJLRef: $CASE/04s522/lcpEventParameters.hlp Correction to my previous message to ajlopez re: Argument1 of GenerateEvent and EventTypeCreate Arg1 and Arg2 are Active Instance namestrings; they are not related to viewnames. Below are calls to these event instance constructors: ------------------------------------------------ For Hominid project Team1: saturn.cs.uml.edu(113)> pwd pwd /nfs/earth/misc/proj3/case/04s522/ajlopez/lcp/prjTest/Team1 [This path is now $CASE/04s522/ajlopez/lcp/Team1 - RJL041024] [NOTE: The second name below should be EventInstanceCreate - RJL041024] [I will execute this sequence to update the searches below: echo For Hominid Team1: cd $CASE/04s522/ajlopez/lcp/Team1 grep '(GenerateEvent|EventTypeCreate)' *.c | wc echo For JPsim CVS repository: (last update: cd $JPROOT/JPsim/JP/src grep '(GenerateEvent|EventTypeCreate)' *.c,v|wc saturnRJL.cs.uml.edu(114)> grep '(GenerateEvent|EventTypeCreate)' *.c | wc grep '(GenerateEvent|EventTypeCreate)' *.c | wc 10 26 772 saturn.cs.uml.edu(115)> grep '(GenerateEvent|EventTypeCreate)' *.c grep '(GenerateEvent|EventTypeCreate)' *.c HDsetup.c:98: GenerateEvent("HDinstance","HXinstance","HL01",0,0,0,0,"increment"); HDsetup.c:127: GenerateEvent("HDinstance","HYinstance","HL02",0,0,0,0,"decrement"); HDsetup.c:159: GenerateEvent("HDinstance","HXinstance","HL02",0,0,0,0,"decrement"); HDsetup.c:190: GenerateEvent("HDinstance","HYinstance","HL01",0,0,0,0,"increment"); PAssigner.c:151: GenerateEvent("HDinstance","HDinstance","HD01",0,0,0,0,"turn Left"); PAssigner.c:190: GenerateEvent("HDinstance","HDinstance","HD02",0,0,0,0,"turn Right"); PAssigner.c:231: GenerateEvent("HDinstance", "HDinstance", "HD03",0,0,0,0,"advance"); eventinstance.c:74:void GenerateEvent, eventtype.c:32:hcg_key EventTypeCreate, statemodel.c:91: ETid = EventTypeCreate(NewEventType->Label, Notice that EventTypeCreate was not used in Team1 above; statemodel.c probably used it to implement GenerateEvent. eventinstance.h states in its preamble re: AIid1, AIid2 and ETid: "If you have ** the internal keys of these three things, use EventInstanceCreate. ** If you only have the names of these things, use GenerateEvent." ----------------------------------------------------- For JPsim: saturn.cs.uml.edu(116)> saturn.cs.uml.edu(101)> cd $JPROOT/JPsim/JP/src saturn.cs.uml.edu(117)> cd $JPROOT/JPsim/JP/src cd $JPROOT/JPsim/JP/src saturn.cs.uml.edu(119)> pwd pwd /nfs/earth/misc/proj3/case/95s522/95solc/base/Master/JPsim/JP/src saturn.cs.uml.edu(103)> grep '(GenerateEvent|EventTypeCreate)' *.c,v|wc grep '(GenerateEvent|EventTypeCreate)' *.c,v | wc /nfs/earth/misc/proj3/case/95s522/95solc/base/Master/JPsim/JP/src 58 174 4154 So 58 calls to one of these 'constructor' methods appear in JPsim/JP/src code. Here are the calls: -------------------------------- saturn.cs.uml.edu(128)> cd $JPROOT/JPsim/JP/src cd $JPROOT/JPsim/JP/src saturn.cs.uml.edu(129)> grep '(GenerateEvent|EventTypeCreate)' *.c,v grep '(GenerateEvent|EventTypeCreate)' *.c,v Baaction.c,v:201: GenerateEvent("Batch01", "Operator", "OP04", Baaction.c,v:221: GenerateEvent("Batch01", "Batch01", "BA03", 0, 0 , 0.0 , 0.0 , Baaction.c,v:350: GenerateEvent("Batch01","Operator","OP08", Baaction.c,v:481: GenerateEvent("Batch01","Tempramp","TP90", Baaction.c,v:579: GenerateEvent("Batch01","Tempramp","TP91", Baaction.c,v:717:/* GenerateEvent("Operator", "Canning", "CO05", Baaction.c,v:723:/* GenerateEvent("Operator", "Batch01", "BA40", Baaction.c,v:729: GenerateEvent("Batch01","Operator","OP07", Baaction.c,v:836: GenerateEvent("Batch01", "Canning", "CO01", Baaction.c,v:892: GenerateEvent("Batch01","Operator","OP04", Baaction.c,v:899: GenerateEvent("Batch02","Operator","OP04", Baaction.c,v:995: GenerateEvent("Canning", "Canning", "CO02", Baaction.c,v:1034: GenerateEvent("Canning1", "Batch01", "BA42", Baaction.c,v:1041: GenerateEvent("Canning2", "Batch02", "BA42", Baaction.c,v:1050: GenerateEvent("Canning", "Batch01", "BA42", Baaction.c,v:1083: GenerateEvent("Batch01", "Operator", "OP06", Baaction.c,v:1095: GenerateEvent("Batch01","Operator","OP09", Baaction.c,v:1098: GenerateEvent("Batch02","Operator","OP09", Jtaction.c,v:238: GenerateEvent("JuiceTransfer1", "Path1", "PA1", Jtaction.c,v:321: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:335: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:412: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:450: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:455: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:466: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:507: GenerateEvent(ActiveInstanceGetName(AIid), Jtaction.c,v:613: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:616: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:631: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:635: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:648: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:652: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:662: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:666: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:708: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:721: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:726: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:804: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:875: GenerateEvent(ActiveInstanceGetName(AIid), Jtaction.c,v:948: GenerateEvent(ActiveInstanceGetName(AIid), Jtaction.c,v:999: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:1002: GenerateEvent(ActiveInstanceGetName(AIid2), Jtaction.c,v:1172: GenerateEvent(ActiveInstanceGetName(AIid), Jtaction.c,v:1218: GenerateEvent(ActiveInstanceGetName(AIid), Tpaction.c,v:188: GenerateEvent("Tempramp", "Tempramp", "TP11", Tpaction.c,v:220: GenerateEvent("Tempramp", "Tempramp", "TP11", Tpaction.c,v:329: GenerateEvent("Tempramp1", "Heater1", "HT20", Tpaction.c,v:335: GenerateEvent("Tempramp2", "Heater2", "HT20", Tpaction.c,v:366: GenerateEvent("Tempramp2",AIcurr->Name,"TI00",0,0,0.0,0.0, " timer start"); Tpaction.c,v:381: GenerateEvent("Tempramp", "Tempramp", "TP12", Tpaction.c,v:434: GenerateEvent("Tempramp1", "Heater1", "HT21", Tpaction.c,v:440: GenerateEvent("Tempramp2", "Heater2", "HT21", Tpaction.c,v:454: GenerateEvent("Tempramp1", "Batch01", "BA90", Tpaction.c,v:459: GenerateEvent("Tempramp2", "Batch02", "BA90", Tpaction.c,v:473: GenerateEvent("Tempramp1", "Batch01", "BA91", Tpaction.c,v:478: GenerateEvent("Tempramp2", "Batch02", "BA91", Tpaction.c,v:552: GenerateEvent("Timer", "Tempramp1", "TP13", Tpaction.c,v:558: GenerateEvent("Timer", "Tempramp2", "TP13", -------------------------- From these examples you can (clearly?) see that both methods pass an Active Instance namestring as argument1 and as argument2. These are the event instance sender and receiver. I do not see any hint of a viewname here. So I was wrong about that interpretation of arg1 in my prev. message. Consider Tpaction.c,v:366 above: Arg3 is the Event Type name, args 4-7 are the numerical data fields and arg7 is the string data field of the non-polymorphic event instance in the schema definition file. Type c,v is the RCS and CVS file type for source code .c files.