public void UpdateLinkUpBindings() { if (Node != null) { _CameraEventLabel = Node.GetLabelByName <LinkUpEventLabel>("firefly/computer_vision/camera_event"); _ImuEventLabel = Node.GetLabelByName <LinkUpEventLabel>("firefly/computer_vision/imu_event"); _CameraImuEventLabel = Node.GetLabelByName <LinkUpEventLabel>("firefly/computer_vision/camera_imu_event"); _SlamMapEventLabel = Node.GetLabelByName <LinkUpEventLabel>("firefly/computer_vision/slam_map_event"); _ExposureLabel = Node.GetLabelByName <LinkUpPropertyLabel <Int16> >("firefly/computer_vision/camera_exposure"); _ReplayDataSend = Node.GetLabelByName <LinkUpFunctionLabel>("firefly/computer_vision/replay_data"); _GetRemoteChessboardCornerLabel = Node.GetLabelByName <LinkUpFunctionLabel>("firefly/computer_vision/get_chessboard_corner"); _UpdateSettingsLabel = Node.GetLabelByName <LinkUpFunctionLabel>("firefly/computer_vision/update_settings"); _AccelerometerScaleLabel = Node.GetLabelByName <LinkUpPropertyLabel <Double> >("firefly/computer_vision/acc_scale"); _GyroscopeScaleLabel = Node.GetLabelByName <LinkUpPropertyLabel <Double> >("firefly/computer_vision/gyro_scale"); _TemperatureScaleLabel = Node.GetLabelByName <LinkUpPropertyLabel <Double> >("firefly/computer_vision/temp_scale"); _TemperatureOffsetLabel = Node.GetLabelByName <LinkUpPropertyLabel <Double> >("firefly/computer_vision/temp_offset"); _RecordRemoteLabel = Node.GetLabelByName <LinkUpPropertyLabel <Boolean> >("firefly/computer_vision/record_remote"); _ImuFilterALabel = Node.GetLabelByName <LinkUpPropertyLabel_Binary>("firefly/computer_vision/imu_filter_a"); _ImuFilterBLabel = Node.GetLabelByName <LinkUpPropertyLabel_Binary>("firefly/computer_vision/imu_filter_b"); _ImuDerivedEventLabel = Node.GetLabelByName <LinkUpEventLabel>("firefly/computer_vision/imu_derived_event"); _SlamStatusEventLabel = Node.GetLabelByName <LinkUpEventLabel>("firefly/computer_vision/slam_status_event"); _SlamChangeStatusLabel = Node.GetLabelByName <LinkUpFunctionLabel>("firefly/computer_vision/slam_change_status"); _SlamReproducibleExecutionLabel = Node.GetLabelByName <LinkUpPropertyLabel <Boolean> >("firefly/computer_vision/slam_reproducible_execution"); _TCamImuLabel = Node.GetLabelByName <LinkUpPropertyLabel_Binary>("firefly/computer_vision/calibration_T_cam_imu"); _RAccGyroLabel = Node.GetLabelByName <LinkUpPropertyLabel_Binary>("firefly/computer_vision/calibration_R_acc_gyro"); _MInvGyroLabel = Node.GetLabelByName <LinkUpPropertyLabel_Binary>("firefly/computer_vision/calibration_M_inv_gyro"); _MInvAccLabel = Node.GetLabelByName <LinkUpPropertyLabel_Binary>("firefly/computer_vision/calibration_M_inv_acc"); _GyroscopeNoiseLabel = Node.GetLabelByName <LinkUpPropertyLabel <Double> >("firefly/computer_vision/calibration_gyro_noise"); _GyroscopeWalkLabel = Node.GetLabelByName <LinkUpPropertyLabel <Double> >("firefly/computer_vision/calibration_gyro_walk"); _AccelerometerNoiseLabel = Node.GetLabelByName <LinkUpPropertyLabel <Double> >("firefly/computer_vision/calibration_acc_noise"); _AccelerometerWalkLabel = Node.GetLabelByName <LinkUpPropertyLabel <Double> >("firefly/computer_vision/calibration_acc_walk"); _EnableVisualInertialLabel = Node.GetLabelByName <LinkUpPropertyLabel <Boolean> >("firefly/computer_vision/slam_enable_visual_inertial"); _ImuDerivedEventLabel.Fired += _ImuFilterEvent_Fired; _SlamStatusEventLabel.Fired += _SlamStatusEventLabel_Fired; _CameraEventLabel.Fired += _CameraEventLabel_Fired; _ImuEventLabel.Fired += _CameraEventLabel_Fired; _CameraImuEventLabel.Fired += _CameraEventLabel_Fired; _SlamMapEventLabel.Fired += _SlamMapEventLabel_Fired; Update(); } }
private static void Main(string[] args) { using (LinkUpTcpClientConnector connector = new LinkUpTcpClientConnector(IPAddress.Parse("127.0.0.1"), 3000)) //using (LinkUpTcpClientConnector connector = new LinkUpTcpClientConnector(IPAddress.Parse("127.0.0.1"), 3000)) { connector.ReveivedPacket += ClientToServer_ReveivedPacket; connector.SentPacket += ClientToServer_SentPacket; connector.MetricUpdate += Connector_MetricUpdate; connector.ConnectivityChanged += Connector_ConnectivityChanged; node = new LinkUpNode(); node.Name = "leaf"; node.AddSubNode(connector); LinkUpEventLabel eventLabel = node.GetLabelByName <LinkUpEventLabel>("leaf/test/label_event"); func = node.GetLabelByName <LinkUpFunctionLabel>("leaf/test/label_function"); func.Return += Func_Return; eventLabel.Subscribe(); eventLabel.Fired += Program_Fired; Console.Read(); connector.Dispose(); } }
private static void Func_Return(LinkUpFunctionLabel label, byte[] data) { }