public static IpcImageFits LoadFromFitsDataSingleChannel(FitsData fitsData, int channel) { var ipcImage = new IpcImageFits(fitsData, channel); fitsData.CopyImageSingleChannel(ipcImage.DataPtr, channel); return(ipcImage); }
//TODO: Make public when interleave is implemented internal static IpcImageFits LoadFromFileInterleave(Uri uri) { var fitsData = new FitsData(uri); if (fitsData.Channels == 1) { return(LoadFromFileSingleChannel(uri, 0)); } var ipcImage = new IpcImageFits(fitsData, -1); fitsData.CopyImageInterleave(ipcImage.DataPtr); return(ipcImage); }
public static List <IpcImageFits> LoadFromFitsDataMultiChannel(FitsData fitsData) { var ipcImageList = new List <IpcImageFits>(); var ipcImagePtrList = new List <IntPtr>(); for (var i = 0; i < fitsData.Channels; i++) { var ipcImage = new IpcImageFits(fitsData, i); fitsData.CopyImageSingleChannel(ipcImage.DataPtr, i); ipcImageList.Add(ipcImage); } return(ipcImageList); }
public DiagnosticsClass(FitsData fitsData) { _fitsData = fitsData; }
protected IpcImageFits(FitsData fitsData) : base(fitsData.Width * fitsData.Channels, fitsData.Height, fitsData.IpcPixelFormat, 0) { FitsData = fitsData; ActiveChannel = -1; }
//protected IpcImageFits(int width, int height, IpcPixelFormatDefault pixelFormatDefault, int stride = 0) : base( width, height, pixelFormatDefault, stride) { } protected IpcImageFits(FitsData fitsData, int channel) : base(fitsData.Width, fitsData.Height, fitsData.IpcPixelFormat, 0) { FitsData = fitsData; ActiveChannel = channel; }