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')
Exemplo n.º 2
0
Arquivo: test.py Projeto: txsg/pyDDS
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),
Exemplo n.º 3
0
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()
Exemplo n.º 4
0
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)
Exemplo n.º 5
0
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()