[Rojav-commits] rocrail/impl block.c,1.48,1.49 fback.c,1.23,1.24 model.c,1.52,1.53 tt.c,1.7,1.8
Brought to you by:
robvrs
|
From: rob v. <ro...@us...> - 2005-12-01 20:40:02
|
Update of /cvsroot/rojav/rocrail/impl In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv785 Modified Files: block.c fback.c model.c tt.c Log Message: changed fbcallback Index: fback.c =================================================================== RCS file: /cvsroot/rojav/rocrail/impl/fback.c,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** fback.c 30 Nov 2005 20:42:25 -0000 1.23 --- fback.c 1 Dec 2005 20:38:56 -0000 1.24 *************** *** 111,115 **** /* Call listener. */ if( data->listenerFun != NULL ) { ! data->listenerFun( data->listenerObj, data->state ); } else { --- 111,115 ---- /* Call listener. */ if( data->listenerFun != NULL ) { ! data->listenerFun( data->listenerObj, data->state, FBackOp.getId( inst ) ); } else { Index: block.c =================================================================== RCS file: /cvsroot/rojav/rocrail/impl/block.c,v retrieving revision 1.48 retrieving revision 1.49 diff -C2 -d -r1.48 -r1.49 *** block.c 11 Nov 2005 20:42:43 -0000 1.48 --- block.c 1 Dec 2005 20:38:56 -0000 1.49 *************** *** 187,191 **** } ! static void __fbEventA( obj inst, Boolean puls ) { iOBlockData data = Data(inst); TraceOp.trc( name, TRCLEVEL_USER1, __LINE__, 9999, "Block:%s: fbA=%s ", --- 187,191 ---- } ! static void __fbEventA( obj inst, Boolean puls, const char* id ) { iOBlockData data = Data(inst); TraceOp.trc( name, TRCLEVEL_USER1, __LINE__, 9999, "Block:%s: fbA=%s ", *************** *** 209,213 **** ! static void __fbEventB( obj inst, Boolean puls ) { iOBlockData data = Data(inst); TraceOp.trc( name, TRCLEVEL_USER1, __LINE__, 9999, "Block:%s: fbB=%s ", --- 209,213 ---- ! static void __fbEventB( obj inst, Boolean puls, const char* id ) { iOBlockData data = Data(inst); TraceOp.trc( name, TRCLEVEL_USER1, __LINE__, 9999, "Block:%s: fbB=%s ", *************** *** 233,237 **** ! static void __fbEventI( obj inst, Boolean puls ) { iOBlockData data = Data(inst); TraceOp.trc( name, TRCLEVEL_USER1, __LINE__, 9999, "Block:%s: fbI=%s ", --- 233,237 ---- ! static void __fbEventI( obj inst, Boolean puls, const char* id ) { iOBlockData data = Data(inst); TraceOp.trc( name, TRCLEVEL_USER1, __LINE__, 9999, "Block:%s: fbI=%s ", Index: tt.c =================================================================== RCS file: /cvsroot/rojav/rocrail/impl/tt.c,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** tt.c 30 Jan 2005 20:18:38 -0000 1.7 --- tt.c 1 Dec 2005 20:38:56 -0000 1.8 *************** *** 25,28 **** --- 25,29 ---- #include "rocrail/wrapper/public/Turntable.h" + #include "rocrail/wrapper/public/TTTrack.h" static int instCnt = 0; *************** *** 102,108 **** --- 103,111 ---- if( StrOp.equals( wTurntable.next, cmdStr ) ) { ok = True; /* ToDo! */ + TraceOp.trc( name, TRCLEVEL_WARNING, __LINE__, 9999, "TODO %s", cmdStr ); } else if( StrOp.equals( wTurntable.prev, cmdStr ) ) { ok = True; /* ToDo! */ + TraceOp.trc( name, TRCLEVEL_WARNING, __LINE__, 9999, "TODO %s", cmdStr ); } *************** *** 113,116 **** --- 116,165 ---- + static void __fbEvent( obj inst, Boolean puls, const char* id ) { + iOTTData data = Data(inst); + TraceOp.trc( name, TRCLEVEL_INFO, __LINE__, 9999, "fbEvent for Turntable \"%s\" fb=\"%s\" state=%s ", + TTOp.getId( (iOTT)inst ), id, puls?"true":"false" ); + } + + + static void __initCallback( iOTT inst ) { + iOTTData data = Data(inst); + iOModel model = AppOp.getModel(); + iONode track = wTurntable.gettrack( data->props ); + + if( track == NULL ) + TraceOp.trc( name, TRCLEVEL_WARNING, __LINE__, 9999, "No tracks defined for TT %s", TTOp.getId(inst) ); + + while( track != NULL ) { + const char* posfbid = wTTTrack.getposfb( track ); + const char* locfbid = wTTTrack.getlocfb( track ); + + TraceOp.trc( name, TRCLEVEL_DEBUG, __LINE__, 9999, "track %d", wTTTrack.getnr( track ) ); + + if( posfbid != NULL && StrOp.len( posfbid ) > 0 ) { + iOFBack posfb = ModelOp.getFBack( model, posfbid ); + if( posfb != NULL ) { + TraceOp.trc( name, TRCLEVEL_DEBUG, __LINE__, 9999, "Setting listener \"%s\"", posfbid ); + FBackOp.setListener( posfb, (obj)inst, &__fbEvent ); + } + else + TraceOp.trc( name, TRCLEVEL_WARNING, __LINE__, 9999, "posfb \"%s\" not found!", posfbid ); + } + + if( locfbid != NULL && StrOp.len( locfbid ) > 0 ) { + iOFBack locfb = ModelOp.getFBack( model, locfbid ); + if( locfb != NULL ) { + TraceOp.trc( name, TRCLEVEL_DEBUG, __LINE__, 9999, "Setting listener \"%s\"", locfbid ); + FBackOp.setListener( locfb, (obj)inst, &__fbEvent ); + } + else + TraceOp.trc( name, TRCLEVEL_WARNING, __LINE__, 9999, "locfb \"%s\" not found!", locfbid ); + } + + track = wTurntable.nexttrack( data->props, track ); + } + } + + static iOTT _inst( iONode props ) { iOTT tt = allocMem( sizeof( struct OTT ) ); *************** *** 121,126 **** data->props = props; ! ! TraceOp.trc( name, TRCLEVEL_DEBUG, __LINE__, 9999, "inst for %s", _getId(tt) ); instCnt++; --- 170,175 ---- data->props = props; ! __initCallback( tt ); ! TraceOp.trc( name, TRCLEVEL_INFO, __LINE__, 9999, "Turntable \"%s\" initialized.", _getId(tt) ); instCnt++; Index: model.c =================================================================== RCS file: /cvsroot/rojav/rocrail/impl/model.c,v retrieving revision 1.52 retrieving revision 1.53 diff -C2 -d -r1.52 -r1.53 *** model.c 7 Nov 2005 20:17:07 -0000 1.52 --- model.c 1 Dec 2005 20:38:56 -0000 1.53 *************** *** 670,678 **** TraceOp.trc( name, TRCLEVEL_INFO, __LINE__, 9999, "init creatingMaps..." ); _createMap( o, o->trackMap , wTrackList.name(), wTrack.name(), (item_inst)TrackOp.inst ); - _createMap( o, o->ttMap , wTurntableList.name(), wTurntable.name(), (item_inst)TTOp.inst ); _createMap( o, o->feedbackMap, wFeedbackList.name(), wFeedback.name(), (item_inst)FBackOp.inst ); _createMap( o, o->switchMap , wSwitchList.name(), wSwitch.name(), (item_inst)SwitchOp.inst ); _createMap( o, o->streetMap , wStreetList.name(), wStreet.name(), (item_inst)StreetOp.inst ); _createMap( o, o->blockMap , wBlockList.name(), wBlock.name(), (item_inst)BlockOp.inst ); _createMap( o, o->locMap , wLocList.name(), wLoc.name(), (item_inst)LocOp.inst ); --- 670,678 ---- TraceOp.trc( name, TRCLEVEL_INFO, __LINE__, 9999, "init creatingMaps..." ); _createMap( o, o->trackMap , wTrackList.name(), wTrack.name(), (item_inst)TrackOp.inst ); _createMap( o, o->feedbackMap, wFeedbackList.name(), wFeedback.name(), (item_inst)FBackOp.inst ); _createMap( o, o->switchMap , wSwitchList.name(), wSwitch.name(), (item_inst)SwitchOp.inst ); _createMap( o, o->streetMap , wStreetList.name(), wStreet.name(), (item_inst)StreetOp.inst ); _createMap( o, o->blockMap , wBlockList.name(), wBlock.name(), (item_inst)BlockOp.inst ); + _createMap( o, o->ttMap , wTurntableList.name(), wTurntable.name(), (item_inst)TTOp.inst ); _createMap( o, o->locMap , wLocList.name(), wLoc.name(), (item_inst)LocOp.inst ); |