private static DisplaySet CreateDisplaySet(IEnumerable <ImageSop> sops)
        {
            var descriptor = new XDisplaySetDescriptor(CollectionUtils.FirstElement(sops).DataSource);
            var displaySet = new DisplaySet(descriptor);

            foreach (var sop in sops)
            {
                foreach (var image in PresentationImageFactory.Create(sop))
                {
                    if (image is IVoiLutProvider)
                    {
                        ((IVoiLutProvider)image).VoiLutManager.InstallVoiLut(new IdentityVoiLinearLut());
                    }
                    displaySet.PresentationImages.Add(image);
                }
            }
            return(displaySet);
        }
 /// <summary>
 /// Cloning constructor.
 /// </summary>
 /// <param name="source">The source object from which to clone.</param>
 /// <param name="context">The cloning context object.</param>
 protected XDisplaySetDescriptor(XDisplaySetDescriptor source, ICloningContext context)
 {
     context.CloneFields(source, this);
 }