agent-list.cc

Go to the documentation of this file.
00001 // Author: Satish Kumar, kkumar@isi.edu
00002 
00003 extern "C" {
00004 #include <stdarg.h>
00005 #include <float.h>
00006 };
00007 
00008 #include "agent-list.h"
00009 
00010 AgentList* AgentList::instance_;
00011 
00012 static class AgentListClass:public TclClass
00013 {
00014   public:
00015   AgentListClass ():TclClass ("AgentList")
00016   {
00017   }
00018   TclObject *create (int, const char *const *)
00019   {
00020     return (new AgentList ());
00021   }
00022 } class_agent_list;
00023 
00024 
00025 
00026 
00027 int 
00028 AgentList::command (int argc, const char *const *argv)
00029 {
00030   if(argc == 3) {
00031     if (strcasecmp(argv[1], "num_agents") == 0) {
00032       assert(num_agents_ == 0);
00033 
00034       num_agents_ = atoi(argv[2]);
00035       
00036       agents_ = new void*[num_agents_];
00037       bzero((char*) agents_, sizeof(void*) * num_agents_);
00038       
00039       instance_ = this;
00040       
00041       return TCL_OK;
00042     }
00043   }
00044   return (TclObject::command(argc, argv));
00045 }
00046 
00047 
00048 
00049 
00050 
00051 void
00052 AgentList::AddAgent(nsaddr_t node_addr, void *a) {
00053   assert(agents_);
00054   assert(node_addr < num_agents_);
00055   agents_[node_addr] = a;
00056 }
00057 
00058 

Generated on Tue Mar 6 16:47:43 2007 for ns2 Network Simulator 2.29 by  doxygen 1.4.6