1/*-
2 * See the file LICENSE for redistribution information.
3 *
4 * Copyright (c) 2009 Oracle.  All rights reserved.
5 *
6 */
7using System;
8using System.Collections.Generic;
9using System.Text;
10
11namespace BerkeleyDB {
12    /// <summary>
13    /// Statistical information about a QueueDatabase
14    /// </summary>
15    public class QueueStats {
16        private Internal.QueueStatStruct st;
17        internal QueueStats(Internal.QueueStatStruct stats) {
18            st = stats;
19        }
20
21        /// <summary>
22        /// Data pages.
23        /// </summary>
24        public uint DataPages { get { return st.qs_pages; } }
25        /// <summary>
26        /// Bytes free in data pages.
27        /// </summary>
28        public uint DataPagesBytesFree { get { return st.qs_pgfree; } }
29        /// <summary>
30        /// First not deleted record.
31        /// </summary>
32        public uint FirstRecordNumber { get { return st.qs_first_recno; } }
33        /// <summary>
34        /// Magic number.
35        /// </summary>
36        public uint MagicNumber { get { return st.qs_magic; } }
37        /// <summary>
38        /// Metadata flags.
39        /// </summary>
40        public uint MetadataFlags { get { return st.qs_metaflags; } }
41        /// <summary>
42        /// Next available record number.
43        /// </summary>
44        public uint NextRecordNumber { get { return st.qs_cur_recno; } }
45        /// <summary>
46        /// Number of data items.
47        /// </summary>
48        public uint nData { get { return st.qs_ndata; } }
49        /// <summary>
50        /// Number of unique keys.
51        /// </summary>
52        public uint nKeys { get { return st.qs_nkeys; } }
53        /// <summary>
54        /// Page size.
55        /// </summary>
56        public uint PageSize { get { return st.qs_pagesize; } }
57        /// <summary>
58        /// Pages per extent.
59        /// </summary>
60        public uint PagesPerExtent { get { return st.qs_extentsize; } }
61        /// <summary>
62        /// Fixed-length record length.
63        /// </summary>
64        public uint RecordLength { get { return st.qs_re_len; } }
65        /// <summary>
66        /// Fixed-length record pad.
67        /// </summary>
68        public uint RecordPadByte { get { return st.qs_re_pad; } }
69        /// <summary>
70        /// Version number.
71        /// </summary>
72        public uint Version { get { return st.qs_version; } }
73    }
74}