Browse Source

Add uaspire_ground

master
Alex Mikhalev 5 years ago
parent
commit
ad7b6b351e
  1. 1
      src/uaspire_ground/.gitignore
  2. 40
      src/uaspire_ground/CMakeLists.txt
  3. 13
      src/uaspire_ground/build.js
  4. 37
      src/uaspire_ground/cmake/FindNode.cmake
  5. 71
      src/uaspire_ground/cmake/FindNpm.cmake
  6. 19
      src/uaspire_ground/index.js
  7. 401
      src/uaspire_ground/package-lock.json
  8. 18
      src/uaspire_ground/package.json
  9. 26
      src/uaspire_ground/package.xml

1
src/uaspire_ground/.gitignore vendored

@ -0,0 +1 @@
/node_modules

40
src/uaspire_ground/CMakeLists.txt

@ -0,0 +1,40 @@
# CMakeLists.txt file to configure build of uaspire_ground
# Set minimum version of CMake required to build
cmake_minimum_required(VERSION 3.10 FATAL_ERROR)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
# Find ament meta build system
find_package(ament_cmake REQUIRED)
# Create uaspire_ground project
project(uaspire_ground
DESCRIPTION "UASPIRE Ground"
LANGUAGES)
# Find required packages
find_package(uaspire_msgs REQUIRED)
find_package(Node REQUIRED)
find_package(Npm REQUIRED)
# Create targets and add target dependencies
add_custom_target(build_ground ALL
COMMENT "Build ground station"
COMMAND ${NPM_EXECUTABLE} install
USES_TERMINAL
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}")
# Install files to correct locations
install(CODE "
execute_process(
COMMAND ${NPM_EXECUTABLE} install --prefix=${CMAKE_INSTALL_PREFIX} -g
RESULT_VARIABLE install_result
WORKING_DIRECTORY \"${CMAKE_SOURCE_DIR}\"
)
if (NOT install_result EQUAL 0)
message(FATAL_ERROR \"Error installing to prefix\")
endif()
")
ament_package()

13
src/uaspire_ground/build.js

@ -0,0 +1,13 @@
const rosidl_gen = require("rclnodejs/rosidl_gen");
const path = require("path");
const workspacePath = path.resolve(__dirname, "..", "..");
console.log(`Generating ROS NodeJS messages in workspace (${workspacePath})`)
rosidl_gen.generateInPath(workspacePath)
.then(() => {
console.log("Generated ROS NodeJS messages")
}, (err) => {
console.error("Error generating ROS NodeJS messages: ", err);
process.exit(1);
});

37
src/uaspire_ground/cmake/FindNode.cmake

@ -0,0 +1,37 @@
if (Node_FOUND)
return()
endif()
find_program (NODEJS_EXECUTABLE NAMES node nodejs
HINTS
${NODE_DIR} $ENV{NODE_DIR}
PATH_SUFFIXES bin
DOC "Node.js interpreter")
include (FindPackageHandleStandardArgs)
if (NODEJS_EXECUTABLE)
execute_process(COMMAND ${NODEJS_EXECUTABLE} --version
OUTPUT_VARIABLE _VERSION
RESULT_VARIABLE _NODE_VERSION_RESULT)
if (NOT _NODE_VERSION_RESULT)
string (REPLACE "v" "" NODE_VERSION_STRING "${_VERSION}")
string (REPLACE "." ";" _VERSION_LIST "${NODE_VERSION_STRING}")
list (GET _VERSION_LIST 0 NODE_VERSION_MAJOR)
list (GET _VERSION_LIST 1 NODE_VERSION_MINOR)
list (GET _VERSION_LIST 2 NODE_VERSION_PATCH)
else ()
set (NODE_VERSION_STRING "0.10.30")
set (NODE_VERSION_MAJOR "0")
set (NODE_VERSION_MINOR "10")
set (NODE_VERSION_PATCH "30")
message (STATUS "defaulted to node 0.10.30")
endif ()
string (REGEX REPLACE "\n" "" NODE_VERSION_STRING ${NODE_VERSION_STRING})
mark_as_advanced (NODEJS_EXECUTABLE)
endif ()
find_package_handle_standard_args (Node
REQUIRED_VARS NODEJS_EXECUTABLE
VERSION_VAR NODE_VERSION_STRING)

71
src/uaspire_ground/cmake/FindNpm.cmake

@ -0,0 +1,71 @@
# FindNpm
# --------
#
# Find npm
#
# This module finds an installed npm. It sets the following variables:
#
# NPM_FOUND - Set to true if npm is found
# NPM_DIR - The directory where npm is installed
# NPM_GLOBAL_NODE_MODULE_DIR - The global node_modules directory
# NPM_EXECUTABLE - The path to the npm executable
# NPM_VERSION - The version number of the npm executable
find_program(NPM_EXECUTABLE NAMES npm HINTS /usr)
# If npm was found, fill in the rest
if (NPM_EXECUTABLE)
# Set the global node_modules location
execute_process(COMMAND ${NPM_EXECUTABLE} root -g
OUTPUT_VARIABLE NPM_GLOBAL_NODE_MODULE_DIR
ERROR_VARIABLE NPM_root_g_error
RESULT_VARIABLE NPM_root_g_result_code)
# Remove and newlines
string (STRIP ${NPM_GLOBAL_NODE_MODULE_DIR} NPM_GLOBAL_NODE_MODULE_DIR)
if(NPM_root_g_result_code)
if(NPM_FIND_REQUIRED)
message(SEND_ERROR "Command \"${NPM_EXECUTABLE} root -g\" failed with output:\n${NPM_root_g_error}")
else ()
message(STATUS "Command \"${NPM_EXECUTABLE} root -g\" failed with output:\n${NPM_root_g_error}")
endif ()
endif()
unset(NPM_root_g_error)
unset(NPM_root_g_result_code)
# Set the NPM dir
if (EXISTS "${NPM_GLOBAL_NODE_MODULE_DIR}/npm")
set(NPM_DIR "${NPM_GLOBAL_NODE_MODULE_DIR}/npm")
endif()
# Set the VERSION
execute_process(COMMAND ${NPM_EXECUTABLE} -v
OUTPUT_VARIABLE NPM_VERSION
ERROR_VARIABLE NPM_version_error
RESULT_VARIABLE NPM_version_result_code)
if(NPM_version_result_code)
if(NPM_FIND_REQUIRED)
message(SEND_ERROR "Command \"${NPM_EXECUTABLE} -v\" failed with output:\n${NPM_version_error}")
else()
message(STATUS "Command \"${NPM_EXECUTABLE} -v\" failed with output:\n${NPM_version_error}")
endif ()
endif ()
unset(NPM_version_error)
unset(NPM_version_result_code)
# Remove and newlines
string (STRIP ${NPM_VERSION} NPM_VERSION)
set (NPM_FOUND TRUE)
else()
# Fail on REQUIRED
if (Npm_FIND_REQUIRED)
message(SEND_ERROR "Failed to find npm executable")
endif()
endif ()
find_package_handle_standard_args(NPM
REQUIRED_VARS NPM_EXECUTABLE NPM_DIR
VERSION_VAR NPM_VERSION )
mark_as_advanced(NPM_DIR NPM_GLOBAL_NODE_MODULE_DIR NPM_EXECUTABLE NPM_VERSION)

19
src/uaspire_ground/index.js

@ -0,0 +1,19 @@
#!/usr/bin/env node
const rcl = require("rclnodejs");
async function start() {
await rcl.init();
console.log("Initialized ROS client");
const MsgCommand = rcl.require('uaspire_msgs/msg/Command');
const MsgSensors = rcl.require('uaspire_msgs/msg/Sensors');
const node = rcl.createNode("uaspire_ground");
node.createSubscription(MsgSensors, "uaspire/sensors", (sensors) => {
console.log("Received sensors: ", sensors);
});
rcl.spin(node);
}
start().catch((err) => console.error("Unhandled error:", err));

401
src/uaspire_ground/package-lock.json generated

@ -0,0 +1,401 @@
{
"name": "uaspire_ground",
"version": "0.0.1",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
"any-promise": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz",
"integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8="
},
"array-index": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/array-index/-/array-index-1.0.0.tgz",
"integrity": "sha1-7FanSe4QPk4Ix5C5w1PfFgVbl/k=",
"requires": {
"debug": "^2.2.0",
"es6-symbol": "^3.0.2"
},
"dependencies": {
"debug": {
"version": "2.6.9",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"requires": {
"ms": "2.0.0"
}
},
"ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
}
}
},
"bindings": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
"integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
"requires": {
"file-uri-to-path": "1.0.0"
}
},
"commander": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/commander/-/commander-3.0.1.tgz",
"integrity": "sha512-UNgvDd+csKdc9GD4zjtkHKQbT8Aspt2jCBqNSPp53vAS0L1tS9sXB2TCEOPHJ7kt9bN/niWkYj8T3RQSoMXdSQ=="
},
"compare-versions": {
"version": "3.5.1",
"resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.5.1.tgz",
"integrity": "sha512-9fGPIB7C6AyM18CJJBHt5EnCZDG3oiTJYy0NjfIAGjKpzv0tkxWko7TNQHF5ymqm7IH03tqmeuBxtvD+Izh6mg=="
},
"d": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz",
"integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==",
"requires": {
"es5-ext": "^0.10.50",
"type": "^1.0.1"
}
},
"debug": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
"integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
"requires": {
"ms": "^2.1.1"
}
},
"deep-equal": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.0.tgz",
"integrity": "sha512-ZbfWJq/wN1Z273o7mUSjILYqehAktR2NVoSrOukDkU9kg2v/Uv89yU4Cvz8seJeAmtN5oqiefKq8FPuXOboqLw==",
"requires": {
"is-arguments": "^1.0.4",
"is-date-object": "^1.0.1",
"is-regex": "^1.0.4",
"object-is": "^1.0.1",
"object-keys": "^1.1.1",
"regexp.prototype.flags": "^1.2.0"
}
},
"define-properties": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
"integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
"requires": {
"object-keys": "^1.0.12"
}
},
"dot": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/dot/-/dot-1.1.2.tgz",
"integrity": "sha1-xzdwGfxOVQeYkosrmv62ar+h8vk="
},
"es5-ext": {
"version": "0.10.51",
"resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.51.tgz",
"integrity": "sha512-oRpWzM2WcLHVKpnrcyB7OW8j/s67Ba04JCm0WnNv3RiABSvs7mrQlutB8DBv793gKcp0XENR8Il8WxGTlZ73gQ==",
"requires": {
"es6-iterator": "~2.0.3",
"es6-symbol": "~3.1.1",
"next-tick": "^1.0.0"
}
},
"es6-iterator": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz",
"integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=",
"requires": {
"d": "1",
"es5-ext": "^0.10.35",
"es6-symbol": "^3.1.1"
}
},
"es6-symbol": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.2.tgz",
"integrity": "sha512-/ZypxQsArlv+KHpGvng52/Iz8by3EQPxhmbuz8yFG89N/caTFBSbcXONDw0aMjy827gQg26XAjP4uXFvnfINmQ==",
"requires": {
"d": "^1.0.1",
"es5-ext": "^0.10.51"
}
},
"file-uri-to-path": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
"integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw=="
},
"foreachasync": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/foreachasync/-/foreachasync-3.0.0.tgz",
"integrity": "sha1-VQKYfchxS+M5IJfzLgBxyd7gfPY="
},
"fs-extra": {
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
"integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
"requires": {
"graceful-fs": "^4.2.0",
"jsonfile": "^4.0.0",
"universalify": "^0.1.0"
}
},
"function-bind": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
},
"graceful-fs": {
"version": "4.2.2",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.2.tgz",
"integrity": "sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q=="
},
"has": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
"integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
"requires": {
"function-bind": "^1.1.1"
}
},
"int64-napi": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/int64-napi/-/int64-napi-1.0.1.tgz",
"integrity": "sha512-UPprIixcZdhdLobpKgHm6/HJD9VIR53JE5Fx93nJzgnX10hCxUd8nzOukxL2WDmjT2SWfz/VzDvk6qfPBLnEVg==",
"requires": {
"bindings": "^1.3.0"
}
},
"is-arguments": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz",
"integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA=="
},
"is-date-object": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz",
"integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY="
},
"is-regex": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz",
"integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=",
"requires": {
"has": "^1.0.1"
}
},
"jsonfile": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
"integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
"requires": {
"graceful-fs": "^4.1.6"
}
},
"minimist": {
"version": "0.0.8",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
},
"mkdirp": {
"version": "0.5.1",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
"integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
"requires": {
"minimist": "0.0.8"
}
},
"ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
},
"mz": {
"version": "2.7.0",
"resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz",
"integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==",
"requires": {
"any-promise": "^1.0.0",
"object-assign": "^4.0.1",
"thenify-all": "^1.0.0"
}
},
"nan": {
"version": "2.14.0",
"resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz",
"integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg=="
},
"next-tick": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz",
"integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw="
},
"object-assign": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
},
"object-is": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.1.tgz",
"integrity": "sha1-CqYOyZiaCz7Xlc9NBvYs8a1lObY="
},
"object-keys": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
"integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA=="
},
"rclnodejs": {
"version": "git://github.com/amikhalev/rclnodejs.git#0af0c513386c83df4310b6fadd00f1a4c4baf0d9",
"from": "git://github.com/amikhalev/rclnodejs.git#fix-multiple-ament-paths",
"requires": {
"bindings": "^1.2.1",
"commander": "^3.0.1",
"compare-versions": "^3.1.0",
"debug": "^4.0.1",
"deep-equal": "^1.0.1",
"dot": "^1.1.2",
"fs-extra": "^8.0.1",
"int64-napi": "^1.0.1",
"mkdirp": "^0.5.1",
"mz": "^2.6.0",
"nan": "^2.8.0",
"ref": "^1.3.4",
"ref-array": "^1.2.0",
"ref-struct": "^1.1.0",
"ros2-actionlibjs": "^0.x.1",
"uuid": "^3.2.1",
"walk": "^2.3.9"
}
},
"ref": {
"version": "1.3.5",
"resolved": "https://registry.npmjs.org/ref/-/ref-1.3.5.tgz",
"integrity": "sha512-2cBCniTtxcGUjDpvFfVpw323a83/0RLSGJJY5l5lcomZWhYpU2cuLdsvYqMixvsdLJ9+sTdzEkju8J8ZHDM2nA==",
"requires": {
"bindings": "1",
"debug": "2",
"nan": "2"
},
"dependencies": {
"debug": {
"version": "2.6.9",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"requires": {
"ms": "2.0.0"
}
},
"ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
}
}
},
"ref-array": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/ref-array/-/ref-array-1.2.0.tgz",
"integrity": "sha1-u6hwFS1O4KvtFCGwYjkvCwGEKQw=",
"requires": {
"array-index": "1",
"debug": "2",
"ref": "1"
},
"dependencies": {
"debug": {
"version": "2.6.9",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"requires": {
"ms": "2.0.0"
}
},
"ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
}
}
},
"ref-struct": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/ref-struct/-/ref-struct-1.1.0.tgz",
"integrity": "sha1-XV7mWtQc78Olxf60BYcmHkee3BM=",
"requires": {
"debug": "2",
"ref": "1"
},
"dependencies": {
"debug": {
"version": "2.6.9",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"requires": {
"ms": "2.0.0"
}
},
"ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
}
}
},
"regexp.prototype.flags": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.2.0.tgz",
"integrity": "sha512-ztaw4M1VqgMwl9HlPpOuiYgItcHlunW0He2fE6eNfT6E/CF2FtYi9ofOYe4mKntstYk0Fyh/rDRBdS3AnxjlrA==",
"requires": {
"define-properties": "^1.1.2"
}
},
"ros2-actionlibjs": {
"version": "0.0.3",
"resolved": "https://registry.npmjs.org/ros2-actionlibjs/-/ros2-actionlibjs-0.0.3.tgz",
"integrity": "sha512-3P0HPQad6Jwg82sGaRxwy/MyjSaxlSA4aIBtsjUxUB2POnij/v0U3PYBs4WSTA5WxckFDi1/TJR9wn4fQ3ae+g=="
},
"thenify": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.0.tgz",
"integrity": "sha1-5p44obq+lpsBCCB5eLn2K4hgSDk=",
"requires": {
"any-promise": "^1.0.0"
}
},
"thenify-all": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz",
"integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=",
"requires": {
"thenify": ">= 3.1.0 < 4"
}
},
"type": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz",
"integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg=="
},
"universalify": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
"integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg=="
},
"uuid": {
"version": "3.3.3",
"resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz",
"integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ=="
},
"walk": {
"version": "2.3.14",
"resolved": "https://registry.npmjs.org/walk/-/walk-2.3.14.tgz",
"integrity": "sha512-5skcWAUmySj6hkBdH6B6+3ddMjVQYH5Qy9QGbPmN8kVmLteXk+yVXg+yfk1nbX30EYakahLrr8iPcCxJQSCBeg==",
"requires": {
"foreachasync": "^3.0.0"
}
}
}
}

18
src/uaspire_ground/package.json

@ -0,0 +1,18 @@
{
"name": "uaspire_ground",
"version": "0.0.1",
"description": "UASPIRE Ground",
"main": "index.js",
"bin": {
"uaspire_ground": "./index.js"
},
"scripts": {
"postinstall": "node build.js",
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "Alex Mikhalev <alexmikhalevalex@gmail.com> (http://github.com/amikhalev)",
"license": "MIT",
"dependencies": {
"rclnodejs": "git://github.com/amikhalev/rclnodejs#fix-multiple-ament-paths"
}
}

26
src/uaspire_ground/package.xml

@ -0,0 +1,26 @@
<?xml version="1.0"?>
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>uaspire_ground</name>
<version>0.0.1</version>
<description>UASPIRE Ground</description>
<maintainer email="alex@amikhalev.com">Alex Mikhalev</maintainer>
<license>Apache License 2.0</license>
<author>Alex Mikhalev</author>
<buildtool_depend>ament_cmake</buildtool_depend>
<build_depend>rcl</build_depend>
<build_depend>rcutils</build_depend>
<build_depend>rmw</build_depend>
<build_depend>rosidl_generator_c</build_depend>
<exec_depend>rcl</exec_depend>
<exec_depend>rcutils</exec_depend>
<exec_depend>rmw</exec_depend>
<exec_depend>rosidl_generator_c</exec_depend>
<export>
<build_type>ament_cmake</build_type>
</export>
</package>
Loading…
Cancel
Save