import sys import time import random import dds PUB_ROLE = 0 SUB_ROLE = 1 role = ['pub', 'sub'].index(sys.argv[1]) if role == PUB_ROLE: participant = dds.DDS('MyParticipantLibrary::BigPublicationParticipant') HelloBigWorldWriter = participant.lookup_datawriter_by_name( 'MyBigPublisher::HelloBigWorldWriter') seq = 0 data = "x" * 10000000 #10MB file = open("huge_pic.png", "rb") buf = file.read() while True: seq += 1 print('writing sequence#', seq) msg = {'seq': seq, 'data': "x", 'rawBytes': buf} a = time.time() HelloBigWorldWriter.write(msg) print("Write speed: %f" % (time.time() - a)) time.sleep(3) else: participant = dds.DDS('MyParticipantLibrary::BigSubscriptionParticipant')
import sys import time import random import dds recv = ['send', 'recv'].index(sys.argv[1]) d = dds.DDS() l = dds.Library('./libddsmessages_c.so') topics = [] #topics.append((d.get_topic('t1', l.State), lambda: dict(workername=str(random.randrange(2**10)), state=random.randrange(-2**31, 2**31), health=random.random()))) topics.append((d.get_topic('t2', l.HydrophoneMessage), lambda: dict(timestamp=int(1e9 * time.time()), declination=random.random(), heading=random.random(), distance=random.random(), frequency=random.random(), valid=random.choice([True, False])))) topics.append((d.get_topic('t3', l.PDWrenchMessage), lambda: dict(linear=[random.gauss(0, 1) for i in xrange(3)], moment=[random.gauss(0, 1) for i in xrange(3)]))) topics.append((d.get_topic('t4', l.VisionSetIDsMessage), lambda: dict( visionids=[random.randrange(1000) for i in xrange(random.randrange(10))], cameraid=random.randrange(10)))) topics.append((d.get_topic('t5', l.ChatMessage), lambda: dict(username=str(random.randrange(2**10)), message=str(random.randrange(2**10))))) topics.append( (d.get_topic('t6', l.IMUMessage),
from twisted.internet import reactor import dds import twistedds class TestProtocol(object): def connectionMade(self): print 'connection made!' def messageReceived(self, msg): print 'message received:', msg def connectionLost(self, reason): print 'connection lost! reason:', reason twistedds.connectDDS( dds.DDS().get_topic( 't2', dds.Library('./libddsmessages_c.so').HydrophoneMessage), TestProtocol()) reactor.run()
import dds import time def on_data(dict): print(dict) dds_instance = dds.DDS('dds_testTypes') topic = dds_instance.get_topic('generated.dds.org.eelt.Sample') print(topic) msg = dict(value=3.14) topic.publish(msg) topic.subscribe(on_data) while True: time.sleep(100)
import os import sys from twisted.internet import protocol, reactor import dds import twistedds class TestProtocol(protocol.Protocol): def connectionMade(self): print 'connection made!' def messageReceived(self, msg): print 'message received:', msg self.transport.loseConnection() def connectionLost(self, reason): print 'connection lost! reason:', reason l = dds.Library('libddsmessages_c.so') twistedds.connectDDS(dds.DDS().get_topic('t2', l.HydrophoneMessage), TestProtocol()) reactor.run()