YANE-Framework Tutorial 1.1.0

examples/mpctcp/src/simplehandler.cpp

00001 /***************************************************************************
00002  *                                                                         *
00003  * Copyright (C) 2011 by www.nonlinearmpc.com                              *
00004  *                                                                         *
00005  * Authors:                                                                *
00006  *  Thomas Jahn <thomas.jahn@uni-bayreuth.de>                              *
00007  *  Juergen Pannek <juergen.pannek@googlemail.com>                         *
00008  *                                                                         *
00009  ***************************************************************************/
00010 
00011 #include "simplehandler.h"
00012 #include "simplesimulator.h"
00013 
00014 #include <yane.h>
00015 #include <iostream>
00016 
00017 using namespace std;
00018 
00019 SimpleHandler::SimpleHandler ( yane::Model::Model * model,
00020         yane::NetworkedControl::Cycle * cycle, int maxseqlength,
00021         yane::Utils::DebugMaster * dm, yane::Utils::StatisticsMaster * sm,
00022         int tcpport, int buffersize ) :
00023         yane::NetworkedControl::ModelHandlerTCP ( model, cycle, maxseqlength, dm,
00024                 sm, tcpport, buffersize )
00025 {
00026         _simulator = 0;
00027         _sm = sm;
00028 }
00029 
00030 void SimpleHandler::setSimulator ( SimpleSimulator * simulator )
00031 {
00032         _simulator = simulator;
00033 }
00034 
00035 void SimpleHandler::controllerConnecting ( )
00036 {
00037         if ( _simulator )
00038         {
00039                 _simulator->stop ( );
00040                 _simulator->wait ( );
00041         }
00042 }
00043 
00044 void SimpleHandler::controllerConnected ( )
00045 {
00046         _sm->reset ( );
00047         _cycle->reset ( );
00048         if ( _simulator )
00049         {
00050                 _simulator->start ( );
00051         }
00052 }
00053 
00054 void SimpleHandler::controllerDisconnected ( )
00055 {
00056 }
00057