at line 195 in mobilenode.cc file, this line of code is written.
*
} else if (strcmp(argv[1], "off") == 0) {
            energy_model()->node_on() = false;*

here we are doing node_on()=false. to stop the simulation.

i m actually modifying the code in this function
MobileNode::log_energy(int flag)    in mobilenode.cc file.
{
*     if (energy_model_->energy() <= 0) {*
         * // here is how can i write node_on()=false;
                              **             // my aim is when the node
energy reach to 0, then it stops the simulation by calling the function
node_off()    or    node_on() = false.
}*

plz help me in this code.... ll be very thankful to you.


yogesh


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

> 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