#include <chrono>
#include <csignal>
#include <cstdint>
#include <cstdlib>
#include <exception>
#include <iostream>
#include <memory>
#include <string>
#include <vector>
#include <google/protobuf/text_format.h>
#include <pybind11/pybind11.h>
#include <pybind11/stl.h>
#include "goby/exception.h"
#include "goby/middleware/application/configurator.h"
#include "goby/middleware/application/detail/simulation_time.h"
#include "goby/middleware/application/interface.h"
#include "goby/middleware/group.h"
#include "goby/middleware/languages/common/interface.h"
#include "goby/middleware/marshalling/interface.h"
#include "goby/middleware/protobuf/coroner.pb.h"
#include "goby/time.h"
#include "goby/time/simulation.h"
#include "goby/util/debug_logger.h"
Go to the source code of this file.
|
| #define | GOBY_PYTHON_IF_PUBLICATION(SCHEME, LAYER_ENUM, LAYER_FUNCTION, GROUP, GROUP_KEY, TYPE) |
| |
| #define | GOBY_PYTHON_IF_SUBSCRIPTION(SCHEME, LAYER_ENUM, LAYER_FUNCTION, GROUP, GROUP_KEY, TYPE) |
| |
| #define | GOBY_PYTHON_FAIL(PUBLISH_OR_SUBSCRIBE) |
| |
| #define | GOBY_PYTHON_QUOTE(name) #name |
| |
| #define | GOBY_PYTHON_DEFINE_MODULE(APPLICATION_NAME, MODULE_NAME) |
| |
◆ GOBY_PYTHON_DEFINE_MODULE
| #define GOBY_PYTHON_DEFINE_MODULE |
( |
|
APPLICATION_NAME, |
|
|
|
MODULE_NAME |
|
) |
| |
Value: PYBIND11_MODULE(MODULE_NAME, goby_python_module) \
{ \
goby::middleware::python::define_python_module<APPLICATION_NAME>( \
}
#define GOBY_PYTHON_QUOTE(name)
Definition at line 620 of file application.h.
◆ GOBY_PYTHON_FAIL
| #define GOBY_PYTHON_FAIL |
( |
|
PUBLISH_OR_SUBSCRIBE | ) |
|
Value:
goby::glog << PUBLISH_OR_SUBSCRIBE
" not defined for these parameters: [" <<
id \
<< "]. Please include in interface.yml and re-generate to include them." \
<< std::endl;
util::FlexOstream glog
Access the Goby logger through this object.
Definition at line 612 of file application.h.
◆ GOBY_PYTHON_IF_PUBLICATION
| #define GOBY_PYTHON_IF_PUBLICATION |
( |
|
SCHEME, |
|
|
|
LAYER_ENUM, |
|
|
|
LAYER_FUNCTION, |
|
|
|
GROUP, |
|
|
|
GROUP_KEY, |
|
|
|
TYPE |
|
) |
| |
Value:
goby::middleware::python::PubSubLayer::LAYER_ENUM, TYPE::descriptor()->name(), \
goby::middleware::MarshallingScheme::SCHEME, GROUP_KEY}) \
{ \
decltype(data.end()) actual_end; \
auto msg =
goby::middleware::SerializerParserHelper< \
TYPE,
goby::middleware::MarshallingScheme::SCHEME>::parse(data.begin(), data.end(), \
actual_end); \
LAYER_FUNCTION().publish<GROUP>(msg); \
return; \
}
The global namespace for the Goby project.
Fully identifies a publication or subscription crossing the language boundary.
Definition at line 584 of file application.h.
◆ GOBY_PYTHON_IF_SUBSCRIPTION
| #define GOBY_PYTHON_IF_SUBSCRIPTION |
( |
|
SCHEME, |
|
|
|
LAYER_ENUM, |
|
|
|
LAYER_FUNCTION, |
|
|
|
GROUP, |
|
|
|
GROUP_KEY, |
|
|
|
TYPE |
|
) |
| |
Value:
goby::middleware::python::PubSubLayer::LAYER_ENUM, TYPE::descriptor()->name(), \
goby::middleware::MarshallingScheme::SCHEME, GROUP_KEY}) \
{ \
LAYER_FUNCTION().subscribe<GROUP>( \
[callback](const TYPE& pb) \
{ \
TYPE, goby::middleware::MarshallingScheme::SCHEME>::serialize(pb); \
goby::middleware::python::detail::invoke_callback(callback, bytes); \
}); \
return; \
}
Class for parsing and serializing a given marshalling scheme. Must be specialized for a particular sc...
Definition at line 597 of file application.h.
◆ GOBY_PYTHON_QUOTE
| #define GOBY_PYTHON_QUOTE |
( |
|
name | ) |
#name |