protected override void Execute(CodeActivityContext context) { ValidateInputArguments(context); var processInvokeWrapper = new RunProcessWrapper(FileName.Get(context), Arguments.Get(context), WorkingDirectory.Get(context), CaptureOutput.Get(context), WaitForExit.Get(context), WaitForExitTimeout.Get(context), KillAtTimeout.Get(context)); processInvokeWrapper.StartProcess(); ProcessId.Set(context, processInvokeWrapper.ProcessId); Finished.Set(context, processInvokeWrapper.Finished); Output.Set(context, processInvokeWrapper.StandardOutput); Error.Set(context, processInvokeWrapper.StandardError); ExitCode.Set(context, processInvokeWrapper.ExitCode); }
CommandResult ExecuteCommandInternal(string arguments, out string result, ICommandOutput output = null) { var environmentVar = defaultEnvironmentVariables; if (environmentVariables != null) { environmentVar.MergeDictionaries(environmentVariables); } var commandLineInvocation = new CommandLineInvocation(TerraformExecutable, arguments, TemplateDirectory, environmentVar); var commandOutput = new CaptureOutput(output ?? new ConsoleCommandOutput()); var cmd = new CommandLineRunner(commandOutput); Log.Info(commandLineInvocation.ToString()); var commandResult = cmd.Execute(commandLineInvocation); result = String.Join("\n", commandOutput.Infos); return(commandResult); }
public async Task <NSData> CapturePhoto() { var videoConnection = CaptureOutput.ConnectionFromMediaType(AVMediaType.Video); var sampleBuffer = await CaptureOutput.CaptureStillImageTaskAsync(videoConnection); var jpegData = AVCaptureStillImageOutput.JpegStillToNSData(sampleBuffer); var image = UIImage.LoadFromData(jpegData); CGImage imgRed = image.CGImage; UIDevice device = UIDevice.CurrentDevice; UIDeviceOrientation orientation = device.Orientation; AVCaptureConnection previewLayerConnection = this.previewLayer.Connection; var photo = new UIImage(jpegData); if (previewLayerConnection.SupportsVideoOrientation) { if (orientation == UIDeviceOrientation.Portrait) { UpdatePreviewLayer(previewLayerConnection, AVCaptureVideoOrientation.Portrait); NSData ret = photo.AsJPEG(); return(ret);; } switch (orientation) { case UIDeviceOrientation.PortraitUpsideDown: photo = new UIImage(image.CGImage, 1.0f, UIImageOrientation.Up); // UpdatePreviewLayer(previewLayerConnection, // AVCaptureVideoOrientation.Portrait); break; case UIDeviceOrientation.LandscapeLeft: photo = new UIImage(image.CGImage, 1.0f, UIImageOrientation.Up); // UpdatePreviewLayer(previewLayerConnection, // AVCaptureVideoOrientation.Portrait); break; case UIDeviceOrientation.LandscapeRight: photo = new UIImage(image.CGImage, 1.0f, UIImageOrientation.Down); // UpdatePreviewLayer(previewLayerConnection, // AVCaptureVideoOrientation.Portrait); break; case UIDeviceOrientation.Portrait: // photo = new UIImage(image.CGImage, 1.0f, UIImageOrientation.Up); // UpdatePreviewLayer(previewLayerConnection, // AVCaptureVideoOrientation.Portrait); break; default: //UpdatePreviewLayer(previewLayerConnection, // AVCaptureVideoOrientation.Portrait); //photo = new UIImage(image.CGImage, 1.0f, UIImageOrientation.Up); break; } } LayoutSubviews(); NSData retrunObj = photo.AsJPEG(); return(retrunObj); // var photo = new UIImage(jpegData); // var rotatedPhoto = RotateImage(photo, 180f); // var jpegImageAsNsData = AVCaptureStillImageOutput.JpegStillToNSData(sampleBuffer); // return jpegImageAsNsData; /* CALayer layer = new CALayer * { * //ContentsGravity = "kCAGravityResizeAspect", * //ContentsRect = rect, * //GeometryFlipped = true, * ContentsScale = 1.0f, * Frame = Bounds, * Contents = rotatedPhoto.CGImage //Contents = photo.CGImage, * }; * layer.Frame = previewLayer.Frame; * * var image= ImageFromLayer(layer); * NSData imageData = image.AsJPEG(); * return imageData; * /*var t=CIIma.LoadFromData() * image.LoadData(NSData.FromArray(sampleBuffer)); * var jpegImageAsNsData = AVCaptureStillImageOutput.JpegStillToNSData(image.AsJPEG()); * return jpegImageAsNsData; * ImageFromLayer(layer).AsJPEG().AsStream()); * // MainPage.UpdateImage(ImageFromLayer(layer).AsJPEG().AsStream());*/ }