mirror of https://github.com/opencardev/aasdk
Initial commit
commit
9bcecbc977
|
@ -0,0 +1,4 @@
|
|||
# Add any directories, files, or patterns you don't want to be tracked by version control
|
||||
lib/
|
||||
bin/
|
||||
CMakeLists.txt.user
|
|
@ -0,0 +1,81 @@
|
|||
cmake_minimum_required(VERSION 3.5.1)
|
||||
project(aasdk CXX)
|
||||
|
||||
set(base_directory ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
set(sources_directory ${base_directory}/src)
|
||||
|
||||
set(include_directory ${base_directory}/include)
|
||||
set(include_ut_directory ${base_directory}/include_ut)
|
||||
|
||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${base_directory}/lib)
|
||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${base_directory}/lib)
|
||||
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${base_directory}/bin)
|
||||
set(EXECUTABLE_OUTPUT_PATH ${base_directory}/bin)
|
||||
|
||||
SET(CMAKE_CXX_STANDARD 14)
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake_modules/")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS_INIT} -fPIC -Wall -pedantic")
|
||||
set(CMAKE_CXX_FLAGS_DEBUG "-g -O0")
|
||||
set(CMAKE_CXX_FLAGS_RELEASE "-g -O3")
|
||||
|
||||
set(Boost_USE_STATIC_LIBS OFF)
|
||||
set(Boost_USE_MULTITHREADED ON)
|
||||
set(Boost_USE_STATIC_RUNTIME OFF)
|
||||
|
||||
add_definitions(-DBOOST_ALL_DYN_LINK)
|
||||
|
||||
include(ExternalGtest)
|
||||
add_subdirectory(aasdk_proto)
|
||||
|
||||
find_package(Boost REQUIRED COMPONENTS system log OPTIONAL_COMPONENTS unit_test_framework)
|
||||
find_package(libusb-1.0 REQUIRED)
|
||||
find_package(Protobuf REQUIRED)
|
||||
|
||||
set(AASDK_PROTO_INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR})
|
||||
set(AASDK_PROTO_LIBRARIES "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/libaasdk_proto.a")
|
||||
|
||||
include_directories(${AASDK_PROTO_INCLUDE_DIRS}
|
||||
${Boost_INCLUDE_DIRS}
|
||||
${LIBUSB_1_INCLUDE_DIRS}
|
||||
${PROTOBUF_INCLUDE_DIR}
|
||||
${GTEST_INCLUDE_DIRS}
|
||||
${GMOCK_INCLUDE_DIRS}
|
||||
${include_directory}
|
||||
${include_ut_directory})
|
||||
|
||||
file(GLOB_RECURSE source_files ${sources_directory}/*.cpp)
|
||||
file(GLOB_RECURSE include_files ${include_directory}/*.hpp)
|
||||
file(GLOB_RECURSE tests_source_files ${sources_directory}/*.ut.cpp)
|
||||
file(GLOB_RECURSE tests_include_files ${include_ut_directory}/*.hpp)
|
||||
|
||||
list(REMOVE_ITEM source_files ${tests_source_files})
|
||||
|
||||
add_library(aasdk SHARED
|
||||
${source_files}
|
||||
${include_files})
|
||||
|
||||
add_dependencies(aasdk aasdk_proto)
|
||||
target_link_libraries(aasdk
|
||||
${AASDK_PROTO_LIBRARIES}
|
||||
${Boost_LIBRARIES}
|
||||
${LIBUSB_1_LIBRARIES}
|
||||
${PROTOBUF_LIBRARIES}
|
||||
ssl
|
||||
crypto)
|
||||
|
||||
add_executable(aasdk_ut EXCLUDE_FROM_ALL
|
||||
${tests_source_files}
|
||||
${tests_include_files})
|
||||
|
||||
add_dependencies(aasdk_ut aasdk)
|
||||
target_link_libraries(aasdk_ut
|
||||
aasdk
|
||||
${GMOCK_LIBRARY_PATH}
|
||||
${GTEST_LIBRARY_PATH})
|
||||
|
||||
if(CODE_COVERAGE)
|
||||
include(CodeCoverage)
|
||||
append_coverage_compiler_flags()
|
||||
setup_target_for_coverage(NAME aasdk_coverage EXECUTABLE aasdk_ut DEPENDENCIES aasdk_ut)
|
||||
endif(CODE_COVERAGE)
|
|
@ -0,0 +1,35 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "AVStreamTypeEnum.proto";
|
||||
import "AudioTypeEnum.proto";
|
||||
import "AudioConfigData.proto";
|
||||
import "VideoConfigData.proto";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message AVChannel
|
||||
{
|
||||
enums.AVStreamType.Enum stream_type = 1;
|
||||
enums.AudioType.Enum audio_type = 2;
|
||||
repeated AudioConfig audio_configs = 3;
|
||||
repeated VideoConfig video_configs = 4;
|
||||
bool available_while_in_call = 5;
|
||||
}
|
|
@ -0,0 +1,39 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.ids;
|
||||
|
||||
message AVChannelMessage
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
AV_MEDIA_WITH_TIMESTAMP_INDICATION = 0x0000;
|
||||
AV_MEDIA_INDICATION = 0x0001;
|
||||
SETUP_REQUEST = 0x8000;
|
||||
START_INDICATION = 0x8001;
|
||||
STOP_INDICATION = 0x8002;
|
||||
SETUP_RESPONSE = 0x8003;
|
||||
AV_MEDIA_ACK_INDICATION = 0x8004;
|
||||
AV_INPUT_OPEN_REQUEST = 0x8005;
|
||||
AV_INPUT_OPEN_RESPONSE = 0x8006;
|
||||
VIDEO_FOCUS_REQUEST = 0x8007;
|
||||
VIDEO_FOCUS_INDICATION = 0x8008;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message AVChannelSetupRequest
|
||||
{
|
||||
uint32 config_index = 1;
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto2";
|
||||
|
||||
import "AVChannelSetupStatusEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message AVChannelSetupResponse
|
||||
{
|
||||
required enums.AVChannelSetupStatus.Enum media_status = 1;
|
||||
required uint32 max_unacked = 2;
|
||||
repeated uint32 configs = 3;
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message AVChannelSetupStatus
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0;
|
||||
FAIL = 1;
|
||||
OK = 2;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message AVChannelStartIndication
|
||||
{
|
||||
int32 session = 1;
|
||||
uint32 config = 2;
|
||||
}
|
|
@ -0,0 +1,25 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message AVChannelStopIndication
|
||||
{
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "AVStreamTypeEnum.proto";
|
||||
import "AudioConfigData.proto";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message AVInputChannel
|
||||
{
|
||||
enums.AVStreamType.Enum stream_type = 1;
|
||||
AudioConfig audio_config = 2;
|
||||
bool available_while_in_call = 3;
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message AVInputOpenRequest
|
||||
{
|
||||
bool open = 1;
|
||||
bool anc = 2;
|
||||
bool ec = 3;
|
||||
int32 max_unacked = 4;
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto2";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message AVInputOpenResponse
|
||||
{
|
||||
required int32 session = 1;
|
||||
required uint32 value = 2;
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto2";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message AVMediaAckIndication
|
||||
{
|
||||
required int32 session = 1;
|
||||
required uint32 value = 2;
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message AVStreamType
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0;
|
||||
AUDIO = 1;
|
||||
VIDEO = 3;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message AbsoluteInputEvent
|
||||
{
|
||||
uint32 scan_code = 1;
|
||||
int32 value = 2;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "AbsoluteInputEventData.proto";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message AbsoluteInputEvents
|
||||
{
|
||||
repeated AbsoluteInputEvent absolute_input_events = 1;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message Accel
|
||||
{
|
||||
int32 acceleration_x = 1;
|
||||
int32 acceleration_y = 2;
|
||||
int32 acceleration_z = 3;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message AudioConfig
|
||||
{
|
||||
uint32 sample_rate = 1;
|
||||
uint32 bit_depth = 2;
|
||||
uint32 channel_count = 3;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "AudioFocusTypeEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message AudioFocusRequest
|
||||
{
|
||||
enums.AudioFocusType.Enum audio_focus_type = 1;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "AudioFocusStateEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message AudioFocusResponse
|
||||
{
|
||||
enums.AudioFocusState.Enum audio_focus_state = 1;
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message AudioFocusState
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0;
|
||||
GAIN = 1;
|
||||
GAIN_TRANSIENT = 2;
|
||||
LOSS = 3;
|
||||
LOSS_TRANSIENT_CAN_DUCK = 4;
|
||||
LOSS_TRANSIENT = 5;
|
||||
GAIN_MEDIA_ONLY = 6;
|
||||
GAIN_TRANSIENT_GUIDANCE_ONLY = 7;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message AudioFocusType
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0;
|
||||
GAIN = 1;
|
||||
GAIN_TRANSIENT = 2;
|
||||
GAIN_NAVI = 3;
|
||||
RELEASE = 4;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message AudioType
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0;
|
||||
SPEECH = 1;
|
||||
SYSTEM = 2;
|
||||
MEDIA = 3;
|
||||
ALARM = 4;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto2";
|
||||
|
||||
import "StatusEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message AuthCompleteIndication
|
||||
{
|
||||
required enums.Status.Enum status = 1;
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message BindingRequest
|
||||
{
|
||||
repeated int32 scan_codes = 1;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto2";
|
||||
|
||||
import "StatusEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message BindingResponse
|
||||
{
|
||||
required enums.Status.Enum status = 1;
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "BluetoothPairingMethodEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message BluetoothChannel
|
||||
{
|
||||
string adapter_address = 1;
|
||||
repeated enums.BluetoothPairingMethod.Enum supported_pairing_methods = 2;
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.ids;
|
||||
|
||||
message BluetoothChannelMessage
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0x0000;
|
||||
PAIRING_REQUEST = 0x8001;
|
||||
PAIRING_RESPONSE = 0x8002;
|
||||
AUTH_DATA = 0x8003;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message BluetoothPairingMethod
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0;
|
||||
UNK_1 = 1;
|
||||
A2DP = 2;
|
||||
UNK_3 = 3;
|
||||
HFP = 4;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "BluetoothPairingMethodEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message BluetoothPairingRequest
|
||||
{
|
||||
string phone_address = 1;
|
||||
enums.BluetoothPairingMethod.Enum pairing_method = 2;
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "BluetoothPairingStatusEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message BluetoothPairingResponse
|
||||
{
|
||||
bool already_paired = 1;
|
||||
enums.BluetoothPairingStatus.Enum status = 2;
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message BluetoothPairingStatus
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0;
|
||||
OK = 1;
|
||||
FAIL = 2;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,47 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message ButtonCode
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0x00;
|
||||
MICROPHONE_2 = 0x01;
|
||||
MENU = 0x02;
|
||||
HOME = 0x03;
|
||||
BACK = 0x04;
|
||||
PHONE = 0x05;
|
||||
CALL_END = 0x06;
|
||||
UP = 0x13;
|
||||
DOWN = 0x14;
|
||||
LEFT = 0x15;
|
||||
RIGHT = 0x16;
|
||||
ENTER = 0x17;
|
||||
MICROPHONE_1 = 0x54;
|
||||
TOGGLE_PLAY = 0x55;
|
||||
NEXT = 0x57;
|
||||
PREV = 0x58;
|
||||
PLAY = 0x7E;
|
||||
PAUSE = 0x7F;
|
||||
SCROLL_WHEEL = 65536;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message ButtonEvent
|
||||
{
|
||||
uint32 scan_code = 1;
|
||||
bool is_pressed = 2;
|
||||
uint32 meta = 3;
|
||||
bool long_press = 4;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "ButtonEventData.proto";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message ButtonEvents
|
||||
{
|
||||
repeated ButtonEvent button_events = 1;
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
include(FindProtobuf)
|
||||
find_package(Protobuf REQUIRED)
|
||||
include_directories(${PROTOBUF_INCLUDE_DIR})
|
||||
|
||||
file(GLOB_RECURSE proto_files ${CMAKE_CURRENT_SOURCE_DIR}/*.proto)
|
||||
protobuf_generate_cpp(proto_sources proto_headers ${proto_files})
|
||||
add_library(aasdk_proto ${proto_headers} ${proto_sources})
|
||||
target_link_libraries(aasdk_proto ${PROTOBUF_LIBRARIES})
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "SensorChannelData.proto";
|
||||
import "AVChannelData.proto";
|
||||
import "InputChannelData.proto";
|
||||
import "AVInputChannelData.proto";
|
||||
import "BluetoothChannelData.proto";
|
||||
import "NavigationChannelData.proto";
|
||||
import "VendorExtensionChannelData.proto";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message ChannelDescriptor
|
||||
{
|
||||
uint32 channel_id = 1;
|
||||
SensorChannel sensor_channel = 2;
|
||||
AVChannel av_channel = 3;
|
||||
InputChannel input_channel = 4;
|
||||
AVInputChannel av_input_channel = 5;
|
||||
BluetoothChannel bluetooth_channel = 6;
|
||||
NavigationChannel navigation_channel = 8;
|
||||
VendorExtensionChannel vendor_extension_channel = 12;
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message ChannelOpenRequest
|
||||
{
|
||||
int32 priority = 1;
|
||||
int32 channel_id = 2;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto2";
|
||||
|
||||
import "StatusEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message ChannelOpenResponse
|
||||
{
|
||||
required enums.Status.Enum status = 1;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message Compass
|
||||
{
|
||||
int32 bearing =1;
|
||||
int32 pitch = 2;
|
||||
int32 roll = 3;
|
||||
}
|
|
@ -0,0 +1,46 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.ids;
|
||||
|
||||
message ControlMessage
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0x0000;
|
||||
VERSION_REQUEST = 0x0001;
|
||||
VERSION_RESPONSE = 0x0002;
|
||||
SSL_HANDSHAKE = 0x0003;
|
||||
AUTH_COMPLETE = 0x0004;
|
||||
SERVICE_DISCOVERY_REQUEST = 0x0005;
|
||||
SERVICE_DISCOVERY_RESPONSE = 0x0006;
|
||||
CHANNEL_OPEN_REQUEST = 0x0007;
|
||||
CHANNEL_OPEN_RESPONSE = 0x0008;
|
||||
PING_REQUEST = 0x000b;
|
||||
PING_RESPONSE = 0x000c;
|
||||
NAVIGATION_FOCUS_REQUEST = 0x000d;
|
||||
NAVIGATION_FOCUS_RESPONSE = 0x000e;
|
||||
SHUTDOWN_REQUEST = 0x000f;
|
||||
SHUTDOWN_RESPONSE = 0x0010;
|
||||
VOICE_SESSION_REQUEST = 0x0011;
|
||||
AUDIO_FOCUS_REQUEST = 0x0012;
|
||||
AUDIO_FOCUS_RESPONSE = 0x0013;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message Diagnostics
|
||||
{
|
||||
bytes diagnostics = 1;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message Door
|
||||
{
|
||||
bool hood_open = 1;
|
||||
bool boot_open = 2;
|
||||
repeated bool door_open = 3;
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto2";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message DrivingStatus
|
||||
{
|
||||
required int32 status = 1;
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message DrivingStatus
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
UNRESTRICTED = 0;
|
||||
NO_VIDEO = 1;
|
||||
NO_KEYBOARD_INPUT = 2;
|
||||
NO_VOICE_INPUT = 4;
|
||||
NO_CONFIG = 8;
|
||||
LIMIT_MESSAGE_LEN = 16;
|
||||
FULLY_RESTRICTED = 31;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message Environment
|
||||
{
|
||||
int32 temperature =1;
|
||||
int32 pressure = 2;
|
||||
int32 rain = 3;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message FuelLevel
|
||||
{
|
||||
int32 fuel_level = 1;
|
||||
int32 range = 2;
|
||||
bool low_fuel = 3;
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message GPSLocation
|
||||
{
|
||||
uint64 timestamp = 1;
|
||||
int32 latitude = 2;
|
||||
int32 longitude = 3;
|
||||
uint32 accuracy = 4;
|
||||
int32 altitude = 5;
|
||||
int32 speed = 6;
|
||||
int32 bearing = 7;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "GearEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message Gear
|
||||
{
|
||||
enums.Gear.Enum gear = 1;
|
||||
}
|
|
@ -0,0 +1,42 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message Gear
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NEUTRAL = 0;
|
||||
FIRST = 1;
|
||||
SECOND = 2;
|
||||
THIRD = 3;
|
||||
FOURTH = 4;
|
||||
FIFTH = 5;
|
||||
SIXTH = 6;
|
||||
SEVENTH = 7;
|
||||
EIGHTH = 8;
|
||||
NINTH = 9;
|
||||
TENTH = 10;
|
||||
DRIVE = 100;
|
||||
PARK = 101;
|
||||
REVERSE = 102;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message Gyro
|
||||
{
|
||||
int32 rotation_speed_x = 1;
|
||||
int32 rotation_speed_y = 2;
|
||||
int32 rotation_speed_z = 3;
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message HVAC
|
||||
{
|
||||
int32 target_temperature = 1;
|
||||
int32 current_temperature = 2;
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message HeadlightStatus
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
STATE_0 = 0;
|
||||
STATE_1 = 1;
|
||||
STATE_2 = 2;
|
||||
STATE_3 = 3;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message IndicatorStatus
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
STATE_0 = 0;
|
||||
STATE_1 = 1;
|
||||
STATE_2 = 2;
|
||||
STATE_3 = 3;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "TouchConfigData.proto";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message InputChannel
|
||||
{
|
||||
repeated uint32 supported_keycodes = 1;
|
||||
TouchConfig touch_screen_config = 2;
|
||||
TouchConfig touch_pad_config = 3;
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.ids;
|
||||
|
||||
message InputChannelMessage
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0x0000;
|
||||
INPUT_EVENT_INDICATION = 0x8001;
|
||||
BINDING_REQUEST = 0x8002;
|
||||
BINDING_RESPONSE = 0x8003;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "TouchEventData.proto";
|
||||
import "ButtonEventsData.proto";
|
||||
import "AbsoluteInputEventsData.proto";
|
||||
import "RelativeInputEventsData.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message InputEventIndication
|
||||
{
|
||||
uint64 timestamp = 1;
|
||||
int32 disp_channel = 2;
|
||||
data.TouchEvent touch_event = 3;
|
||||
data.ButtonEvents button_event = 4;
|
||||
data.AbsoluteInputEvents absolute_input_event = 5;
|
||||
data.RelativeInputEvents relative_input_event = 6;
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "HeadlightStatusEnum.proto";
|
||||
import "IndicatorStatusEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message Light
|
||||
{
|
||||
enums.HeadlightStatus.Enum headlight = 1;
|
||||
enums.IndicatorStatus.Enum indicator = 2;
|
||||
bool hazard_light_on = 3;
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "NavigationImageOptionsData.proto";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message NavigationChannel
|
||||
{
|
||||
uint32 minimum_interval_ms = 1;
|
||||
uint32 type = 2;
|
||||
NavigationImageOptions image_options = 3;
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message NavigationFocusRequest
|
||||
{
|
||||
uint32 type = 1;
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message NavigationFocusResponse
|
||||
{
|
||||
uint32 type = 1;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message NavigationImageOptions
|
||||
{
|
||||
int32 width = 1;
|
||||
int32 height = 2;
|
||||
int32 colour_depth_bits = 3;
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message NightMode
|
||||
{
|
||||
bool is_night = 1;
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message Odometer
|
||||
{
|
||||
int32 total_mileage = 1;
|
||||
int32 trip_mileage = 2;
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message ParkingBrake
|
||||
{
|
||||
bool parking_brake = 1;
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message Passenger
|
||||
{
|
||||
bool passenger_present = 1;
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message PingRequest
|
||||
{
|
||||
int64 timestamp = 1;
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message PingResponse
|
||||
{
|
||||
int64 timestamp = 1;
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message RPM
|
||||
{
|
||||
int32 rpm = 1;
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message RelativeInputEvent
|
||||
{
|
||||
uint32 scan_code = 1;
|
||||
int32 delta = 2;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "RelativeInputEventData.proto";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message RelativeInputEvents
|
||||
{
|
||||
repeated RelativeInputEvent relative_input_events = 1;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "SensorData.proto";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message SensorChannel
|
||||
{
|
||||
repeated Sensor sensors = 1;
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.ids;
|
||||
|
||||
message SensorChannelMessage
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0x0000;
|
||||
SENSOR_START_REQUEST = 0x8001;
|
||||
SENSOR_START_RESPONSE = 0x8002;
|
||||
SENSOR_EVENT_INDICATION = 0x8003;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "SensorTypeEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message Sensor
|
||||
{
|
||||
enums.SensorType.Enum type = 1;
|
||||
}
|
|
@ -0,0 +1,64 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "GPSLocationData.proto";
|
||||
import "CompassData.proto";
|
||||
import "SpeedData.proto";
|
||||
import "RPMData.proto";
|
||||
import "OdometerData.proto";
|
||||
import "FuelLevelData.proto";
|
||||
import "ParkingBrakeData.proto";
|
||||
import "GearData.proto";
|
||||
import "DiagnosticsData.proto";
|
||||
import "NightModeData.proto";
|
||||
import "EnvironmentData.proto";
|
||||
import "HVACData.proto";
|
||||
import "DrivingStatusData.proto";
|
||||
import "SteeringWheelData.proto";
|
||||
import "PassengerData.proto";
|
||||
import "DoorData.proto";
|
||||
import "LightData.proto";
|
||||
import "AccelData.proto";
|
||||
import "GyroData.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message SensorEventIndication
|
||||
{
|
||||
repeated data.GPSLocation gps_location = 1;
|
||||
repeated data.Compass compass = 2;
|
||||
repeated data.Speed speed = 3;
|
||||
repeated data.RPM rpm = 4;
|
||||
repeated data.Odometer odometer = 5;
|
||||
repeated data.FuelLevel fuel_level = 6;
|
||||
repeated data.ParkingBrake parking_brake = 7;
|
||||
repeated data.Gear gear = 8;
|
||||
repeated data.Diagnostics diagnostics = 9;
|
||||
repeated data.NightMode night_mode = 10;
|
||||
repeated data.Environment enviorment = 11;
|
||||
repeated data.HVAC hvac = 12;
|
||||
repeated data.DrivingStatus driving_status = 13;
|
||||
repeated data.SteeringWheel steering_wheel = 14;
|
||||
repeated data.Passenger passenger = 15;
|
||||
repeated data.Door door = 16;
|
||||
repeated data.Light light = 17;
|
||||
repeated data.Accel accel = 19;
|
||||
repeated data.Gyro gyro = 20;
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "SensorTypeEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message SensorStartRequestMessage
|
||||
{
|
||||
enums.SensorType.Enum sensor_type = 1;
|
||||
int64 refresh_interval = 2;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto2";
|
||||
|
||||
import "StatusEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message SensorStartResponseMessage
|
||||
{
|
||||
required enums.Status.Enum status = 1;
|
||||
}
|
|
@ -0,0 +1,50 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message SensorType
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0;
|
||||
LOCATION = 1;
|
||||
COMPASS = 2;
|
||||
CAR_SPEED = 3;
|
||||
RPM = 4;
|
||||
ODOMETER = 5;
|
||||
FUEL_LEVEL = 6;
|
||||
PARKING_BRAKE = 7;
|
||||
GEAR = 8;
|
||||
DIAGNOSTICS = 9;
|
||||
NIGHT_DATA = 10;
|
||||
ENVIRONMENT = 11;
|
||||
HVAC = 12;
|
||||
DRIVING_STATUS = 13;
|
||||
DEAD_RECONING = 14;
|
||||
PASSENGER = 15;
|
||||
DOOR = 16;
|
||||
LIGHT = 17;
|
||||
TIRE = 18;
|
||||
ACCEL = 19;
|
||||
GYRO = 20;
|
||||
GPS = 21;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message ServiceDiscoveryRequest
|
||||
{
|
||||
string device_name = 4;
|
||||
string device_brand = 5;
|
||||
}
|
|
@ -0,0 +1,39 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "ChannelDescriptorData.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message ServiceDiscoveryResponse
|
||||
{
|
||||
repeated data.ChannelDescriptor channels = 1;
|
||||
string head_unit_name = 2;
|
||||
string car_model = 3;
|
||||
string car_year = 4;
|
||||
string car_serial = 5;
|
||||
bool left_hand_drive_vehicle = 6;
|
||||
string headunit_manufacturer = 7;
|
||||
string headunit_model = 8;
|
||||
string sw_build = 9;
|
||||
string sw_version = 10;
|
||||
bool can_play_native_media_during_vr = 11;
|
||||
bool hide_clock = 12;
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message ShutdownReason
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0;
|
||||
QUIT = 1;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "ShutdownReasonEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message ShutdownRequest
|
||||
{
|
||||
enums.ShutdownReason.Enum reason = 1;
|
||||
}
|
|
@ -0,0 +1,25 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message ShutdownResponse
|
||||
{
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message Speed
|
||||
{
|
||||
int32 speed = 1;
|
||||
bool cruise_engaged = 2;
|
||||
bool cruise_set_speed = 3;
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message Status
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
OK = 0;
|
||||
FAIL = 1;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message SteeringWheel
|
||||
{
|
||||
int32 steering_angel = 1;
|
||||
int32 wheel_speed = 2;
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message TouchAction
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
PRESS = 0;
|
||||
RELEASE = 1;
|
||||
DRAG = 2;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message TouchConfig
|
||||
{
|
||||
uint32 width = 1;
|
||||
uint32 height = 2;
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "TouchLocationData.proto";
|
||||
import "TouchActionEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message TouchEvent
|
||||
{
|
||||
repeated data.TouchLocation touch_location = 1;
|
||||
uint32 action_index = 2;
|
||||
enums.TouchAction.Enum touch_action = 3;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message TouchLocation
|
||||
{
|
||||
uint32 x = 1;
|
||||
uint32 y = 2;
|
||||
uint32 pointer_id = 3;
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message VendorExtensionChannel
|
||||
{
|
||||
string name = 1;
|
||||
repeated string package_white_list = 2;
|
||||
bytes data = 3;
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message VersionResponseStatus
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
MATCH = 0;
|
||||
MISMATCH = 0xFFFF;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,34 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "VideoResolutionEnum.proto";
|
||||
import "VideoFPSEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.data;
|
||||
|
||||
message VideoConfig
|
||||
{
|
||||
enums.VideoResolution.Enum video_resolution = 1;
|
||||
enums.VideoFPS.Enum video_fps = 2;
|
||||
uint32 margin_width = 3;
|
||||
uint32 margin_height = 4;
|
||||
uint32 dpi = 5;
|
||||
uint32 additional_depth = 6;
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message VideoFPS
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0;
|
||||
_30 = 1;
|
||||
_60 = 2;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "VideoFocusModeEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message VideoFocusIndication
|
||||
{
|
||||
enums.VideoFocusMode.Enum focus_mode = 1;
|
||||
bool unrequested = 2;
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message VideoFocusMode
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0;
|
||||
FOCUSED = 1;
|
||||
UNFOCUSED = 2;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message VideoFocusReason
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0;
|
||||
UNK_1 = 1;
|
||||
UNK_2 = 2;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
import "VideoFocusModeEnum.proto";
|
||||
import "VideoFocusReasonEnum.proto";
|
||||
|
||||
package f1x.aasdk.proto.messages;
|
||||
|
||||
message VideoFocusRequest
|
||||
{
|
||||
int32 disp_index = 1;
|
||||
enums.VideoFocusMode.Enum focus_mode = 2;
|
||||
enums.VideoFocusReason.Enum focus_reason = 3;
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
/*
|
||||
* This file is part of aasdk library project.
|
||||
* Copyright (C) 2018 f1x.studio (Michal Szwaj)
|
||||
*
|
||||
* aasdk is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
|
||||
* aasdk is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with aasdk. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
syntax="proto3";
|
||||
|
||||
package f1x.aasdk.proto.enums;
|
||||
|
||||
message VideoResolution
|
||||
{
|
||||
enum Enum
|
||||
{
|
||||
NONE = 0;
|
||||
_480p = 1;
|
||||
_720p = 2;
|
||||
_1080p = 3;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,238 @@
|
|||
# Copyright (c) 2012 - 2017, Lars Bilke
|
||||
# All rights reserved.
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without modification,
|
||||
# are permitted provided that the following conditions are met:
|
||||
#
|
||||
# 1. Redistributions of source code must retain the above copyright notice, this
|
||||
# list of conditions and the following disclaimer.
|
||||
#
|
||||
# 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
# this list of conditions and the following disclaimer in the documentation
|
||||
# and/or other materials provided with the distribution.
|
||||
#
|
||||
# 3. Neither the name of the copyright holder nor the names of its contributors
|
||||
# may be used to endorse or promote products derived from this software without
|
||||
# specific prior written permission.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
||||
# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||
# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
#
|
||||
# CHANGES:
|
||||
#
|
||||
# 2012-01-31, Lars Bilke
|
||||
# - Enable Code Coverage
|
||||
#
|
||||
# 2013-09-17, Joakim Söderberg
|
||||
# - Added support for Clang.
|
||||
# - Some additional usage instructions.
|
||||
#
|
||||
# 2016-02-03, Lars Bilke
|
||||
# - Refactored functions to use named parameters
|
||||
#
|
||||
# 2017-06-02, Lars Bilke
|
||||
# - Merged with modified version from github.com/ufz/ogs
|
||||
#
|
||||
#
|
||||
# USAGE:
|
||||
#
|
||||
# 1. Copy this file into your cmake modules path.
|
||||
#
|
||||
# 2. Add the following line to your CMakeLists.txt:
|
||||
# include(CodeCoverage)
|
||||
#
|
||||
# 3. Append necessary compiler flags:
|
||||
# APPEND_COVERAGE_COMPILER_FLAGS()
|
||||
#
|
||||
# 4. If you need to exclude additional directories from the report, specify them
|
||||
# using the COVERAGE_EXCLUDES variable before calling SETUP_TARGET_FOR_COVERAGE.
|
||||
# Example:
|
||||
# set(COVERAGE_EXCLUDES 'dir1/*' 'dir2/*')
|
||||
#
|
||||
# 5. Use the functions described below to create a custom make target which
|
||||
# runs your test executable and produces a code coverage report.
|
||||
#
|
||||
# 6. Build a Debug build:
|
||||
# cmake -DCMAKE_BUILD_TYPE=Debug ..
|
||||
# make
|
||||
# make my_coverage_target
|
||||
#
|
||||
|
||||
include(CMakeParseArguments)
|
||||
|
||||
# Check prereqs
|
||||
find_program( GCOV_PATH gcov )
|
||||
find_program( LCOV_PATH lcov )
|
||||
find_program( GENHTML_PATH genhtml )
|
||||
find_program( GCOVR_PATH gcovr PATHS ${CMAKE_SOURCE_DIR}/scripts/test)
|
||||
find_program( SIMPLE_PYTHON_EXECUTABLE python )
|
||||
|
||||
if(NOT GCOV_PATH)
|
||||
message(FATAL_ERROR "gcov not found! Aborting...")
|
||||
endif() # NOT GCOV_PATH
|
||||
|
||||
if("${CMAKE_CXX_COMPILER_ID}" MATCHES "(Apple)?[Cc]lang")
|
||||
if("${CMAKE_CXX_COMPILER_VERSION}" VERSION_LESS 3)
|
||||
message(FATAL_ERROR "Clang version must be 3.0.0 or greater! Aborting...")
|
||||
endif()
|
||||
elseif(NOT CMAKE_COMPILER_IS_GNUCXX)
|
||||
message(FATAL_ERROR "Compiler is not GNU gcc! Aborting...")
|
||||
endif()
|
||||
|
||||
set(COVERAGE_COMPILER_FLAGS "-g -O0 --coverage -fprofile-arcs -ftest-coverage"
|
||||
CACHE INTERNAL "")
|
||||
|
||||
set(CMAKE_CXX_FLAGS_COVERAGE
|
||||
${COVERAGE_COMPILER_FLAGS}
|
||||
CACHE STRING "Flags used by the C++ compiler during coverage builds."
|
||||
FORCE )
|
||||
set(CMAKE_C_FLAGS_COVERAGE
|
||||
${COVERAGE_COMPILER_FLAGS}
|
||||
CACHE STRING "Flags used by the C compiler during coverage builds."
|
||||
FORCE )
|
||||
set(CMAKE_EXE_LINKER_FLAGS_COVERAGE
|
||||
""
|
||||
CACHE STRING "Flags used for linking binaries during coverage builds."
|
||||
FORCE )
|
||||
set(CMAKE_SHARED_LINKER_FLAGS_COVERAGE
|
||||
""
|
||||
CACHE STRING "Flags used by the shared libraries linker during coverage builds."
|
||||
FORCE )
|
||||
mark_as_advanced(
|
||||
CMAKE_CXX_FLAGS_COVERAGE
|
||||
CMAKE_C_FLAGS_COVERAGE
|
||||
CMAKE_EXE_LINKER_FLAGS_COVERAGE
|
||||
CMAKE_SHARED_LINKER_FLAGS_COVERAGE )
|
||||
|
||||
if(NOT CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
message(WARNING "Code coverage results with an optimised (non-Debug) build may be misleading")
|
||||
endif() # NOT CMAKE_BUILD_TYPE STREQUAL "Debug"
|
||||
|
||||
if(CMAKE_C_COMPILER_ID STREQUAL "GNU")
|
||||
link_libraries(gcov)
|
||||
else()
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage")
|
||||
endif()
|
||||
|
||||
# Defines a target for running and collection code coverage information
|
||||
# Builds dependencies, runs the given executable and outputs reports.
|
||||
# NOTE! The executable should always have a ZERO as exit code otherwise
|
||||
# the coverage generation will not complete.
|
||||
#
|
||||
# SETUP_TARGET_FOR_COVERAGE(
|
||||
# NAME testrunner_coverage # New target name
|
||||
# EXECUTABLE testrunner -j ${PROCESSOR_COUNT} # Executable in PROJECT_BINARY_DIR
|
||||
# DEPENDENCIES testrunner # Dependencies to build first
|
||||
# )
|
||||
function(SETUP_TARGET_FOR_COVERAGE)
|
||||
|
||||
set(options NONE)
|
||||
set(oneValueArgs NAME)
|
||||
set(multiValueArgs EXECUTABLE EXECUTABLE_ARGS DEPENDENCIES)
|
||||
cmake_parse_arguments(Coverage "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||
|
||||
if(NOT LCOV_PATH)
|
||||
message(FATAL_ERROR "lcov not found! Aborting...")
|
||||
endif() # NOT LCOV_PATH
|
||||
|
||||
if(NOT GENHTML_PATH)
|
||||
message(FATAL_ERROR "genhtml not found! Aborting...")
|
||||
endif() # NOT GENHTML_PATH
|
||||
|
||||
# Setup target
|
||||
add_custom_target(${Coverage_NAME}
|
||||
|
||||
# Cleanup lcov
|
||||
COMMAND ${LCOV_PATH} --directory . --zerocounters
|
||||
# Create baseline to make sure untouched files show up in the report
|
||||
COMMAND ${LCOV_PATH} -c -i -d . -o ${Coverage_NAME}.base
|
||||
|
||||
# Run tests
|
||||
COMMAND ${Coverage_EXECUTABLE}
|
||||
|
||||
# Capturing lcov counters and generating report
|
||||
COMMAND ${LCOV_PATH} --directory . --capture --output-file ${Coverage_NAME}.info
|
||||
# add baseline counters
|
||||
COMMAND ${LCOV_PATH} -a ${Coverage_NAME}.base -a ${Coverage_NAME}.info --output-file ${Coverage_NAME}.total
|
||||
COMMAND ${LCOV_PATH} --remove ${Coverage_NAME}.total ${COVERAGE_EXCLUDES} --output-file ${PROJECT_BINARY_DIR}/${Coverage_NAME}.info.cleaned
|
||||
COMMAND ${GENHTML_PATH} -o ${Coverage_NAME} ${PROJECT_BINARY_DIR}/${Coverage_NAME}.info.cleaned
|
||||
COMMAND ${CMAKE_COMMAND} -E remove ${Coverage_NAME}.base ${Coverage_NAME}.info ${Coverage_NAME}.total ${PROJECT_BINARY_DIR}/${Coverage_NAME}.info.cleaned
|
||||
|
||||
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
|
||||
DEPENDS ${Coverage_DEPENDENCIES}
|
||||
COMMENT "Resetting code coverage counters to zero.\nProcessing code coverage counters and generating report."
|
||||
)
|
||||
|
||||
# Show info where to find the report
|
||||
add_custom_command(TARGET ${Coverage_NAME} POST_BUILD
|
||||
COMMAND ;
|
||||
COMMENT "Open ./${Coverage_NAME}/index.html in your browser to view the coverage report."
|
||||
)
|
||||
|
||||
endfunction() # SETUP_TARGET_FOR_COVERAGE
|
||||
|
||||
# Defines a target for running and collection code coverage information
|
||||
# Builds dependencies, runs the given executable and outputs reports.
|
||||
# NOTE! The executable should always have a ZERO as exit code otherwise
|
||||
# the coverage generation will not complete.
|
||||
#
|
||||
# SETUP_TARGET_FOR_COVERAGE_COBERTURA(
|
||||
# NAME ctest_coverage # New target name
|
||||
# EXECUTABLE ctest -j ${PROCESSOR_COUNT} # Executable in PROJECT_BINARY_DIR
|
||||
# DEPENDENCIES executable_target # Dependencies to build first
|
||||
# )
|
||||
function(SETUP_TARGET_FOR_COVERAGE_COBERTURA)
|
||||
|
||||
set(options NONE)
|
||||
set(oneValueArgs NAME)
|
||||
set(multiValueArgs EXECUTABLE EXECUTABLE_ARGS DEPENDENCIES)
|
||||
cmake_parse_arguments(Coverage "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||
|
||||
if(NOT SIMPLE_PYTHON_EXECUTABLE)
|
||||
message(FATAL_ERROR "python not found! Aborting...")
|
||||
endif() # NOT SIMPLE_PYTHON_EXECUTABLE
|
||||
|
||||
if(NOT GCOVR_PATH)
|
||||
message(FATAL_ERROR "gcovr not found! Aborting...")
|
||||
endif() # NOT GCOVR_PATH
|
||||
|
||||
# Combine excludes to several -e arguments
|
||||
set(COBERTURA_EXCLUDES "")
|
||||
foreach(EXCLUDE ${COVERAGE_EXCLUDES})
|
||||
set(COBERTURA_EXCLUDES "-e ${EXCLUDE} ${COBERTURA_EXCLUDES}")
|
||||
endforeach()
|
||||
|
||||
add_custom_target(${Coverage_NAME}
|
||||
|
||||
# Run tests
|
||||
${Coverage_EXECUTABLE}
|
||||
|
||||
# Running gcovr
|
||||
COMMAND ${GCOVR_PATH} -x -r ${CMAKE_SOURCE_DIR} ${COBERTURA_EXCLUDES}
|
||||
-o ${Coverage_NAME}.xml
|
||||
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
|
||||
DEPENDS ${Coverage_DEPENDENCIES}
|
||||
COMMENT "Running gcovr to produce Cobertura code coverage report."
|
||||
)
|
||||
|
||||
# Show info where to find the report
|
||||
add_custom_command(TARGET ${Coverage_NAME} POST_BUILD
|
||||
COMMAND ;
|
||||
COMMENT "Cobertura code coverage report saved in ${Coverage_NAME}.xml."
|
||||
)
|
||||
|
||||
endfunction() # SETUP_TARGET_FOR_COVERAGE_COBERTURA
|
||||
|
||||
function(APPEND_COVERAGE_COMPILER_FLAGS)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${COVERAGE_COMPILER_FLAGS}" PARENT_SCOPE)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${COVERAGE_COMPILER_FLAGS}" PARENT_SCOPE)
|
||||
message(STATUS "Appending code coverage compiler flags: ${COVERAGE_COMPILER_FLAGS}")
|
||||
endfunction() # APPEND_COVERAGE_COMPILER_FLAGS
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue