[Tinyos-commits] CVS: tinyos-1.x/apps/TestDripDrain/java DripDrainPing.java, NONE, 1.1 Makefile, NONE, 1.1

Gilman Tolle gtolle at users.sourceforge.net
Thu Oct 27 14:32:05 PDT 2005


Update of /cvsroot/tinyos/tinyos-1.x/apps/TestDripDrain/java
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15110/java

Added Files:
	DripDrainPing.java Makefile 
Log Message:
Test application for Drip and Drain - it's ping.

--- NEW FILE: DripDrainPing.java ---
import net.tinyos.message.*;
import net.tinyos.util.*;
import net.tinyos.drip.*;
import net.tinyos.drain.*;

public class DripDrainPing implements MessageListener {
  Drip drip;
  DrainConnector drain;
  Drain drainTree;
  int seqno = 0;
  int identifier;

  public DripDrainPing() {
    System.out.println("Drip-Drain PING");
    drip = new Drip(DripDrainPingConsts.AM_DRIPDRAINPINGMSG);
    drain = new DrainConnector();
    drain.registerListener(DripDrainPingConsts.AM_DRIPDRAINPINGMSG,
			   this);
    drainTree = new Drain();
    drainTree.buildTree();
    identifier = (int)((double)Math.random() * (double)65535);
  }

  public void ping() {
    DripDrainPingMsg msg = new DripDrainPingMsg();

    seqno++;
    System.out.println("--- sending sequence number " + seqno + " ---");

    msg.set_identifier(identifier);
    msg.set_seqno(seqno);
    drip.send(msg, msg.dataGet().length);
  }

  public void messageReceived(int to, Message m) {
    DrainMsg drainMsg = (DrainMsg) m;
    DripDrainPingMsg msg = new DripDrainPingMsg( drainMsg,
						 drainMsg.offset_data(0),
						 drainMsg.dataLength() - 
						 drainMsg.offset_data(0) );

    if (msg.get_identifier() == identifier) {
      System.out.println("response from: " + drainMsg.get_source() + " " +
			 "seq=" + msg.get_seqno());
    }
  }

  public static void main(String args[]) {
    DripDrainPing ping = new DripDrainPing();
    while(true) {
      ping.ping();
      try{ Thread.sleep(1); } catch (InterruptedException e) { }
    }
  }
}

--- NEW FILE: Makefile ---
TOS = $(shell ncc -print-tosdir)
PACKAGE = 
MIG = mig java
NCG = ncg java

MSGS = DripDrainPingMsg.java 
CONSTS = DripDrainPingConsts.java
INITIAL_TARGETS =  $(CONSTS) $(MSGS)
OTHER_CLEAN = cleanmig
PLATFORM = telosb
PLATFORM_LIBS = -I$(TOS)/lib/CC2420Radio

ROOT = $(TOSDIR)/../tools/java
include $(ROOT)/Makefile.include

DripDrainPingMsg.java: ../DripDrainPing.h
	$(MIG) -target=$(PLATFORM) $(PLATFORM_LIBS) -java-classname=DripDrainPingMsg ../DripDrainPing.h DripDrainPingMsg -o $@

DripDrainPingConsts.java: ../DripDrainPing.h
	$(NCG) -target=$(PLATFORM) $(PLATFORM_LIBS) -java-classname=DripDrainPingConsts ../DripDrainPing.h DripDrainPing.h -o $@

cleanmig:
	rm -f $(MSGS) $(CONSTS) platforms.properties



More information about the Tinyos-commits mailing list