with the help of hemang advice, i changed my code from this

*// MY INCLUDED CODE
 if (energy_model_->energy() <= 0) {
     fprintf(stdout,"DEATH -t %f -n %d -e %.20f", s.clock(),address_,
energy_model_->energy());
     fprintf(stderr,"DEATH -t %f -n %d -e %.20f", s.clock(),address_,
energy_model_->energy());
   //exit(1);
 }
// END OF MY INCLUDED CODE*

to this

*// MY INCLUDED CODE
if (energy_model_->energy() <= 0) {
         fprintf(stdout,"DEATH -t %f -n %d -e %.20f", s.clock(),address_,
energy_model_->node_off());
         fprintf(stderr,"DEATH -t %f -n %d -e %.20f", s.clock(),address_,
energy_model_->node_off());
       //exit(1);
      // return TCL_ERROR;
}
// END OF MY INCLUDED CODE*

in mobilenode.cc file.


is it ok guys?? itz urgent.. am i wrong at some point.. i ll be very
thankful to u..

where should i write return TCL_ERROR;


On Tue, May 31, 2011 at 12:37 AM, yogesh bansal <[email protected]>wrote:

> thanks a lot hemang for giving me so valueable idea....
>
>
>
>
>
> yogesh
>
>
> On Tue, May 31, 2011 at 12:18 AM, hemang kothari <
> [email protected]> wrote:
>
>> you can make it by using on/off function provided by mobilenode.cc file
>>
>> when energy reach to zero it will automatically switch off.
>>
>> On Tue, May 31, 2011 at 6:01 AM, yogesh bansal 
>> <[email protected]>wrote:
>>
>>>
>>> hi to all ns users,
>>>
>>> hello sir/mam,
>>>
>>> plz plz help me.
>>>
>>> i want to stop the simulation of all those nodes having energy 0 and
>>> simulation of other nodes should continue having energy greater than 0.
>>>
>>>
>>> I've been trying to abort the execution in the Mobilenode::log_energy
>>> method
>>> in mobilenode.cc file in common folder.
>>> I'm doing something like this:
>>>
>>> *//this code is already present.*
>>> void
>>> MobileNode::log_energy(int flag)
>>> {
>>>  if (!log_target_)
>>>   return;
>>>  Scheduler &s = Scheduler::instance();
>>>  if (flag) {
>>> //    sprintf(log_target_->pt_->buffer(),"N -t %f -n %d -e %f",
>>> s.clock(),
>>>   sprintf(log_target_->pt_->buffer(),"N -t %f -n %d -e %.20f",
>>> s.clock(),address_, energy_model_->energy());
>>>  } else {
>>>   sprintf(log_target_->pt_->buffer(),"N -t %f -n %d -e 0 ", s.clock(),
>>>     address_);
>>>  }
>>> *// MY INCLUDED CODE
>>>  if (energy_model_->energy() <= 0) {
>>>   fprintf(stdout,"DEATH -t %f -n %d -e %.20f", s.clock(),
>>>     address_, energy_model_->energy());
>>>   fprintf(stderr,"DEATH -t %f -n %d -e %.20f", s.clock(),
>>>     address_, energy_model_->energy());
>>>   exit(1);
>>>  }
>>> // END OF MY INCLUDED CODE*
>>>  log_target_->pt_->dump();
>>> }
>>>
>>>
>>> *// by exit(1) the network exits. so where should i use exit??
>>>
>>>
>>> if i use return (TCL_ERROR); where should i write this in tcl file or
>>> here??
>>> *
>>>
>>
>>
>

Reply via email to