CARLA
CarlaServer.h
Go to the documentation of this file.
1 // Copyright (c) 2017 Computer Vision Center (CVC) at the Universitat Autonoma
2 // de Barcelona (UAB).
3 //
4 // This work is licensed under the terms of the MIT license.
5 // For a copy, see <https://opensource.org/licenses/MIT>.
6 
7 #pragma once
8 
11 
12 #include "CoreMinimal.h"
13 
15 #include <carla/multigpu/router.h>
16 #include <carla/streaming/Server.h>
18 
19 class UCarlaEpisode;
20 
22 {
23 public:
24 
25  FCarlaServer();
26 
27  ~FCarlaServer();
28 
29  FDataMultiStream Start(uint16_t RPCPort, uint16_t StreamingPort, uint16_t SecondaryPort);
30 
31  void NotifyBeginEpisode(UCarlaEpisode &Episode);
32 
33  void NotifyEndEpisode();
34 
35  void AsyncRun(uint32 NumberOfWorkerThreads);
36 
37  void RunSome(uint32 Milliseconds);
38 
39  void Tick();
40 
41  bool TickCueReceived();
42 
43  void Stop();
44 
45  FDataStream OpenStream() const;
46 
47  std::shared_ptr<carla::multigpu::Router> GetSecondaryServer();
48 
50 
51 private:
52 
53  class FPimpl;
54  TUniquePtr<FPimpl> Pimpl;
55 };
carla::streaming::Server & GetStreamingServer()
FDataStream OpenStream() const
FDataMultiStream Start(uint16_t RPCPort, uint16_t StreamingPort, uint16_t SecondaryPort)
A streaming server.
void NotifyEndEpisode()
void RunSome(uint32 Milliseconds)
A simulation episode.
Definition: CarlaEpisode.h:38
std::shared_ptr< carla::multigpu::Router > GetSecondaryServer()
bool TickCueReceived()
TUniquePtr< FPimpl > Pimpl
Definition: CarlaServer.h:53
void AsyncRun(uint32 NumberOfWorkerThreads)
void NotifyBeginEpisode(UCarlaEpisode &Episode)