Skip to content
Snippets Groups Projects
Commit 8d3b3896 authored by Sergey Yakubov's avatar Sergey Yakubov
Browse files

Merge pull request #95 in ASAPO/asapo from docs to develop

* commit 'aaf41dd8':
  add quick start c++ examples
  change layout for c++ docs
parents 1e67abf9 aaf41dd8
No related branches found
No related tags found
No related merge requests found
<doxygenlayout version="1.0">
<!-- Generated by doxygen 1.8.17 -->
<!-- Generated by doxygen 1.8.11 -->
<!-- Navigation index tabs for HTML output -->
<navindex>
<tab type="user" url="../index.html" visible="yes" title="Main ASAP::O"/>
......@@ -10,26 +10,12 @@
<tab type="namespacelist" visible="yes" title="" intro=""/>
<tab type="namespacemembers" visible="yes" title="" intro=""/>
</tab>
<tab type="interfaces" visible="yes" title="">
<tab type="interfacelist" visible="yes" title="" intro=""/>
<tab type="interfaceindex" visible="$ALPHABETICAL_INDEX" title=""/>
<tab type="interfacehierarchy" visible="yes" title="" intro=""/>
</tab>
<tab type="classes" visible="yes" title="">
<tab type="classlist" visible="yes" title="" intro=""/>
<tab type="classindex" visible="$ALPHABETICAL_INDEX" title=""/>
<tab type="hierarchy" visible="yes" title="" intro=""/>
<tab type="classmembers" visible="yes" title="" intro=""/>
</tab>
<tab type="structs" visible="yes" title="">
<tab type="structlist" visible="yes" title="" intro=""/>
<tab type="structindex" visible="$ALPHABETICAL_INDEX" title=""/>
</tab>
<tab type="exceptions" visible="yes" title="">
<tab type="exceptionlist" visible="yes" title="" intro=""/>
<tab type="exceptionindex" visible="$ALPHABETICAL_INDEX" title=""/>
<tab type="exceptionhierarchy" visible="yes" title="" intro=""/>
</tab>
<tab type="files" visible="yes" title="">
<tab type="filelist" visible="yes" title="" intro=""/>
<tab type="globals" visible="yes" title="" intro=""/>
......@@ -102,13 +88,8 @@
<memberdecl>
<nestednamespaces visible="yes" title=""/>
<constantgroups visible="yes" title=""/>
<interfaces visible="yes" title=""/>
<classes visible="yes" title=""/>
<structs visible="yes" title=""/>
<exceptions visible="yes" title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
......@@ -118,8 +99,6 @@
<memberdef>
<inlineclasses title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
......@@ -135,16 +114,11 @@
<includedbygraph visible="$INCLUDED_BY_GRAPH"/>
<sourcelink visible="yes"/>
<memberdecl>
<interfaces visible="yes" title=""/>
<classes visible="yes" title=""/>
<structs visible="yes" title=""/>
<exceptions visible="yes" title=""/>
<namespaces visible="yes" title=""/>
<constantgroups visible="yes" title=""/>
<defines title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
......@@ -155,8 +129,6 @@
<inlineclasses title=""/>
<defines title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
......@@ -176,8 +148,6 @@
<classes visible="yes" title=""/>
<defines title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<enumvalues title=""/>
<functions title=""/>
......@@ -197,8 +167,6 @@
<inlineclasses title=""/>
<defines title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<enumvalues title=""/>
<functions title=""/>
......
<doxygenlayout version="1.0">
<!-- Generated by doxygen 1.8.17 -->
<!-- Generated by doxygen 1.8.11 -->
<!-- Navigation index tabs for HTML output -->
<navindex>
<tab type="user" url="../index.html" visible="yes" title="Main ASAP::O"/>
......@@ -10,26 +10,12 @@
<tab type="namespacelist" visible="yes" title="" intro=""/>
<tab type="namespacemembers" visible="yes" title="" intro=""/>
</tab>
<tab type="interfaces" visible="yes" title="">
<tab type="interfacelist" visible="yes" title="" intro=""/>
<tab type="interfaceindex" visible="$ALPHABETICAL_INDEX" title=""/>
<tab type="interfacehierarchy" visible="yes" title="" intro=""/>
</tab>
<tab type="classes" visible="yes" title="">
<tab type="classlist" visible="yes" title="" intro=""/>
<tab type="classindex" visible="$ALPHABETICAL_INDEX" title=""/>
<tab type="hierarchy" visible="yes" title="" intro=""/>
<tab type="classmembers" visible="yes" title="" intro=""/>
</tab>
<tab type="structs" visible="yes" title="">
<tab type="structlist" visible="yes" title="" intro=""/>
<tab type="structindex" visible="$ALPHABETICAL_INDEX" title=""/>
</tab>
<tab type="exceptions" visible="yes" title="">
<tab type="exceptionlist" visible="yes" title="" intro=""/>
<tab type="exceptionindex" visible="$ALPHABETICAL_INDEX" title=""/>
<tab type="exceptionhierarchy" visible="yes" title="" intro=""/>
</tab>
<tab type="files" visible="yes" title="">
<tab type="filelist" visible="yes" title="" intro=""/>
<tab type="globals" visible="yes" title="" intro=""/>
......@@ -102,13 +88,8 @@
<memberdecl>
<nestednamespaces visible="yes" title=""/>
<constantgroups visible="yes" title=""/>
<interfaces visible="yes" title=""/>
<classes visible="yes" title=""/>
<structs visible="yes" title=""/>
<exceptions visible="yes" title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
......@@ -118,8 +99,6 @@
<memberdef>
<inlineclasses title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
......@@ -135,16 +114,11 @@
<includedbygraph visible="$INCLUDED_BY_GRAPH"/>
<sourcelink visible="yes"/>
<memberdecl>
<interfaces visible="yes" title=""/>
<classes visible="yes" title=""/>
<structs visible="yes" title=""/>
<exceptions visible="yes" title=""/>
<namespaces visible="yes" title=""/>
<constantgroups visible="yes" title=""/>
<defines title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
......@@ -155,8 +129,6 @@
<inlineclasses title=""/>
<defines title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
......@@ -176,8 +148,6 @@
<classes visible="yes" title=""/>
<defines title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<enumvalues title=""/>
<functions title=""/>
......@@ -197,8 +167,6 @@
<inlineclasses title=""/>
<defines title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<enumvalues title=""/>
<functions title=""/>
......
cmake_minimum_required(VERSION 2.8)
project(asapo-consume)
set(CMAKE_CXX_STANDARD 11)
IF(CMAKE_C_COMPILER_ID STREQUAL "GNU")
SET( CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static-libgcc -static-libstdc++")
ENDIF()
find_package (Threads)
set(TARGET_NAME ${CMAKE_PROJECT_NAME})
set(SOURCE_FILES consume.cpp)
link_directories(asapo/lib)
add_executable(${TARGET_NAME} ${SOURCE_FILES})
target_include_directories(${TARGET_NAME} PUBLIC asapo/include)
target_link_libraries(${TARGET_NAME} asapo-consumer curl ${CMAKE_THREAD_LIBS_INIT})
#include "asapo_consumer.h"
void exit_if_error(std::string error_string, const asapo::Error& err) {
if (err) {
std::cerr << error_string << err << std::endl;
exit(EXIT_FAILURE);
}
}
int main(int argc, char* argv[]) {
asapo::Error err;
auto endpoint = "asapo-services2:8400";
auto beamtime = "asapo_test";
auto token = "KmUDdacgBzaOD3NIJvN1NmKGqWKtx0DK-NyPjdpeWkc=";
auto broker = asapo::DataBrokerFactory::CreateServerBroker(endpoint, "", true, asapo::SourceCredentials{beamtime, "", "", token}, &err);
exit_if_error("Cannot create consumer", err);
broker->SetTimeout((uint64_t) 1000);
auto group_id = broker->GenerateNewGroupId(&err);
exit_if_error("Cannot create group id", err);
asapo::FileInfo fi;
asapo::FileData data;
err = broker->GetLast(&fi, group_id, &data);
exit_if_error("Cannot get next record", err);
std::cout << "id: " << fi.id << std::endl;
std::cout << "file name: " << fi.name << std::endl;
std::cout << "file content: " << reinterpret_cast<char const*>(data.get()) << std::endl;
return EXIT_SUCCESS;
}
cmake_minimum_required(VERSION 2.8)
project(asapo-produce)
set(CMAKE_CXX_STANDARD 11)
IF(CMAKE_C_COMPILER_ID STREQUAL "GNU")
SET( CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static-libgcc -static-libstdc++")
ENDIF()
find_package (Threads)
set(TARGET_NAME ${CMAKE_PROJECT_NAME})
set(SOURCE_FILES produce.cpp)
link_directories(asapo/lib)
add_executable(${TARGET_NAME} ${SOURCE_FILES})
target_include_directories(${TARGET_NAME} PUBLIC asapo/include)
target_link_libraries(${TARGET_NAME} asapo-producer curl ${CMAKE_THREAD_LIBS_INIT})
#include "asapo_producer.h"
void ProcessAfterSend(asapo::GenericRequestHeader header, asapo::Error err) {
if (err) {
std::cerr << "error/warnign during send: " << err << std::endl;
return;
} else {
std::cout << "successfuly send " << header.Json() << std::endl;
return;
}
}
void exit_if_error(std::string error_string, const asapo::Error& err) {
if (err) {
std::cerr << error_string << err << std::endl;
exit(EXIT_FAILURE);
}
}
int main(int argc, char* argv[]) {
asapo::Error err;
auto source = "asapo-services2:8400";
auto beamtime = "asapo_test";
auto producer = asapo::Producer::Create(source, 1,asapo::RequestHandlerType::kTcp,
asapo::SourceCredentials{beamtime, "", "", ""}, 60, &err);
exit_if_error("Cannot start producer", err);
std::string to_send = "hello";
auto send_size = to_send.size() + 1;
auto buffer = asapo::FileData(new uint8_t[send_size]);
memcpy(buffer.get(),to_send.c_str(),send_size);
asapo::EventHeader event_header{1, send_size, "test_file"};
err = producer->SendData(event_header, std::move(buffer), asapo::kDefaultIngestMode, &ProcessAfterSend);
exit_if_error("Cannot send file", err);
err = producer->WaitRequestsFinished(1000);
exit_if_error("Producer exit on timeout", err);
return EXIT_SUCCESS;
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment