Click here to Skip to main content
15,867,906 members
Home / Discussions / C#
   

C#

 
GeneralRe: Why SqlCommandBuilder Pin
Eddy Vluggen8-Mar-13 4:59
professionalEddy Vluggen8-Mar-13 4:59 
GeneralRe: Why SqlCommandBuilder Pin
Krishna Varadharajan8-Mar-13 5:55
Krishna Varadharajan8-Mar-13 5:55 
GeneralRe: Why SqlCommandBuilder Pin
Eddy Vluggen8-Mar-13 7:12
professionalEddy Vluggen8-Mar-13 7:12 
AnswerRe: Why SqlCommandBuilder Pin
PIEBALDconsult8-Mar-13 3:38
mvePIEBALDconsult8-Mar-13 3:38 
GeneralRe: Why SqlCommandBuilder Pin
Krishna Varadharajan8-Mar-13 3:59
Krishna Varadharajan8-Mar-13 3:59 
GeneralRe: Why SqlCommandBuilder Pin
PIEBALDconsult8-Mar-13 5:42
mvePIEBALDconsult8-Mar-13 5:42 
GeneralRe: Why SqlCommandBuilder Pin
Krishna Varadharajan8-Mar-13 5:56
Krishna Varadharajan8-Mar-13 5:56 
QuestionWireless Sensor Node Simulation Time in C# Pin
Nico Encarnacion7-Mar-13 14:45
Nico Encarnacion7-Mar-13 14:45 
I am trying to develop a very simple wireless sensor node simulator using C#. I have figured out how to "divide" the simulation time into different "states" of the sensor node but I am currently having some problems on how to properly implement a global simulation time for all the sensor nodes.

Here's what I did so far but I am sure there is a much better way to do this.

I made a NODE class which contains a Run() method that has a for loop executed to simulate time. But the obvious problem is, if I duplicate this NODE class to make other nodes (5-10 other nodes), there's a tendency that they will not be synchronized (especially when they communicate with each other).

C#
public void Run()
{
    //simulation loop
    for (int i = 0; i < 1000; i++ ) //this acts as the basis for the simulation time
    {
        if (sleep)
        {
            if (csleep < timeToSleep)
            {
                Sleep(i);
                csleep++;
            }
            else
            {
                sleep = false;
                csleep = 0;
                wakeup = true;
            }
        }

        if (wakeup)
        {
            if (cwakeup < timeToWakeUp)
            {
                WakeUp(i);
                cwakeup++;
            }
            else
            {
                wakeup = false;
                cwakeup = 0;
                listen = true;
            }
        }

        if (listen)
        {
            ...same as above code...
        }

        if (send)
        {
            ...same as above code...
        }
        if (receive)
        {
            ...same as above code...
        }
    }//end main simulation loop

    Console.WriteLine("END SIMULATION");
}


So, when I execute the nodes in the main simulation class, it looks like this:

C#
class Program
{
    static void Main(string[] args)
    {
        Node node1 = new Node();
        Node node2 = new Node();
        node1.Run();
        node2.Run();
    }
}


The above codes are obviously incorrect since the simulation time is placed inside each node object. What I am trying to do is this:

I want to treat all nodes as if they are threads communicating with each other or could sometimes just independently "exist" in the simulation. But how do I make it that all of these nodes could have one single basis for the simulation time?

C#
Simulation loop
{
    Node 1 executed; //nodes execute sending, receiving, sleeping, etc
    Node 2 executed; //nodes execute sending, receiving, sleeping, etc
}

AnswerRe: Wireless Sensor Node Simulation Time in C# Pin
Gerry Schmitz7-Mar-13 18:49
mveGerry Schmitz7-Mar-13 18:49 
GeneralRe: Wireless Sensor Node Simulation Time in C# Pin
Nico Encarnacion12-Mar-13 20:05
Nico Encarnacion12-Mar-13 20:05 
GeneralRe: Wireless Sensor Node Simulation Time in C# Pin
Gerry Schmitz13-Mar-13 12:10
mveGerry Schmitz13-Mar-13 12:10 
QuestionExplicit type-casting of pointer Pin
Flo_897-Mar-13 11:18
Flo_897-Mar-13 11:18 
AnswerRe: Explicit type-casting of pointer Pin
Gerry Schmitz7-Mar-13 12:23
mveGerry Schmitz7-Mar-13 12:23 
GeneralRe: Explicit type-casting of pointer Pin
Flo_897-Mar-13 12:24
Flo_897-Mar-13 12:24 
AnswerRe: Explicit type-casting of pointer Pin
Matt T Heffron7-Mar-13 12:34
professionalMatt T Heffron7-Mar-13 12:34 
AnswerRe: Explicit type-casting of pointer Pin
harold aptroot7-Mar-13 21:57
harold aptroot7-Mar-13 21:57 
QuestionHow to highlight word in word document using C# Pin
Tridip Bhattacharjee7-Mar-13 3:56
professionalTridip Bhattacharjee7-Mar-13 3:56 
AnswerRe: How to highlight word in word document using C# Pin
Richard MacCutchan7-Mar-13 5:13
mveRichard MacCutchan7-Mar-13 5:13 
GeneralRe: How to highlight word in word document using C# Pin
Tridip Bhattacharjee8-Mar-13 1:46
professionalTridip Bhattacharjee8-Mar-13 1:46 
GeneralRe: How to highlight word in word document using C# Pin
Richard MacCutchan8-Mar-13 2:16
mveRichard MacCutchan8-Mar-13 2:16 
QuestionRe: How to highlight word in word document using C# Pin
Alan N7-Mar-13 5:17
Alan N7-Mar-13 5:17 
AnswerRe: How to highlight word in word document using C# Pin
Tridip Bhattacharjee8-Mar-13 1:47
professionalTridip Bhattacharjee8-Mar-13 1:47 
GeneralRe: How to highlight word in word document using C# Pin
Alan N8-Mar-13 3:12
Alan N8-Mar-13 3:12 
QuestionC# file access Pin
classy_dog7-Mar-13 1:52
classy_dog7-Mar-13 1:52 
AnswerRe: C# file access Pin
Dave Kreskowiak7-Mar-13 2:30
mveDave Kreskowiak7-Mar-13 2:30 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.