public struct GlobalMemoryThresholds
Public Structure GlobalMemoryThresholds
@interface GlobalMemoryThresholds : NSObject
public class GlobalMemoryThresholds
public: struct GlobalMemoryThresholds
Use RasterDefaults.GetGlobalMemoryThresholds and RasterDefaults.SetGlobalMemoryThresholds to get or set the conventional memory restrictions used when allocating new RasterImage objects.
GlobalMemoryThresholds contains the following members:
Member | Description |
---|---|
MaximumConventionalMemory | Maximum size of continuous conventional memory in bytes to use when creating a RasterImage object. |
using Leadtools;
using Leadtools.Codecs;
public static void MaximumConventionalMemoryTest()
{
Console.WriteLine("maximumConventionalMemoryTest");
string imageFileName = @"C:\LEADTOOLS21\Resources\Images\Leadtools.pdf";
long size = 0;
using (var rasterCodecs = new RasterCodecs())
{
using (var rasterImage = rasterCodecs.Load(imageFileName, 1))
{
Console.WriteLine("loaded, size:{0} Conventional:{1} Disk:{2}",
rasterImage.DataSize, rasterImage.IsConventionalMemory, rasterImage.IsDiskMemory);
Debug.Assert(rasterImage.IsConventionalMemory);
Debug.Assert(!rasterImage.IsDiskMemory);
size = rasterImage.DataSize;
}
// Set maximum conventional size to half of the bitmap's and re-check. Should be disk
GlobalMemoryThresholds thresholds = RasterDefaults.GetGlobalMemoryThresholds();
Console.WriteLine("Original GlobalMemoryThresholds.MaximumConventionalMemory = {0}", thresholds.MaximumConventionalMemory);
thresholds.MaximumConventionalMemory = size / 2;
RasterDefaults.SetGlobalMemoryThresholds(thresholds);
thresholds = RasterDefaults.GetGlobalMemoryThresholds();
Console.WriteLine("New GlobalMemoryThresholds.MaximumConventionalMemory = {0}", thresholds.MaximumConventionalMemory);
using (var rasterImage = rasterCodecs.Load(imageFileName, 1))
{
Console.WriteLine("loaded, size:{0} Conventional:{1} Disk:{2}",
rasterImage.DataSize, rasterImage.IsConventionalMemory, rasterImage.IsDiskMemory);
Debug.Assert(!rasterImage.IsConventionalMemory);
Debug.Assert(rasterImage.IsDiskMemory);
}
// Now set to -1 and try to create a 20 by 20 at 32-BPP inch bitmap, should be disk
// Reset
RasterDefaults.SetGlobalMemoryThresholds(GlobalMemoryThresholds.Default);
thresholds = RasterDefaults.GetGlobalMemoryThresholds();
Console.WriteLine("Original GlobalMemoryThresholds.MaximumConventionalMemory = {0}", thresholds.MaximumConventionalMemory);
thresholds.MaximumConventionalMemory = -1;
RasterDefaults.SetGlobalMemoryThresholds(thresholds);
thresholds = RasterDefaults.GetGlobalMemoryThresholds();
Console.WriteLine("New GlobalMemoryThresholds.MaximumConventionalMemory = {0}", thresholds.MaximumConventionalMemory);
using (var rasterImage = new RasterImage(
RasterMemoryFlags.Conventional,
20 * 300,
20 * 300,
32,
RasterByteOrder.Bgr,
RasterViewPerspective.TopLeft,
null,
null,
0))
{
Console.WriteLine("created, size:{0} Conventional:{1} Disk:{2}",
rasterImage.DataSize, rasterImage.IsConventionalMemory, rasterImage.IsDiskMemory);
Debug.Assert(!rasterImage.IsConventionalMemory);
Debug.Assert(rasterImage.IsDiskMemory);
}
// finally create 8.5 by 11 at 300 DPI, should be conv
using (var rasterImage = new RasterImage(
RasterMemoryFlags.Conventional,
(int)(8.5 * 300),
11 * 300,
32,
RasterByteOrder.Bgr,
RasterViewPerspective.TopLeft,
null,
null,
0))
{
Console.WriteLine("created, size:{0} Conventional:{1} Disk:{2}",
rasterImage.DataSize, rasterImage.IsConventionalMemory, rasterImage.IsDiskMemory);
Debug.Assert(rasterImage.IsConventionalMemory);
Debug.Assert(!rasterImage.IsDiskMemory);
}
}
// Reset
RasterDefaults.SetGlobalMemoryThresholds(GlobalMemoryThresholds.Default);
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Public Shared Sub MaximumConventionalMemoryTest()
Console.WriteLine("maximumConventionalMemoryTest")
Dim imageFileName As String = "C:\LEADTOOLS21\Resources\Images\Leadtools.pdf"
Dim size As Long = 0
Using rasterCodecs As New RasterCodecs()
Using rasterImage As RasterImage = rasterCodecs.Load(imageFileName, 1)
Console.WriteLine("loaded, size:{0} Conventional:{1} Disk:{2}",
rasterImage.DataSize, rasterImage.IsConventionalMemory, rasterImage.IsDiskMemory)
Debug.Assert(rasterImage.IsConventionalMemory)
Debug.Assert(Not rasterImage.IsDiskMemory)
size = rasterImage.DataSize
End Using
' Set maximum conventional size to half of the bitmap's and re-check. Should be disk
Dim thresholds As GlobalMemoryThresholds = RasterDefaults.GetGlobalMemoryThresholds()
Console.WriteLine("Original GlobalMemoryThresholds.MaximumConventionalMemory = {0}", thresholds.MaximumConventionalMemory)
thresholds.MaximumConventionalMemory = CType(size / 2, Long)
RasterDefaults.SetGlobalMemoryThresholds(thresholds)
thresholds = RasterDefaults.GetGlobalMemoryThresholds()
Console.WriteLine("New GlobalMemoryThresholds.MaximumConventionalMemory = {0}", thresholds.MaximumConventionalMemory)
Using rasterImage As RasterImage = rasterCodecs.Load(imageFileName, 1)
Console.WriteLine("loaded, size:{0} Conventional:{1} Disk:{2}",
rasterImage.DataSize, rasterImage.IsConventionalMemory, rasterImage.IsDiskMemory)
Debug.Assert(Not rasterImage.IsConventionalMemory)
Debug.Assert(rasterImage.IsDiskMemory)
End Using
' Now set to -1 And try to create a 20 by 20 at 32-BPP inch bitmap, should be disk
' Reset
RasterDefaults.SetGlobalMemoryThresholds(GlobalMemoryThresholds.Default)
thresholds = RasterDefaults.GetGlobalMemoryThresholds()
Console.WriteLine("Original GlobalMemoryThresholds.MaximumConventionalMemory = {0}", thresholds.MaximumConventionalMemory)
thresholds.MaximumConventionalMemory = -1
RasterDefaults.SetGlobalMemoryThresholds(thresholds)
thresholds = RasterDefaults.GetGlobalMemoryThresholds()
Console.WriteLine("New GlobalMemoryThresholds.MaximumConventionalMemory = {0}", thresholds.MaximumConventionalMemory)
Using rasterImage As New RasterImage(
RasterMemoryFlags.Conventional,
20 * 300,
20 * 300,
32,
RasterByteOrder.Bgr,
RasterViewPerspective.TopLeft,
Nothing,
Nothing,
0)
Console.WriteLine("created, size:{0} Conventional:{1} Disk:{2}",
rasterImage.DataSize, rasterImage.IsConventionalMemory, rasterImage.IsDiskMemory)
Debug.Assert(Not rasterImage.IsConventionalMemory)
Debug.Assert(rasterImage.IsDiskMemory)
End Using
' finally create 8.5 by 11 at 300 DPI, should be conv
Using rasterImage As New RasterImage(
RasterMemoryFlags.Conventional,
CInt(8.5 * 300),
11 * 300,
32,
RasterByteOrder.Bgr,
RasterViewPerspective.TopLeft,
Nothing,
Nothing,
0)
Console.WriteLine("created, size:{0} Conventional:{1} Disk:{2}",
rasterImage.DataSize, rasterImage.IsConventionalMemory, rasterImage.IsDiskMemory)
Debug.Assert(rasterImage.IsConventionalMemory)
Debug.Assert(Not rasterImage.IsDiskMemory)
End Using
End Using
' Reset
RasterDefaults.SetGlobalMemoryThresholds(GlobalMemoryThresholds.Default)
End Sub
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document