Пример #1
0
        private void SendFileToRos(string rosPackagePath, byte[] fileContents)
        {
            RosSocket.CallService <file_server.SaveBinaryFileRequest, file_server.SaveBinaryFileResponse>(
                "/file_server/save_file",
                SaveFileResponseHandler,
                new file_server.SaveBinaryFileRequest(rosPackagePath, fileContents));

            FilesBeingProcessed.Add(rosPackagePath, false);
        }
        private List <ServiceReceiver <file_server.GetBinaryFileRequest, file_server.GetBinaryFileResponse> > RequestResourceFiles(List <Uri> resourceFileUris)
        {
            var serviceReceivers = new List <ServiceReceiver <file_server.GetBinaryFileRequest, file_server.GetBinaryFileResponse> >();

            foreach (Uri resourceFilePath in resourceFileUris)
            {
                if (!FilesBeingProcessed.ContainsKey(resourceFilePath.ToString()))
                {
                    FilesBeingProcessed.Add(resourceFilePath.ToString(), false);
                    serviceReceivers.Add(
                        new ServiceReceiver <file_server.GetBinaryFileRequest, file_server.GetBinaryFileResponse>(
                            RosSocket,
                            "/file_server/get_file",
                            new file_server.GetBinaryFileRequest(resourceFilePath.ToString()),
                            GetLocalFilename(resourceFilePath)));
                }
            }
            return(serviceReceivers);
        }