Now you can download a copy of these docs so you can use them offline! Download now
NetworkTableServer.cpp
1 /*
2  * NetworkTableServer.cpp
3  *
4  * Created on: Sep 27, 2012
5  * Author: Mitchell Wills
6  */
7 
8 #include "networktables2/server/NetworkTableServer.h"
9 #include "networktables2/server/ServerNetworkTableEntryStore.h"
10 #include <iostream>
11 #include <limits.h>
12 
15  streamProvider(_streamProvider),
16  incomingStreamMonitor(streamProvider, (ServerNetworkTableEntryStore&)entryStore, *this, connectionList, typeManager, threadManager),
17  connectionList(&incomingStreamMonitor),
18  writeManager(connectionList, threadManager, GetEntryStore(), ULONG_MAX),
19  continuingReceiver(writeManager){
20 
21  GetEntryStore().SetIncomingReceiver(&continuingReceiver);
22  GetEntryStore().SetOutgoingReceiver(&continuingReceiver);
23 
24  incomingStreamMonitor.start();
25  writeManager.start();
26 }
27 //TODO implement simplified NetworkTableServer constructor
28 /*NetworkTableServer::NetworkTableServer(IOStreamProvider& streamProvider){
29  this(streamProvider, new NetworkTableEntryTypeManager(), new DefaultThreadManager());
30 }*/
31 NetworkTableServer::~NetworkTableServer(){
32  Close();
33  delete &entryStore;
34 }
35 
37  try{
38  incomingStreamMonitor.stop();
39  writeManager.stop();
40  connectionList.closeAll();
41  } catch (const std::exception& ex) {
42  //TODO print stack trace?
43  }
44 }
45 
47  connectionList.add(connectionAdapter);
48 }
49 
50 
52  return true;
53 }
54 
55 
57  return true;
58 }
AbstractNetworkTableEntryStore & GetEntryStore()
void OnNewConnection(ServerConnectionAdapter &connectionAdapter)
NetworkTableServer(IOStreamProvider &streamProvider, NetworkTableEntryTypeManager &typeManager, NTThreadManager &threadManager)
void add(ServerConnectionAdapter &connection)

Generated on Sat Apr 26 2014 12:26:45 for WPILibC++ by doxygen 1.8.6