From: Hedayat V. <hed...@ai...> - 2008-04-13 14:21:32
|
Hi Markus, Glad to hear that! :) But (well, I wonder if I'm getting too sensitive about this :( ), it might be better to find a way to avoid the overhead of calling a virtual function?! (Sorry again, I think I'm going too far in this direction! Is it really a overhead which I should think about?) Thanks a lot, Hedayat /*Markus Rollmann <rol...@un...>*/ wrote on 04/13/2008 02:30:51 PM: > Hedayat Vatankhah wrote: > [...] >>> The downside is we cannot provide different loglevels (i.e. debug, >>> normal etc. for one agent channel). One possibility would be to >>> provide multiple bases like eAgentNormal, eAgentDebug etc. and >>> offset them. This could be hidden behind a nice interface like >>> "GetLog()->AgentDebug(agentId)" >> Or maybe each agent should have it's own LogServer instance?! > > I like that idea... We could install a LogServer instance below each > Behavior class. Further the Object::GetLog() function should become > vritual (see zeitgeist\object.h). Called from within a behavior class > it would return the LogServer instance assigned to the agent, (maybe a > direct child) and return the default LogServer instance otherwise. > >> Also notice that priority levels should be powers of 2. So, (at least >> currently) we can have at most 32 priority levels. > > Your're right. Id didn't notice that. I favor the idea of separate > LogServcer instances (or a similar concept) > > cheers, > Markus > |