LEADTOOLS Image File Support (Leadtools.Codecs assembly)
LEAD Technologies, Inc

DiskMemory Property

Example 





Gets or sets a value indicating whether to use disk memory when loading an image. .NET support WinRT support
Syntax
public bool DiskMemory {get; set;}
'Declaration
 
Public Property DiskMemory As Boolean
'Usage
 
Dim instance As CodecsLoadOptions
Dim value As Boolean
 
instance.DiskMemory = value
 
value = instance.DiskMemory
public bool DiskMemory {get; set;}
 get_DiskMemory();
set_DiskMemory(value);
public:
property bool DiskMemory {
   bool get();
   void set (    bool value);
}

Property Value

true to load the image using disk memory; false otherwise.
Remarks
When the value of this property is true, the image is stored in disk and not in conventional memory.
Example
 
Public Sub DiskMemoryExample()
      Dim codecs As RasterCodecs = New RasterCodecs()
      Dim fileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp")
      ' first, load the image using the default
      Dim image As RasterImage = codecs.Load(fileName)

      ' make sure the image uses conventional memory
      If image.IsConventionalMemory Then
         Console.WriteLine("This image uses conventional memory")
      Else
         Console.WriteLine("This should not happen!!")
      End If

      image.Dispose()

      ' now, load the same image this time using disk memory
      codecs.Options.Load.DiskMemory = True
      image = codecs.Load(fileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1)

      ' make sure the image uses unmanaged memory
      If image.IsDiskMemory Then
         Console.WriteLine("This image uses disk memory")
      Else
         Console.WriteLine("This should not happen!!")
      End If

      ' Clean up
      image.Dispose()
      codecs.Dispose()
   End Sub

Public NotInheritable Class LEAD_VARS
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
public void DiskMemoryExample()
     {
         RasterCodecs codecs = new RasterCodecs();
         string fileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp");
         // first, load the image using the default
         RasterImage image = codecs.Load(fileName);

         // make sure the image uses conventional memory
         if (image.IsConventionalMemory)
             Console.WriteLine("This image uses conventional memory");
         else
             Console.WriteLine("This should not happen!!");

         image.Dispose();

         // now, load the same image this time using disk memory
         codecs.Options.Load.DiskMemory = true;
         image = codecs.Load(fileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1);

         // make sure the image uses unmanaged memory
         if (image.IsDiskMemory)
             Console.WriteLine("This image uses disk memory");
         else
             Console.WriteLine("This should not happen!!");

         // Clean up
         image.Dispose();
         codecs.Dispose();
     }

static class LEAD_VARS
{
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
CodecsOptionsExamples.prototype.DiskMemoryExample = function ()
{
   Tools.SetLicense ( ) ;
   with (Leadtools) {
      with (Leadtools.Codecs) {
         var codecs = new RasterCodecs();
         var srcFileName = "Assets\\Image1.cmp";
         var image;
         // first, load the image using the default
         return Tools.AppInstallFolder().getFileAsync(srcFileName).then(function (loadFile) {
            return codecs.loadAsync(LeadStreamFactory.create(loadFile))
         })
         .then(function (img) {
            image = img;

            // make sure the image uses conventional memory
            if (image.isConventionalMemory)
               console.info("This image uses conventional memory");
            else
               console.info("This should not happen!!");

            image.close();

            // now, load the same image this time using disk memory
            codecs.options.load.diskMemory = true;
            return Tools.AppInstallFolder().getFileAsync(srcFileName)
         })
         .then(function (loadFile) {
            return codecs.loadAsync(LeadStreamFactory.create(loadFile))
         })
         .then(function (image) {
            // make sure the image uses unmanaged memory
            if (image.isDiskMemory)
               console.info("This image uses disk memory");
            else
               console.info("This should not happen!!");

            // Clean up
            image.close();
            codecs.close();
         });
      }
   }
}
[TestMethod]
public async Task DiskMemoryExample()
{
   RasterCodecs codecs = new RasterCodecs();
   string srcFileName = @"Assets\Image1.cmp";
   // first, load the image using the default
   StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
   RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));
   // make sure the image uses conventional memory
   if (image.IsConventionalMemory)
      Debug.WriteLine("This image uses conventional memory");
   else
      Debug.WriteLine("This should not happen!!");

   image.Dispose();

   // now, load the same image this time using disk memory
   codecs.Options.Load.DiskMemory = true;
   loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
   image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));

   // make sure the image uses unmanaged memory
   if (image.IsDiskMemory)
      Debug.WriteLine("This image uses disk memory");
   else
      Debug.WriteLine("This should not happen!!");

   // Clean up
   image.Dispose();
   codecs.Dispose();
}
Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also

Reference

CodecsLoadOptions Class
CodecsLoadOptions Members

 

 


Products | Support | Contact Us | Copyright Notices

© 2006-2012 All Rights Reserved. LEAD Technologies, Inc.