mirror of
https://github.com/eclipse/paho.mqtt-sn.embedded-c.git
synced 2025-12-13 23:46:51 +01:00
73 lines
1.6 KiB
C++
73 lines
1.6 KiB
C++
/**************************************************************************************
|
|
* Copyright (c) 2016, Tomoaki Yamaguchi
|
|
*
|
|
* All rights reserved. This program and the accompanying materials
|
|
* are made available under the terms of the Eclipse Public License v1.0
|
|
* and Eclipse Distribution License v1.0 which accompany this distribution.
|
|
*
|
|
* The Eclipse Public License is available at
|
|
* http://www.eclipse.org/legal/epl-v10.html
|
|
* and the Eclipse Distribution License is available at
|
|
* http://www.eclipse.org/org/documents/edl-v10.php.
|
|
*
|
|
* Contributors:
|
|
* Tomoaki Yamaguchi - initial API and implementation
|
|
**************************************************************************************/
|
|
#include <unistd.h>
|
|
#include <cassert>
|
|
#include "TestTask.h"
|
|
#include "Threading.h"
|
|
|
|
using namespace std;
|
|
using namespace MQTTSNGW;
|
|
|
|
TestTask::TestTask(TestProcessFramework* proc)
|
|
{
|
|
proc->attach((Thread*)this);
|
|
_proc = proc;
|
|
}
|
|
|
|
TestTask::~TestTask()
|
|
{
|
|
|
|
}
|
|
|
|
void TestTask::initialize(int argc, char** argv)
|
|
{
|
|
printf("Task initialize complite.\n");
|
|
}
|
|
|
|
void TestTask::run(void)
|
|
{
|
|
EventQue* evQue = _proc->getEventQue();
|
|
uint16_t duration = 0;
|
|
int cnt = 0;
|
|
|
|
while (true)
|
|
{
|
|
Event* ev = evQue->timedwait(5000);
|
|
if ( ev->getEventType() == EtTimeout )
|
|
{
|
|
assert(EVENT_CNT == cnt);
|
|
delete ev;
|
|
break;
|
|
}
|
|
cnt++;
|
|
MQTTSNPacket* packet = ev->getMQTTSNPacket();
|
|
packet->getDISCONNECT(&duration);
|
|
printf("Event %d\n", duration);
|
|
delete ev;
|
|
}
|
|
|
|
while(true)
|
|
{
|
|
if ( CHK_SIGINT)
|
|
{
|
|
printf("Task stopped.\n");
|
|
return;
|
|
}
|
|
printf("Task is running. Enter CTRL+C\n");
|
|
sleep(1);
|
|
}
|
|
}
|