Name: csapi-tizenfx
Summary: Assemblies of Tizen .NET
-Version: 4.0.0.172
+Version: 4.0.0.175
Release: 1
Group: Development/Libraries
License: Apache-2.0
using Tizen.Multimedia.Vision;
/// <summary>
-/// Interop APIs
+/// Interop APIs.
/// </summary>
internal static partial class Interop
{
/// <summary>
- /// Interop for media vision APIs
+ /// Interop for Media Vision APIs.
/// </summary>
internal static partial class MediaVision
{
/// <summary>
- /// Interop for barcode detector APIs
+ /// Interop for Barcode Detector APIs.
/// </summary>
internal static partial class BarcodeDetector
{
}
/// <summary>
- /// Interop for barcode generator APIs
+ /// Interop for Barcode Generator APIs.
/// </summary>
internal static partial class BarcodeGenerator
{
using Tizen.Multimedia.Vision;
/// <summary>
-/// Interop APIs
+/// Interop APIs.
/// </summary>
internal static partial class Interop
{
}
/// <summary>
- /// Interop for media vision APIs
+ /// Interop for Media Vision APIs.
/// </summary>
internal static partial class MediaVision
{
}
/// <summary>
- /// Interop for media vision source APIs
+ /// Interop for Media Vision Source APIs.
/// </summary>
internal static partial class MediaSource
{
}
/// <summary>
- /// Interop for engine configuration APIs
+ /// Interop for Engine Configuration APIs.
/// </summary>
internal static partial class EngineConfig
{
using Tizen.Multimedia.Vision;
/// <summary>
-/// Interop APIs
+/// Interop APIs.
/// </summary>
internal static partial class Interop
{
/// <summary>
- /// Interop for media vision APIs
+ /// Interop for Media Vision APIs.
/// </summary>
internal static partial class MediaVision
{
/// <summary>
- /// Interop for Face APIs
+ /// Interop for Face APIs.
/// </summary>
internal static partial class Face
{
}
/// <summary>
- /// Interop for FaceRecognitionModel APIs
+ /// Interop for FaceRecognitionModel APIs.
/// </summary>
internal static partial class FaceRecognitionModel
{
}
/// <summary>
- /// Interop for FaceTrackingModel APIs
+ /// Interop for FaceTrackingModel APIs.
/// </summary>
internal static partial class FaceTrackingModel
{
using Tizen.Multimedia.Vision;
/// <summary>
-/// Interop APIs
+/// Interop APIs.
/// </summary>
internal static partial class Interop
{
/// <summary>
- /// Interop for Media vision APIs
+ /// Interop for Media Vision APIs.
/// </summary>
internal static partial class MediaVision
{
/// <summary>
- /// Interop for Image APIs
+ /// Interop for Image APIs.
/// </summary>
internal static partial class Image
{
}
/// <summary>
- /// Interop for ImageTrackingModel APIs
+ /// Interop for ImageTrackingModel APIs.
/// </summary>
internal static partial class ImageTrackingModel
{
using Tizen.Multimedia.Vision;
/// <summary>
-/// Interop APIs
+/// Interop APIs.
/// </summary>
internal static partial class Interop
{
/// <summary>
- /// Interop for media vision APIs
+ /// Interop for Media Vision APIs.
/// </summary>
internal static partial class MediaVision
{
/// <summary>
- /// Interop for surveillance APIs
+ /// Interop for Surveillance APIs.
/// </summary>
internal static partial class Surveillance
{
}
/// <summary>
- /// The quadrangle location of detected barcode.
+ /// The quadrangle location of the detected barcode.
/// </summary>
/// <since_tizen> 3</since_tizen>
public Quadrangle Region { get; }
/// <summary>
- /// The decoded message of barcode.
+ /// The decoded message of the barcode.
/// </summary>
/// <since_tizen> 3</since_tizen>
public string Message { get; }
/// <summary>
- /// The type of detected barcode.
+ /// The type of the detected barcode.
/// </summary>
/// <since_tizen> 3</since_tizen>
public BarcodeType Type { get; }
/// Represents a configuration of <see cref="BarcodeDetector"/>.
/// </summary>
/// <seealso cref="BarcodeDetector"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class BarcodeDetectionConfiguration : EngineConfiguration
{
private const string KeyAttrTarget = "MV_BARCODE_DETECT_ATTR_TARGET";
/// Initializes a new instance of the <see cref="BarcodeDetectionConfiguration"/> class.
/// </summary>
/// <exception cref="System.NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public BarcodeDetectionConfiguration() : base("barcode_detection")
{
}
/// </summary>
/// <exception cref="System.ArgumentException"><paramref name="value"/> is not valid.</exception>
/// <exception cref="System.ObjectDisposedException">The <see cref="BarcodeDetectionConfiguration"/> already has been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public BarcodeDetectionTarget Target
{
get
/// <summary>
/// Specifies the target of <see cref="BarcodeDetector"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public enum BarcodeDetectionTarget
{
/// <summary>
/// 1D and 2D.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
All,
/// <summary>
/// 1D barcode only.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Barcode1D,
/// <summary>
/// 2D barcode only.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Barcode2D,
}
}
/// <summary>
/// Provides the ability to detect barcodes on image sources.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static class BarcodeDetector
{
/// <summary>
- /// Detects barcodes on source and reads message from it.
+ /// Detects barcodes on the source and reads the message from it.
/// </summary>
/// <param name="source">The <see cref="MediaVisionSource"/> instance.</param>
/// <param name="roi">Region of interest - rectangular area on the source which will be used for
}
/// <summary>
- /// Detects barcodes on source and reads message from it with <see cref="BarcodeDetectionConfiguration"/>.
+ /// Detects barcodes on the source and reads the message from it with <see cref="BarcodeDetectionConfiguration"/>.
/// </summary>
/// <param name="source">The <see cref="MediaVisionSource"/> instance.</param>
/// <param name="roi">Region of interest - rectangular area on the source which will be used for
/// Represents a configuration of <see cref="BarcodeGenerator"/> instances.
/// </summary>
/// <seealso cref="BarcodeGenerator"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class BarcodeGenerationConfiguration : EngineConfiguration
{
private const string KeyTextAttr = "MV_BARCODE_GENERATE_ATTR_TEXT";
/// Initializes a new instance of the <see cref="BarcodeGenerationConfiguration"/> class.
/// </summary>
/// <exception cref="System.NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public BarcodeGenerationConfiguration() : base("barcode_generation")
{
}
/// </summary>
/// <exception cref="System.ArgumentException"><paramref name="value"/> is not valid.</exception>
/// <exception cref="ObjectDisposedException">The <see cref="BarcodeGenerationConfiguration"/> already has been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public Visibility TextVisibility
{
get
/// The alpha value of the color will be ignored.
/// </remarks>
/// <exception cref="ObjectDisposedException">The <see cref="BarcodeGenerationConfiguration"/> already has been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public Color ForegroundColor
{
get
/// The alpha value of the color will be ignored.
/// </remarks>
/// <exception cref="ObjectDisposedException">The <see cref="BarcodeGenerationConfiguration"/> already has been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public Color BackgroundColor
{
get
{
/// <summary>
/// Provides the ability to generate barcodes and QR codes.
- /// Different encoding types <see cref="QrMode"/> , error correction codes <see cref="ErrorCorrectionLevel"/>
+ /// Different encoding types <see cref="QrMode"/>, error correction codes <see cref="ErrorCorrectionLevel"/>,
/// and code versions are supported for QRCodes.
/// </summary>
/// <seealso cref="BarcodeGenerationConfiguration"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static class BarcodeGenerator
{
private const int NoneErrorCorrection = (int)ErrorCorrectionLevel.High + 1;
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <seealso cref="QrMode"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static MediaVisionSource GenerateSource(string message, QrConfiguration qrConfig)
{
return GenerateSource(message, qrConfig, null);
/// </exception>
/// <exception cref="ObjectDisposedException"><paramref name="config"/> already has been disposed of.</exception>
/// <seealso cref="QrMode"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static MediaVisionSource GenerateSource(string message, QrConfiguration qrConfig,
BarcodeGenerationConfiguration config)
{
/// <paramref name="message"/> contains illegal characters.
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static MediaVisionSource GenerateSource(string message, BarcodeType type)
{
return GenerateSource(message, type, null);
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="ObjectDisposedException"><paramref name="config"/> already has been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static MediaVisionSource GenerateSource(string message, BarcodeType type,
BarcodeGenerationConfiguration config)
{
/// <exception cref="UnauthorizedAccessException">No permission to write a file.</exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <seealso cref="QrMode"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static void GenerateImage(string message, QrConfiguration qrConfig,
BarcodeImageConfiguration imageConfig)
{
/// <see cref="BarcodeGenerationConfiguration.TextVisibility"/> is the <see cref="Visibility.Visible"/>.
/// </exception>
/// <exception cref="ObjectDisposedException"><paramref name="config"/> already has been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static void GenerateImage(string message, QrConfiguration qrConfig,
BarcodeImageConfiguration imageConfig, BarcodeGenerationConfiguration config)
{
/// </exception>
/// <exception cref="UnauthorizedAccessException">No permission to write a file.</exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static void GenerateImage(string message, BarcodeType type, BarcodeImageConfiguration imageConfig)
{
GenerateImage(message, type, imageConfig, null);
/// <exception cref="UnauthorizedAccessException">No permission to write a file.</exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="ObjectDisposedException"><paramref name="config"/> already has been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static void GenerateImage(string message,
BarcodeType type, BarcodeImageConfiguration imageConfig, BarcodeGenerationConfiguration config)
{
/// <summary>
/// Represents a configuration for the image to be generated by <see cref="BarcodeGenerator"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class BarcodeImageConfiguration
{
/// <summary>
/// Initializes a new instance of the <see cref="BarcodeImageConfiguration"/> class.
/// </summary>
/// <remarks>
- /// The mediastorage privilege(http://tizen.org/privilege/mediastorage) is needed if image path is relevant to media storage.\n
- /// The externalstorage privilege(http://tizen.org/privilege/externalstorage) is needed if image path is relevant to external storage.
+ /// The mediastorage privilege (http://tizen.org/privilege/mediastorage) is needed if the image path is relevant to media storage.\n
+ /// The externalstorage privilege (http://tizen.org/privilege/externalstorage) is needed if the image path is relevant to external storage.
/// </remarks>
/// <param name="size">The <see cref="Size"/> of the generated image.</param>
/// <param name="path">The path to the file to be generated.</param>
/// <code>
/// BarcodeImageConfiguration imageConfig = new BarcodeImageConfiguration(new Size(500, 400), "/opt/usr/test-barcode-generate-new", BarcodeImageFormat.JPG);
/// </code>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public BarcodeImageConfiguration(Size size, string path, BarcodeImageFormat imageFormat)
{
if (size.Width <= 0)
/// Initializes a new instance of the <see cref="BarcodeImageConfiguration"/> class.
/// </summary>
/// <remarks>
- /// The mediastorage privilege(http://tizen.org/privilege/mediastorage) is needed if image path is relevant to media storage.\n
- /// The externalstorage privilege(http://tizen.org/privilege/externalstorage) is needed if image path is relevant to external storage.
+ /// The mediastorage privilege (http://tizen.org/privilege/mediastorage) is needed if the image path is relevant to media storage.\n
+ /// The externalstorage privilege (http://tizen.org/privilege/externalstorage) is needed if the image path is relevant to external storage.
/// </remarks>
/// <param name="width">The width of the image to be generated.</param>
/// <param name="height">The height of the image to be generated.</param>
/// <code>
/// BarcodeImageConfiguration imageConfig = new BarcodeImageConfiguration(500, 400, "/opt/usr/test-barcode-generate-new", BarcodeImageFormat.JPG);
/// </code>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public BarcodeImageConfiguration(int width, int height, string path, BarcodeImageFormat imageFormat)
: this(new Size(width, height), path, imageFormat)
{
/// <summary>
/// Gets the size of the image.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public Size Size { get; }
/// <summary>
/// Gets the width of the image.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public int Width => Size.Width;
/// <summary>
/// Gets the height of the image.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public int Height => Size.Height;
/// <summary>
/// Gets the path to the file that has to be generated.
/// </summary>
/// <remarks>
- /// The mediastorage privilege http://tizen.org/privilege/mediastorage is needed if image path is relevant to media storage.\n
- /// The externalstorage privilege http://tizen.org/privilege/externalstorage is needed if image path is relevant to external storage.
+ /// The mediastorage privilege (http://tizen.org/privilege/mediastorage) is needed if the image path is relevant to media storage.\n
+ /// The externalstorage privilege (http://tizen.org/privilege/externalstorage) is needed if the image path is relevant to external storage.
/// </remarks>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public string Path { get; }
/// <summary>
/// Gets the format of the output image.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public BarcodeImageFormat Format { get; }
}
}
namespace Tizen.Multimedia.Vision
{
/// <summary>
- /// Specifies supported image formats for <see cref="BarcodeGenerator"/>
+ /// Specifies the supported image formats for <see cref="BarcodeGenerator"/>
/// </summary>
/// <seealso cref="BarcodeImageConfiguration"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public enum BarcodeImageFormat
{
/// <summary>
/// BMP image format.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Bmp,
/// <summary>
/// JPEG image format.
/// <summary>
/// PNG image format.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Png
}
}
/// Specifies the supported barcode types.
/// </summary>
/// <remarks>
- /// QR codes (versions 1 to 40) and set of 1D barcodes are supported
+ /// QR codes (versions 1 to 40) and set of 1D barcodes are supported.
/// </remarks>
/// <seealso cref="BarcodeDetector"/>
/// <seealso cref="BarcodeGenerator"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public enum BarcodeType
{
/// <summary>
/// 2D barcode - Quick Response code.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
QR,
/// <summary>
/// 1D barcode - Universal Product Code with 12-digit.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
UpcA,
/// <summary>
/// 1D barcode - Universal Product Code with 6-digit.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
UpcE,
/// <summary>
/// 1D barcode - International Article Number with 8-digit.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Ean8,
/// <summary>
/// 1D barcode - International Article Number with 13-digit.
/// <summary>
/// 1D barcode - Code 128.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Code128,
/// <summary>
/// 1D barcode - Code 39.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Code39,
/// <summary>
/// 1D barcode - Interleaved Two of Five.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
I25
}
}
/// <summary>
/// A base class for configuration classes.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public abstract class EngineConfiguration : IDisposable
{
private IntPtr _handle = IntPtr.Zero;
/// Releases the resources used by the <see cref="EngineConfiguration"/> object.
/// </summary>
/// <param name="disposing">
- /// true to release both managed and unmanaged resources; false to release only unmanaged resources.
+ /// true to release both managed and unmanaged resources, otherwise false to release only unmanaged resources.
/// </param>
protected virtual void Dispose(bool disposing)
{
namespace Tizen.Multimedia.Vision
{
/// <summary>
- /// Specifies the supported QR code error correction level.
+ /// Specifies the supported QR code error correction levels.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public enum ErrorCorrectionLevel
{
/// <summary>
/// Recovery up to 7% losses.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Low,
/// <summary>
/// Recovery up to 15% losses.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Medium,
/// <summary>
/// Recovery up to 25% losses.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Quartile,
/// <summary>
/// Recovery up to 30% losses.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
High
}
}
/// <summary>
/// Specifies the eyes state types.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public enum EyeCondition
{
/// <summary>
/// Eyes are open.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Open,
/// <summary>
/// Eyes are closed.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Closed,
/// <summary>
/// The eyes condition wasn't determined.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
NotFound
}
}
/// <summary>
/// Represents a configuration of <see cref="FaceDetector"/> instances.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class FaceDetectionConfiguration : EngineConfiguration
{
private const string KeyModelFilePath = "MV_FACE_DETECTION_MODEL_FILE_PATH";
/// Gets or sets the face detection haarcascade xml file for face detection.
/// </summary>
/// <exception cref="ArgumentNullException"><paramref name="value"/> is null.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public string ModelFilePath
{
get
/// <summary>
- /// Gets or sets minimum height of face which will be detected.
+ /// Gets or sets the minimum height of a face which will be detected.
/// </summary>
/// <remarks>
- /// Default value is null (all detected faces will be applied), can be changed to specify the minimum face height.
+ /// Default value is null (all detected faces will be applied), which can be changed to specify the minimum face height.
/// </remarks>
/// <exception cref="ArgumentOutOfRangeException"><paramref name="value"/> is less than zero.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public int? MinHeight
{
get
}
/// <summary>
- /// Gets or sets minimum width of face which will be detected.
+ /// Gets or sets the minimum width of a face which will be detected.
/// </summary>
/// <remarks>
- /// Default value is null (all detected faces will be applied), can be changed to specify the minimum face width.
+ /// Default value is null (all detected faces will be applied), which can be changed to specify the minimum face width.
/// </remarks>
/// <exception cref="ArgumentOutOfRangeException"><paramref name="value"/> is less than zero.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public int? MinWidth
{
get
/// Gets or sets the roi of the face detection.
/// </summary>
/// <remarks>
- /// Default value is null (the roi will be a full image) can be changed to specify the roi for face detection.
+ /// Default value is null (the roi will be a full image), which can be changed to specify the roi for face detection.
/// </remarks>
/// <exception cref="ArgumentOutOfRangeException">
/// The width of <paramref name="value"/> is less than or equal to zero.\n
/// -or-\n
/// The y position of <paramref name="value"/> is less than zero.\n
/// </exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public Rectangle? Roi
{
get
/// <summary>
/// Provides the ability to detect faces on image sources.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static class FaceDetector
{
/// -or-\n
/// The format of <paramref name="source"/> is not supported.
/// </exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static async Task<Rectangle[]> DetectAsync(MediaVisionSource source)
{
return await DetectAsync(source, null);
/// <returns>A task that represents the asynchronous detect operation.</returns>
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static async Task<Rectangle[]> DetectAsync(MediaVisionSource source,
FaceDetectionConfiguration config)
{
/// <summary>
/// Represents a configuration of <see cref="FaceRecognizer"/> instances.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class FaceRecognitionConfiguration : EngineConfiguration
{
private const string KeyModelType = "MV_FACE_RECOGNITION_MODEL_TYPE";
/// Initializes a new instance of the <see cref="FaceRecognitionConfiguration"/> class.
/// </summary>
/// <exception cref="System.NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public FaceRecognitionConfiguration() : base("face_recognition")
{
}
/// Default value is <see cref="FaceRecognitionModelType.Lbph"/>.
/// </summary>
/// <exception cref="System.ArgumentException"><paramref name="value"/> is not valid.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public FaceRecognitionModelType ModelType
{
get
/// <summary>
/// Represents the face recognition model interface.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class FaceRecognitionModel : IDisposable
{
private IntPtr _handle = IntPtr.Zero;
/// Initializes a new instance of the <see cref="FaceRecognitionModel"/> class.
/// </summary>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public FaceRecognitionModel()
{
InteropModel.Create(out _handle).Validate("Failed to create FaceRecognitionModel");
/// Initializes a new instance of the <see cref="FaceRecognitionModel"/> class with the specified path.
/// </summary>
/// <remarks>
- /// Models have been saved by <see cref="Save()"/> can be loaded.
+ /// Models saved by <see cref="Save()"/> can be loaded.
/// </remarks>
/// <param name="modelPath">Path to the model to load.</param>
/// <exception cref="ArgumentNullException"><paramref name="modelPath"/> is null.</exception>
/// </exception>
/// <exception cref="UnauthorizedAccessException">No permission to access the specified file.</exception>
/// <seealso cref="Save(string)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public FaceRecognitionModel(string modelPath)
{
if (modelPath == null)
/// <exception cref="UnauthorizedAccessException">No permission to write to the specified path.</exception>
/// <exception cref="ObjectDisposedException">The <see cref="FaceRecognitionModel"/> has already been disposed of.</exception>
/// <exception cref="DirectoryNotFoundException">The directory for <paramref name="path"/> does not exist.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Save(string path)
{
if (path == null)
}
/// <summary>
- /// Adds face image example to be used for face recognition model learning.
+ /// Adds the face image example to be used for face recognition model learning.
/// </summary>
/// <param name="source">The <see cref="MediaVisionSource"/> that contains face image.</param>
/// <param name="label">The label that identifies face for which example is adding.
/// <paramref name="source"/> has already been dispose of.
/// </exception>
/// <seealso cref="Learn(FaceRecognitionConfiguration)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Add(MediaVisionSource source, int label)
{
if (source == null)
}
/// <summary>
- /// Adds face image example to be used for face recognition model learning.
+ /// Adds the face image example to be used for face recognition model learning.
/// </summary>
/// <param name="source">The <see cref="MediaVisionSource"/> that contains face image.</param>
/// <param name="label">The label that identifies face for which example is adding.
/// <paramref name="source"/> has already been dispose of.
/// </exception>
/// <seealso cref="Learn(FaceRecognitionConfiguration)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Add(MediaVisionSource source, int label, Rectangle area)
{
if (source == null)
/// <returns>true if the examples are successfully removed; otherwise, false if there is no example labeled with the specified label.</returns>
/// <seealso cref="Add(MediaVisionSource, int)"/>
/// <seealso cref="Add(MediaVisionSource, int, Rectangle)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public bool Remove(int label)
{
var ret = InteropModel.Remove(Handle, ref label);
/// Removes all face examples.
/// </summary>
/// <exception cref="ObjectDisposedException">The <see cref="FaceRecognitionModel"/> has already been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Reset()
{
InteropModel.Reset(Handle).Validate("Failed to reset image example");
/// <summary>
- /// Learns face recognition model.
+ /// Learns the face recognition model.
/// </summary>
/// <remarks>
- /// Before you start learning process, face recognition models has to be filled with training data - face image examples.
- /// These examples has to be provided by <see cref="Add(MediaVisionSource, int)"/> or <see cref="Add(MediaVisionSource, int, Rectangle)"/>.
- /// Recognition accuracy is usually increased when the different examples of the identical face are added more and more.
+ /// Before you start the learning process, face recognition models have to be filled with the training data - face image examples.
+ /// These examples have to be provided by <see cref="Add(MediaVisionSource, int)"/> or <see cref="Add(MediaVisionSource, int, Rectangle)"/>.
+ /// Recognition accuracy is usually increased when the different examples of the identical faces are added more and more.
/// But it depends on the used learning algorithm.
/// </remarks>
/// <exception cref="ObjectDisposedException">The <see cref="FaceRecognitionModel"/> has already been disposed of.</exception>
/// <exception cref="InvalidOperationException">No examples added.</exception>
/// <seealso cref="Add(MediaVisionSource, int)"/>
/// <seealso cref="Add(MediaVisionSource, int, Rectangle)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Learn()
{
Learn(null);
}
/// <summary>
- /// Learns face recognition model with <see cref="FaceRecognitionConfiguration"/>.
+ /// Learns the face recognition model with <see cref="FaceRecognitionConfiguration"/>.
/// </summary>
/// <remarks>
- /// Before you start learning process, face recognition models has to be filled with training data - face image examples.
- /// These examples has to be provided by <see cref="Add(MediaVisionSource, int)"/> or <see cref="Add(MediaVisionSource, int, Rectangle)"/>.
- /// Recognition accuracy is usually increased when the different examples of the identical face are added more and more.
+ /// Before you start the learning process, face recognition models have to be filled with the training data - face image examples.
+ /// These examples have to be provided by <see cref="Add(MediaVisionSource, int)"/> or <see cref="Add(MediaVisionSource, int, Rectangle)"/>.
+ /// Recognition accuracy is usually increased when the different examples of the identical faces are added more and more.
/// But it depends on the used learning algorithm.
/// </remarks>
/// <param name="config">The configuration used for learning of the recognition models. This value can be null.</param>
/// <exception cref="InvalidOperationException">No examples added.</exception>
/// <seealso cref="Add(MediaVisionSource, int)"/>
/// <seealso cref="Add(MediaVisionSource, int, Rectangle)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Learn(FaceRecognitionConfiguration config)
{
InteropModel.Learn(EngineConfiguration.GetHandle(config), Handle).
}
/// <summary>
- /// Releases all resources used by the <see cref="FaceRecognitionModel"/> object.
+ /// Releases all the resources used by the <see cref="FaceRecognitionModel"/> object.
/// </summary>
public void Dispose()
{
/// Releases the resources used by the <see cref="FaceRecognitionModel"/> object.
/// </summary>
/// <param name="disposing">
- /// true to release both managed and unmanaged resources; false to release only unmanaged resources.
+ /// true to release both managed and unmanaged resources; otherwise false to release only unmanaged resources.
/// </param>
protected virtual void Dispose(bool disposing)
{
/// <summary>
/// Specifies the face recognition model learning algorithms.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public enum FaceRecognitionModelType
{
/// <summary>
/// Eigenfaces.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
EigenFaces = 1,
/// <summary>
/// Fisherfaces.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
FisherFaces,
/// <summary>
/// Local Binary Patterns Histograms (LBPH); The default type.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Lbph
}
}
namespace Tizen.Multimedia.Vision
{
/// <summary>
- /// Represents result of <see cref="FaceRecognizer"/> operations.
+ /// Represents the result of <see cref="FaceRecognizer"/> operations.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class FaceRecognitionResult
{
internal FaceRecognitionResult(bool recognized, double confidence, int label, Rectangle? area)
/// <summary>
/// Gets the value indicating the recognition is successful.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public bool Success { get; }
/// <summary>
/// Gets the label of the recognized face.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public int Label { get; }
/// <summary>
/// Gets the location of the recognized face.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public Rectangle? Area { get; }
/// <summary>
/// threshold for this value can be high (0.85-0.95). If model was learned for small amount of examples,
/// then threshold can be reduced (0.5-0.85).
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public double Confidence { get; }
}
}
namespace Tizen.Multimedia.Vision
{
/// <summary>
- /// Provides the ability to recognize faces, face expressions and eye condition on image sources.
+ /// Provides the ability to recognize faces, face expressions, and eye condition on image sources.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static class FaceRecognizer
{
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="ObjectDisposedException"><paramref name="source"/> has already been disposed of.</exception>
/// <exception cref="InvalidOperationException"><paramref name="recognitionModel"/> is untrained model.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static async Task<FaceRecognitionResult> RecognizeAsync(MediaVisionSource source,
FaceRecognitionModel recognitionModel)
{
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="ObjectDisposedException"><paramref name="source"/> has already been disposed of.</exception>
/// <exception cref="InvalidOperationException"><paramref name="recognitionModel"/> is untrained model.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static async Task<FaceRecognitionResult> RecognizeAsync(MediaVisionSource source,
FaceRecognitionModel recognitionModel, Rectangle bound)
{
/// <paramref name="config"/> has already been disposed of.
/// </exception>
/// <exception cref="InvalidOperationException"><paramref name="recognitionModel"/> is untrained model.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static async Task<FaceRecognitionResult> RecognizeAsync(MediaVisionSource source,
FaceRecognitionModel recognitionModel, FaceRecognitionConfiguration config)
{
/// <summary>
- /// Performs face recognition on the source with <see cref="FaceRecognitionModel"/>, <see cref="FaceRecognitionConfiguration"/>
+ /// Performs face recognition on the source with <see cref="FaceRecognitionModel"/>, <see cref="FaceRecognitionConfiguration"/>
/// and a bounding box.
/// </summary>
/// <param name="source">The <see cref="MediaVisionSource"/> of the media to recognize faces for.</param>
/// <paramref name="config"/> has already been disposed of.
/// </exception>
/// <exception cref="InvalidOperationException"><paramref name="recognitionModel"/> is untrained model.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static async Task<FaceRecognitionResult> RecognizeAsync(MediaVisionSource source,
FaceRecognitionModel recognitionModel, Rectangle bound, FaceRecognitionConfiguration config)
{
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException"><paramref name="source"/> has already been disposed of.</exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static async Task<EyeCondition> RecognizeEyeConditionAsync(MediaVisionSource source,
Rectangle bound)
{
}
/// <summary>
- /// Determines eye-blink condition on media source.
+ /// Determines eye-blink condition on the media source.
/// </summary>
/// <param name="source">The source of the media to recognize eye-blink condition for.</param>
/// <param name="bound">The bounding the face at the source.</param>
/// <paramref name="config"/> has already been disposed of.
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static async Task<EyeCondition> RecognizeEyeConditionAsync(MediaVisionSource source,
Rectangle bound, FaceRecognitionConfiguration config)
{
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException"><paramref name="source"/> has already been disposed of.</exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static async Task<FacialExpression> RecognizeFacialExpressionAsync(MediaVisionSource source,
Rectangle bound)
{
/// <paramref name="config"/> has already been disposed of.
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static async Task<FacialExpression> RecognizeFacialExpressionAsync(MediaVisionSource source,
Rectangle bound, FaceRecognitionConfiguration config)
{
/// <summary>
/// Provides the ability to track faces on image sources.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static class FaceTracker
{
/// </summary>
/// <param name="source">The source of the media to recognize face for.</param>
/// <param name="trackingModel">The model will be used for tracking.</param>
- /// <param name="doLearn">The value indicating whether model learning while tracking. If it is true then model will try to learn
- /// (if it supports learning feature), otherwise model will be not learned during the invoking tracking iteration.
+ /// <param name="doLearn">The value indicating whether model learning while tracking. If it is true, then the model will try to learn
+ /// (if it supports learning feature), otherwise the model will be not learned during the invoking tracking iteration.
/// Learning process improves tracking correctness, but can decrease tracking performance.</param>
/// <returns>A task that represents the asynchronous tracking operation.</returns>
/// <exception cref="ArgumentNullException">
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="InvalidOperationException"><paramref name="trackingModel"/> is not prepared.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static async Task<FaceTrackingResult> TrackAsync(MediaVisionSource source,
FaceTrackingModel trackingModel, bool doLearn)
{
namespace Tizen.Multimedia.Vision
{
/// <summary>
- /// Represents face tracking model.
+ /// Represents the face tracking model.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class FaceTrackingModel : IDisposable
{
private IntPtr _handle = IntPtr.Zero;
/// Initializes a new instance of the <see cref="FaceTrackingModel"/> class.
/// </summary>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public FaceTrackingModel()
{
InteropModel.Create(out _handle).Validate("Failed to create FaceTrackingModel.");
/// Initializes a new instance of the <see cref="FaceTrackingModel"/> class with the specified path.
/// </summary>
/// <remarks>
- /// Models has been saved by <see cref="Save()"/> can be loaded.
+ /// Models saved by <see cref="Save()"/> can be loaded.
/// </remarks>
/// <param name="modelPath">Path to the model to load.</param>
/// <exception cref="ArgumentNullException"><paramref name="modelPath"/> is null.</exception>
/// </exception>
/// <exception cref="UnauthorizedAccessException">No permission to access the specified file.</exception>
/// <seealso cref="Save()"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public FaceTrackingModel(string modelPath)
{
if (modelPath == null)
}
/// <summary>
- /// Initializes tracking model by the location of the face to be tracked.
+ /// Initializes the tracking model by the location of the face to be tracked.
///
- /// It is usually called once after tracking model is created and each time before tracking
- /// is started for the new sequence of sources which is not the direct continuation of
- /// the sequence for which tracking has been performed before. But it is allowed to call it
+ /// It is usually called once after the tracking model is created, and each time before tracking
+ /// is started for the new sequence of sources, which is not the direct continuation of
+ /// the sequence for which tracking has been performed before. But, it is allowed to call it
/// between tracking sessions to allow Media Vision start to track more accurately.
/// </summary>
/// <remarks>
/// -or-\n
/// <paramref name="source"/> has already bean disposed of.
/// </exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Prepare(MediaVisionSource source, Quadrangle region)
{
if (source == null)
/// <exception cref="UnauthorizedAccessException">No permission to write to the specified path.</exception>
/// <exception cref="ObjectDisposedException">The <see cref="FaceRecognitionModel"/> has already been disposed of.</exception>
/// <exception cref="DirectoryNotFoundException">The directory for <paramref name="path"/> does not exist.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Save(string path)
{
if (path == null)
}
/// <summary>
- /// Releases all resources used by the <see cref="FaceTrackingModel"/> object.
+ /// Releases all the resources used by the <see cref="FaceTrackingModel"/> object.
/// </summary>
public void Dispose()
{
/// Releases the resources used by the <see cref="FaceTrackingModel"/> object.
/// </summary>
/// <param name="disposing">
- /// true to release both managed and unmanaged resources; false to release only unmanaged resources.
+ /// true to release both managed and unmanaged resources; otherwise false to release only unmanaged resources.
/// </param>
protected virtual void Dispose(bool disposing)
{
namespace Tizen.Multimedia.Vision
{
/// <summary>
- /// Represents result of face tracking operation.
+ /// Represents the result of face tracking operation.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class FaceTrackingResult
{
internal FaceTrackingResult(bool success, double confidence, Quadrangle region)
public bool Success { get; }
/// <summary>
- /// Gets the region which determines new position of the tracked face on the source.
+ /// Gets the region which determines the new position of the tracked face on the source.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public Quadrangle Region { get; }
/// <summary>
- /// The confidence of the tracking model that new location of the face was determined correctly
- /// (value from 0.0 to 1.0). If no location was determined during last track iteration, then value is 0.0.
+ /// The confidence of the tracking model that a new location of the face was determined correctly
+ /// (value from 0.0 to 1.0). If no location was determined during the last track iteration, then the value is 0.0.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public double Confidence { get; }
}
}
/// <summary>
/// Specifies the expression types for faces.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public enum FacialExpression
{
/// <summary>
/// Unknown face expression.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Unknown,
/// <summary>
/// Face expression is neutral.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Neutral,
/// <summary>
/// Face expression is smiling.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Smile,
/// <summary>
/// Face expression is sadness.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Sadness,
/// <summary>
/// Face expression is surprise.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Surprise,
/// <summary>
/// Face expression is anger.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Anger,
/// <summary>
/// Face expression is fear.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Fear,
/// <summary>
/// Face expression is disgust.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Disgust
}
}
/// <summary>
/// Represents a configuration of fill operations of <see cref="ImageObject"/> instances.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class ImageFillConfiguration : EngineConfiguration
{
private const string KeyScaleFactor = "MV_IMAGE_RECOGNITION_OBJECT_SCALE_FACTOR";
/// <summary>
/// A read-only field that represents the default value of <see cref="ObjectScaleFactor"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static readonly double DefaultScaleFactor = 1.2;
/// <summary>
/// Initializes a new instance of the <see cref="ImageFillConfiguration"/> class.
/// </summary>
/// <exception cref="System.NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public ImageFillConfiguration() : base("image_recognition")
{
}
/// The default value is 1.2.
/// </summary>
/// <exception cref="ObjectDisposedException">The <see cref="ImageFillConfiguration"/> already has been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public double ObjectScaleFactor
{
get
/// The default value is 1000.
/// </summary>
/// <exception cref="ObjectDisposedException">The <see cref="ImageFillConfiguration"/> already has been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public int ObjectMaxKeyPoints
{
get
/// <summary>
/// Represents an image object.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class ImageObject : IDisposable
{
private IntPtr _handle = IntPtr.Zero;
/// Initializes a new instance of the <see cref="ImageObject"/> class.
/// </summary>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public ImageObject()
{
InteropImage.Create(out _handle).Validate("Failed to create image object");
/// Initializes a new instance of the <see cref="ImageObject"/> class from the specified file.
/// </summary>
/// <remarks>
- /// ImageObject has been saved by <see cref="Save(string)"/> can be loaded.
+ /// ImageObject has been saved by <see cref="Save()"/> can be loaded.
/// </remarks>
/// <param name="path">Path to the image object to load.</param>
/// <exception cref="ArgumentNullException"><paramref name="path"/> is null.</exception>
/// </exception>
/// <exception cref="UnauthorizedAccessException">No permission to access the specified file.</exception>
/// <seealso cref="Save(string)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public ImageObject(string path)
{
if (path == null)
/// <seealso cref="Fill(MediaVisionSource, ImageFillConfiguration)"/>
/// <seealso cref="Fill(MediaVisionSource, Rectangle)"/>
/// <seealso cref="Fill(MediaVisionSource, ImageFillConfiguration, Rectangle)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public double RecognitionRate
{
get
/// </returns>
/// <exception cref="ObjectDisposedException">The <see cref="ImageObject"/> has already been disposed of.</exception>
/// <seealso cref="SetLabel(int)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public int? GetLabel()
{
var ret = InteropImage.GetLabel(Handle, out var label);
/// Sets the label for the <see cref="ImageObject"/>.
/// </summary>
/// <seealso cref="GetLabel"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void SetLabel(int label)
{
InteropImage.SetLabel(Handle, label).Validate("Failed to set label");
/// -or-\n
/// <paramref name="source"/> has already been disposed of.
/// </exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Fill(MediaVisionSource source)
{
InvokeFill(source, null, null);
/// -or-\n
/// <paramref name="config"/> has already been disposed of.
/// </exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Fill(MediaVisionSource source, ImageFillConfiguration config)
{
InvokeFill(source, config, null);
/// -or-\n
/// <paramref name="source"/> has already been disposed of.\n
/// </exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Fill(MediaVisionSource source, Rectangle rect)
{
InvokeFill(source, null, rect);
/// -or-\n
/// <paramref name="config"/> has already been disposed of.
/// </exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Fill(MediaVisionSource source, ImageFillConfiguration config, Rectangle rect)
{
InvokeFill(source, config, rect);
/// <exception cref="UnauthorizedAccessException">No permission to write to the specified path.</exception>
/// <exception cref="ObjectDisposedException">The <see cref="FaceRecognitionModel"/> has already been disposed of.</exception>
/// <exception cref="DirectoryNotFoundException">The directory for <paramref name="path"/> does not exist.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Save(string path)
{
if (path == null)
#region IDisposable-support
/// <summary>
- /// Releases all resources used by the <see cref="ImageObject"/> object.
+ /// Releases all the resources used by the <see cref="ImageObject"/> object.
/// </summary>
public void Dispose()
{
/// Releases the resources used by the <see cref="ImageObject"/> object.
/// </summary>
/// <param name="disposing">
- /// true to release both managed and unmanaged resources; false to release only unmanaged resources.
+ /// true to release both managed and unmanaged resources; otherwise false to release only unmanaged resources.
/// </param>
protected virtual void Dispose(bool disposing)
{
/// <summary>
/// Represents a configuration of <see cref="ImageRecognizer"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class ImageRecognitionConfiguration : EngineConfiguration
{
private const string KeySceneScaleFactor = "MV_IMAGE_RECOGNITION_SCENE_SCALE_FACTOR";
/// <summary>
/// A read-only field that represents the default value of <see cref="KeySceneScaleFactor"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static readonly double DefaultSceneScaleFactor = 1.2;
/// <summary>
/// A read-only field that represents the default value of <see cref="SceneMaxKeyPoints"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static readonly int DefaultSceneMaxKeypoints = 5000;
/// <summary>
/// A read-only field that represents the default value of <see cref="MinKeyPointMatches"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static readonly int DefaultMinKeyPointMatches = 30;
/// <summary>
/// A read-only field that represents the default value of <see cref="RequiredMatchingPart"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static readonly double DefaultRequiredMatchPart = 0.05;
/// <summary>
/// A read-only field that represents the default value of <see cref="TolerantPartMatchError"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static readonly double DefaultTolerantPartMatchError = 0.1;
/// <summary>
/// Initializes a new instance of the <see cref="ImageRecognitionConfiguration"/> class.
/// </summary>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public ImageRecognitionConfiguration() : base("image_recognition")
{
}
/// The default is 1.2.
/// </value>
/// <exception cref="ObjectDisposedException">The <see cref="ImageRecognitionConfiguration"/> already has been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public double SceneScaleFactor
{
get
/// </value>
/// <exception cref="ObjectDisposedException">The <see cref="ImageRecognitionConfiguration"/> already has been disposed of.</exception>
/// <exception cref="ArgumentOutOfRangeException"><paramref name="value"/> is less than zero.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public int SceneMaxKeyPoints
{
get
/// </value>
/// <exception cref="ObjectDisposedException">The <see cref="ImageRecognitionConfiguration"/> already has been disposed of.</exception>
/// <exception cref="ArgumentOutOfRangeException"><paramref name="value"/> is less than zero.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public int MinKeyPointMatches
{
get
/// Gets or sets the required matching part for the image recognition.
/// To recognize occluded or hidden an image by other images, required relative part of the matches in respect to the total
/// amount of matching keypoints required for image recognition. Too low value will result in unsustainable behavior,
- /// but effect of object overlapping will be reduced.
+ /// but the effect of object overlapping will be reduced.
/// </summary>
/// <value>
/// The value indicating required relative part of the matches; can be from 0 to 1, inclusive.
/// -or-\n
/// <paramref name="value"/> is greater than one.
/// </exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public double RequiredMatchingPart
{
get
/// <summary>
/// Represents a result of RecognizeAsync operations of <see cref="ImageRecognizer"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class ImageRecognitionResult
{
/// <summary>
/// The region of recognized image object on the source image.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public Quadrangle Region { get; }
/// <summary>
/// <summary>
/// Provides the ability to recognize images on image sources.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static class ImageRecognizer
{
/// <summary>
/// <exception cref="ArgumentException"><paramref name="imageObjects"/> has no elements.(The length is zero.)</exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="ObjectDisposedException"><paramref name="source"/> has already been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static async Task<IEnumerable<ImageRecognitionResult>> RecognizeAsync(
MediaVisionSource source, ImageObject[] imageObjects)
{
/// -or-\n
/// <paramref name="config"/> has already been disposed of.
/// </exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static async Task<IEnumerable<ImageRecognitionResult>> RecognizeAsync(MediaVisionSource source,
ImageObject[] imageObjects, ImageRecognitionConfiguration config)
{
/// <summary>
/// Provides the ability to track images on image sources.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static class ImageTracker
{
/// <summary>
/// Tracks the given image tracking model on the current frame.
/// </summary>
- /// <param name="source">The current image of sequence where image tracking model will be tracked.</param>
+ /// <param name="source">The current image of sequence where the image tracking model will be tracked.</param>
/// <param name="trackingModel">The image tracking model which processed as target of tracking.</param>
/// <returns>A task that represents the asynchronous tracking operation.</returns>
/// <exception cref="ArgumentNullException">
/// </exception>
/// <exception cref="ArgumentException"><paramref name="trackingModel"/> has no target.</exception>
/// <seealso cref="ImageTrackingModel.SetTarget(ImageObject)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static async Task<Quadrangle> TrackAsync(MediaVisionSource source,
ImageTrackingModel trackingModel)
{
/// <summary>
/// Tracks the given image tracking model on the current frame and <see cref="ImageTrackingConfiguration"/>.
/// </summary>
- /// <param name="source">The current image of sequence where image tracking model will be tracked.</param>
+ /// <param name="source">The current image of sequence where the image tracking model will be tracked.</param>
/// <param name="trackingModel">The image tracking model which processed as target of tracking.</param>
/// <param name="config">The configuration used for tracking. This value can be null.</param>
/// <returns>A task that represents the asynchronous tracking operation.</returns>
/// </exception>
/// <exception cref="ArgumentException"><paramref name="trackingModel"/> has no target.</exception>
/// <seealso cref="ImageTrackingModel.SetTarget(ImageObject)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static async Task<Quadrangle> TrackAsync(MediaVisionSource source,
ImageTrackingModel trackingModel, ImageTrackingConfiguration config)
{
/// <summary>
/// Represents a configuration of <see cref="ImageTracker"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class ImageTrackingConfiguration : ImageRecognitionConfiguration
{
private const string KeyHistoryAmount = "MV_IMAGE_TRACKING_HISTORY_AMOUNT";
/// <summary>
/// A read-only field that represents the default value of <see cref="HistoryAmount"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static readonly int DefaultHistoryAmount = 3;
/// <summary>
/// A read-only field that represents the default value of <see cref="ExpectedOffset"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static readonly double DefaultExpectedOffset = 0;
/// <summary>
/// A read-only field that represents the default value of <see cref="IsStabilizationEnabled"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static readonly bool DefaultStabilizationEnabled = true;
/// <summary>
/// A read-only field that represents the default value of <see cref="StabilizationTolerantShift"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static readonly double DefaultStabilizationTolerantShift = 0.00006;
/// <summary>
/// A read-only field that represents the default value of <see cref="StabilizationSpeed"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static readonly double DefaultStabilizationSpeed = 0.3;
/// <summary>
/// A read-only field that represents the default value of <see cref="StabilizationAcceleration"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static readonly double DefaultStabilizationAcceleration = 0.1;
/// <summary>
/// Initializes a new instance of the <see cref="ImageTrackingConfiguration"/> class.
/// </summary>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public ImageTrackingConfiguration()
{
}
/// </value>
/// <exception cref="ObjectDisposedException">The <see cref="ImageTrackingConfiguration"/> already has been disposed of.</exception>
/// <exception cref="ArgumentOutOfRangeException"><paramref name="value"/> is less than zero.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public int HistoryAmount
{
get
/// Gets or sets the expected tracking offset.
/// </summary>
/// <value>
- /// Relative offset value, for which the object offset is expected (relative to the object size in the current frame).\n
+ /// Relative offset value for which the object offset is expected (relative to the object size in the current frame).\n
/// The default is 0.
/// </value>
/// <exception cref="ObjectDisposedException">The <see cref="ImageTrackingConfiguration"/> already has been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public double ExpectedOffset
{
get
/// -or-\n
/// <paramref name="value"/> is greater than one.
/// </exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public double StabilizationAcceleration
{
get
/// The default is 0.3.
/// </value>
/// <exception cref="ObjectDisposedException">The <see cref="ImageTrackingConfiguration"/> already has been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public double StabilizationSpeed
{
get
/// The default is 0.00006.
/// </value>
/// <exception cref="ObjectDisposedException">The <see cref="ImageTrackingConfiguration"/> already has been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public double StabilizationTolerantShift
{
get
/// Gets or sets the state of the contour stabilization during tracking process.
/// </summary>
/// <value>
- /// true if the contour stabilization is enabled; otherwise, false.\n
+ /// true if the contour stabilization is enabled; otherwise false.\n
/// The default is true.
/// </value>
/// <exception cref="ObjectDisposedException">The <see cref="ImageTrackingConfiguration"/> already has been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public bool IsStabilizationEnabled
{
get
/// <summary>
/// Represents the image tracking model interface.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class ImageTrackingModel : IDisposable
{
private IntPtr _handle = IntPtr.Zero;
/// Initializes a new instance of the <see cref="ImageTrackingModel"/> class.
/// </summary>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public ImageTrackingModel()
{
InteropModel.Create(out _handle).Validate("Failed to create FaceTrackingModel");
/// Initializes a new instance of the <see cref="ImageTrackingModel"/> class with the specified path.
/// </summary>
/// <remarks>
- /// Model have been saved by <see cref="Save()"/> can be loaded.
+ /// Model saved by <see cref="Save()"/> can be loaded.
/// </remarks>
/// <param name="modelPath">Path to the model to load.</param>
/// <exception cref="ArgumentNullException"><paramref name="modelPath"/> is null.</exception>
/// </exception>
/// <exception cref="UnauthorizedAccessException">No permission to access the specified file.</exception>
/// <seealso cref="Save()"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public ImageTrackingModel(string modelPath)
{
if (modelPath == null)
}
/// <summary>
- /// Sets target of image tracking model.\n
- /// Sets image object which will be tracked by using tracking functionality with this tracking model.
+ /// Sets the target of the image tracking model.\n
+ /// Sets the image object which will be tracked by using tracking functionality with this tracking model.
/// </summary>
/// <param name="imageObject">Image object which will be set as the target for tracking.</param>
/// <exception cref="ArgumentNullException"><paramref name="imageObject"/> is null.</exception>
/// -or-\n
/// <paramref name="imageObject"/> has already been disposed of.
/// </exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void SetTarget(ImageObject imageObject)
{
if (imageObject == null)
/// <summary>
/// Refreshes the state of image tracking model.\n
- /// Clears moving history and change state to undetected. It is usually called each time before tracking is started
- /// for the new sequence of sources which is not the direct continuation of the sequence for which tracking has been performed before.
+ /// Clears the moving history and change state to undetected. It is usually called each time before tracking is started
+ /// for the new sequence of sources, which is not the direct continuation of the sequence for which tracking has been performed before.
/// Tracking algorithm will try to find image by itself.
/// </summary>
/// <exception cref="ObjectDisposedException">The <see cref="ImageTrackingModel"/> has already been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Refresh()
{
InteropModel.Refresh(Handle, IntPtr.Zero).Validate("Failed to refresh state");
}
/// <summary>
- /// Saves tracking model to the file.
+ /// Saves the tracking model to the file.
/// </summary>
/// <param name="path">Path to the file to save the model.</param>
/// <exception cref="ArgumentNullException"><paramref name="path"/> is null.</exception>
/// <exception cref="UnauthorizedAccessException">No permission to write to the specified path.</exception>
/// <exception cref="ObjectDisposedException">The <see cref="ImageTrackingModel"/> has already been disposed of.</exception>
/// <exception cref="DirectoryNotFoundException">The directory for <paramref name="path"/> does not exist.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Save(string path)
{
if (path == null)
/// Releases the resources used by the <see cref="ImageTrackingModel"/> object.
/// </summary>
/// <param name="disposing">
- /// true to release both managed and unmanaged resources; false to release only unmanaged resources.
+ /// true to release both managed and unmanaged resources; otherwise false to release only unmanaged resources.
/// </param>
protected virtual void Dispose(bool disposing)
{
{
MediaVisionErrorCode = -0x019D0000,
/// <summary>
- /// Successful
+ /// Successful.
/// </summary>
None = ErrorCode.None,
/// <summary>
- /// Not supported
+ /// Not supported.
/// </summary>
NotSupported = ErrorCode.NotSupported,
/// <summary>
- /// Message too long
+ /// Message too long.
/// </summary>
MsgTooLong = ErrorCode.MsgTooLong,
/// <summary>
- /// No data
+ /// No data.
/// </summary>
NoData = ErrorCode.NoData,
/// <summary>
- /// Key not available
+ /// Key not available.
/// </summary>
KeyNotAvailable = ErrorCode.KeyNotAvailable,
/// <summary>
- /// Out of memory
+ /// Out of memory.
/// </summary>
OutOfMemory = ErrorCode.OutOfMemory,
/// <summary>
- /// Invalid parameter
+ /// Invalid parameter.
/// </summary>
InvalidParameter = ErrorCode.InvalidParameter,
/// <summary>
- /// Invalid operation
+ /// Invalid operation.
/// </summary>
InvalidOperation = ErrorCode.InvalidOperation,
/// <summary>
- /// Permission denied
+ /// Permission denied.
/// </summary>
PermissionDenied = ErrorCode.NotPermitted,
/// <summary>
- /// Not supported format
+ /// Not supported format.
/// </summary>
NotSupportedFormat = MediaVisionErrorCode | 0x01,
/// <summary>
/// </summary>
Internal = MediaVisionErrorCode | 0x02,
/// <summary>
- /// Invalid data
+ /// Invalid data.
/// </summary>
InvalidData = MediaVisionErrorCode | 0x03,
/// <summary>
- /// Invalid path (Since 3.0)
+ /// Invalid path (Since 3.0).
/// </summary>
InvalidPath = MediaVisionErrorCode | 0x04
}
namespace Tizen.Multimedia.Vision
{
/// <summary>
- /// Represents the media vision source to keep information on image or video frame data as raw buffer.
+ /// Represents the media vision source to keep information on the image or video frame data as raw buffer.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class MediaVisionSource : IBufferOwner, IDisposable
{
private IntPtr _handle = IntPtr.Zero;
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="ArgumentNullException"><paramref name="mediaPacket"/> is null.</exception>
/// <exception cref="ObjectDisposedException"><paramref name="mediaPacket"/> has already been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public MediaVisionSource(MediaPacket mediaPacket)
: this(handle => FillMediaPacket(handle, mediaPacket))
{
/// -or-\n
/// <paramref name="colorSpace"/> is invalid.
/// </exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public MediaVisionSource(byte[] buffer, uint width, uint height, ColorSpace colorSpace)
: this(handle => FillBuffer(handle, buffer, width, height, colorSpace))
{
/// Gets the buffer of the media source.
/// </summary>
/// <exception cref="ObjectDisposedException">The <see cref="MediaVisionSource"/> has already been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public IMediaBuffer Buffer
{
get
}
/// <summary>
- /// Gets height of the media source.
+ /// Gets the height of the media source.
/// </summary>
/// <exception cref="ObjectDisposedException">The <see cref="MediaVisionSource"/> has already been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public uint Height
{
get
}
/// <summary>
- /// Gets width of the media source.
+ /// Gets the width of the media source.
/// </summary>
/// <exception cref="ObjectDisposedException">The <see cref="MediaVisionSource"/> has already been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public uint Width
{
get
/// Gets <see cref="ColorSpace"/> of the media source.
/// </summary>
/// <exception cref="ObjectDisposedException">The <see cref="MediaVisionSource"/> has already been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public ColorSpace Colorspace
{
get
/// Releases the resources used by the <see cref="MediaVisionSource"/> object.
/// </summary>
/// <param name="disposing">
- /// true to release both managed and unmanaged resources; false to release only unmanaged resources.
+ /// true to release both managed and unmanaged resources; otherwise false to release only unmanaged resources.
/// </param>
protected virtual void Dispose(bool disposing)
{
/// <summary>
/// Provides data for the <see cref="MovementDetector.Detected"/> event.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class MovementDetectedEventArgs : EventArgs
{
/// <summary>
/// Initializes a new instance of the <see cref="MovementDetectedEventArgs"/> class.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public MovementDetectedEventArgs(IEnumerable<Rectangle> areas)
{
Areas = areas;
/// <summary>
/// Gets a set of rectangular regions where movement was detected.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public IEnumerable<Rectangle> Areas { get; }
}
}
/// <summary>
/// Represents a configuration of <see cref="MovementDetector"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class MovementDetectionConfiguration : SurveillanceEngineConfiguration
{
private const string KeyThreshold = "MV_SURVEILLANCE_MOVEMENT_DETECTION_THRESHOLD";
/// <summary>
/// A read-only field that represents the default value of <see cref="Threshold"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static readonly int DefaultThreshold = 10;
/// Initializes a new instance of the <see cref="MovementDetectionConfiguration"/> class.
/// </summary>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public MovementDetectionConfiguration()
{
}
/// to specify the sensitivity of the movement detector.
/// </summary>
/// <value>
- /// The value indicating the sensitivity of the <see cref="MovementDetector"/> from 0 to 255 inclusive
+ /// The value indicating the sensitivity of <see cref="MovementDetector"/> from 0 to 255 inclusive,
/// where 255 means that no movements will be detected and 0 means that all frame changes
/// will be interpreted as movements.\n
/// The default is 10.
/// -or-\n
/// <paramref name="value"/> is greater than 255.
/// </exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public int Threshold
{
get
/// Provides the ability to detect movement on image sources.
/// </summary>
/// <seealso cref="MovementDetectionConfiguration"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class MovementDetector : SurveillanceEngine
{
private const string KeyNumberOfRegions = "NUMBER_OF_MOVEMENT_REGIONS";
/// Initializes a new instance of the <see cref="MovementDetector"/> class.
/// </summary>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public MovementDetector() : base(MovementDetectedEventType)
{
}
/// Occurs when the movement detected.
/// </summary>
/// <remarks>The event handler will be executed on an internal thread.</remarks>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public event EventHandler<MovementDetectedEventArgs> Detected;
internal override void OnEventDetected(IntPtr trigger, IntPtr source, int streamId,
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException">The <see cref="MovementDetector"/> has already been disposed of.</exception>
/// <see cref="SurveillanceSource.Push(MediaVisionSource)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void AddSource(SurveillanceSource source)
{
AddSource(source, null);
/// <paramref name="config"/> has already been disposed of.
/// </exception>
/// <see cref="SurveillanceSource.Push(MediaVisionSource)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void AddSource(SurveillanceSource source, MovementDetectionConfiguration config)
{
InvokeAddSource(source, config);
/// <summary>
/// Provides data for the <see cref="PersonAppearanceDetector.Detected"/> event.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class PersonAppearanceDetectedEventArgs : EventArgs
{
/// <summary>
/// Initializes a new instance of the <see cref="PersonAppearanceDetectedEventArgs"/> class.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public PersonAppearanceDetectedEventArgs(IEnumerable<Rectangle> appeared,
IEnumerable<Rectangle> disappeared, IEnumerable<Rectangle> tracked)
{
/// <summary>
/// Gets a set of rectangular regions where appearances of the persons were detected.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public IEnumerable<Rectangle> AppearanceAreas { get; }
/// <summary>
/// Gets a set of rectangular regions where disappearances of the persons were detected.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public IEnumerable<Rectangle> DisappearanceAreas { get; }
/// <summary>
/// Gets a set of rectangular regions where persons were tracked.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public IEnumerable<Rectangle> TrackedAreas { get; }
}
}
/// <summary>
/// Represents a configuration of <see cref="PersonAppearanceDetector"/> instances.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class PersonAppearanceDetectionConfiguration : SurveillanceEngineConfiguration
{
private const string KeySkipFramesCount = "MV_SURVEILLANCE_SKIP_FRAMES_COUNT";
/// <summary>
/// A read-only field that represents the default value of <see cref="SkipFramesCount"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public static readonly int DefaultSkipFramesCount = 0;
/// <summary>
/// Initializes a new instance of the <see cref="PersonAppearanceDetectionConfiguration"/> class.
/// </summary>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public PersonAppearanceDetectionConfiguration()
{
}
/// <exception cref="ObjectDisposedException">The <see cref="PersonAppearanceDetectionConfiguration"/> already has been disposed of.</exception>
/// <exception cref="ArgumentOutOfRangeException"><paramref name="value"/> is less than zero.</exception>
/// <seealso cref="SurveillanceSource.Push(MediaVisionSource)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public int SkipFramesCount
{
get
/// Provides the ability to detect person appearance changes on image sources.
/// </summary>
/// <seealso cref="PersonAppearanceDetectionConfiguration"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class PersonAppearanceDetector : SurveillanceEngine
{
private const string KeyAppearedNumber = "NUMBER_OF_APPEARED_PERSONS";
/// Initializes a new instance of the <see cref="PersonAppearanceDetector"/> class.
/// </summary>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public PersonAppearanceDetector() : base(PersonAppearanceEventType)
{
}
/// Occurs when the any appearance changes detected.
/// </summary>
/// <remarks>The event handler will be executed on an internal thread.</remarks>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public event EventHandler<PersonAppearanceDetectedEventArgs> Detected;
internal override void OnEventDetected(IntPtr trigger, IntPtr source, int streamId,
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException">The <see cref="PersonAppearanceDetector"/> has already been disposed of.</exception>
/// <see cref="SurveillanceSource.Push(MediaVisionSource)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void AddSource(SurveillanceSource source)
{
AddSource(source, null);
/// <paramref name="config"/> has already been disposed of.
/// </exception>
/// <see cref="SurveillanceSource.Push(MediaVisionSource)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void AddSource(SurveillanceSource source, PersonAppearanceDetectionConfiguration config)
{
InvokeAddSource(source, config);
/// <summary>
/// Represents a configuration of <see cref="PersonRecognizer"/> instances.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class PersonRecognitionConfiguration : SurveillanceEngineConfiguration
{
private const string KeyFaceRecognitionModelFilePath = "MV_SURVEILLANCE_FACE_RECOGNITION_MODEL_FILE_PATH";
/// <param name="modelPath">Path to the face recognition model.</param>
/// <exception cref="ArgumentNullException"><paramref name="modelPath"/> is null.</exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen>3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public PersonRecognitionConfiguration(string modelPath)
{
FaceRecognitionModelPath = modelPath;
/// </summary>
/// <exception cref="ArgumentNullException"><paramref name="value"/> is null.</exception>
/// <exception cref="ObjectDisposedException">The <see cref="PersonRecognitionConfiguration"/> already has been disposed of.</exception>
- /// <since_tizen>3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public string FaceRecognitionModelPath
{
get
/// <summary>
/// Represents a result of <see cref="PersonRecognizer"/> instances.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class PersonRecognitionInfo
{
/// <summary>
/// Initializes a new instance of the <see cref="PersonRecognitionInfo"/> class.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public PersonRecognitionInfo(Rectangle area, int label, double confidence)
{
Area = area;
/// <summary>
/// Gets the label that correspond to the recognized person.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public int Label { get; }
/// <summary>
/// Gets the confidence value that correspond to the recognized person.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public double Confidence { get; }
}
}
/// <summary>
/// Provides data for the <see cref="PersonRecognizer.Recognized"/> event.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class PersonRecognizedEventArgs : EventArgs
{
/// <summary>
/// Initializes a new instance of the <see cref="PersonRecognizedEventArgs"/> class.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public PersonRecognizedEventArgs(IEnumerable<PersonRecognitionInfo> recognitionInfo)
{
Recognitions = recognitionInfo;
/// <summary>
/// Gets a set of information that correspond to the recognized persons.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public IEnumerable<PersonRecognitionInfo> Recognitions { get; }
}
}
/// Provides the ability to recognize person on image sources.
/// </summary>
/// <seealso cref="PersonRecognitionConfiguration"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class PersonRecognizer : SurveillanceEngine
{
private const string KeyCount = "NUMBER_OF_PERSONS";
/// Initializes a new instance of the <see cref="PersonRecognizer"/> class.
/// </summary>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public PersonRecognizer() : base(PersonRecognizedEventType)
{
}
/// </summary>
/// <remarks>The event handler will be executed on an internal thread.</remarks>
/// <seealso cref="PersonRecognitionConfiguration.FaceRecognitionModelPath"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public event EventHandler<PersonRecognizedEventArgs> Recognized;
internal override void OnEventDetected(IntPtr trigger, IntPtr source, int streamId,
/// </exception>
/// <exception cref="NotSupportedException">The model file is not supported format or file.</exception>
/// <see cref="SurveillanceSource.Push(MediaVisionSource)"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void AddSource(SurveillanceSource source, PersonRecognitionConfiguration config)
{
if (config == null)
/// <summary>
/// Represents a QR configuration of <see cref="BarcodeGenerator"/>.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class QrConfiguration
{
/// <summary>
/// -or-
/// <paramref name="ecc"/> is invalid.
/// </exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public QrConfiguration(QrMode qrMode, ErrorCorrectionLevel ecc, int version)
{
if (version < 1 || version > 40)
/// <summary>
/// Gets the encoding mode for the message.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public QrMode Mode { get; }
/// <summary>
/// Gets the error correction level.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public ErrorCorrectionLevel ErrorCorrectionLevel { get; }
/// <summary>
/// Gets the QR code version.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public int Version { get; }
}
}
namespace Tizen.Multimedia.Vision
{
/// <summary>
- /// Specifies the supported QR code encoding mode.
+ /// Specifies the supported QR code encoding modes.
/// </summary>
/// <since_tizen> 3</since_tizen>
public enum QrMode
/// <summary>
/// Numeric digits.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Numeric,
/// <summary>
/// Alphanumeric characters, '$', '%', '*', '+', '-', '.', '/' and ':'.
/// <summary>
/// Raw 8-bit bytes.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Byte,
/// <summary>
/// UTF-8 character encoding.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
Utf8
}
}
/// <summary>
/// Represents a region with 4 <see cref="Point"/>s.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class Quadrangle
{
/// <summary>
- /// Initialize a new instance of the <see cref="Quadrangle"/> class with an array of <see cref="Point"/>.
+ /// Initializes a new instance of the <see cref="Quadrangle"/> class with an array of <see cref="Point"/>.
/// </summary>
/// <remarks><paramref name="points"/> must have 4 elements.</remarks>
- /// <param name="points">four points that define object bounding quadrangle.</param>
- /// <exception cref="ArgumentException">The Length of <paramref name="points"/> is not 4.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <param name="points">Four points that define the object bounding quadrangle.</param>
+ /// <exception cref="ArgumentException">The length of <paramref name="points"/> is not 4.</exception>
+ /// <since_tizen> 3 </since_tizen>
public Quadrangle(Point[] points)
{
if (points.Length != 4)
/// <summary>
/// Gets four points that define the object bounding quadrangle.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public Point[] Points { get; }
/// <summary>
/// <summary>
/// SurveillanceEngineConfiguration is a base class for surveillance configurations.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class SurveillanceEngineConfiguration : EngineConfiguration
{
internal SurveillanceEngineConfiguration() : base("face_recognition", "image_recognition")
{
/// <summary>
/// SurveillanceEngine is a base class for surveillance event triggers.
- /// Media Vision Surveillance provides functionality can be utilized for creation of video surveillance systems.
+ /// Media Vision Surveillance provides the functionality which can be utilized for creation of video surveillance systems.
/// </summary>
/// <seealso cref="MovementDetector"/>
/// <seealso cref="PersonAppearanceDetector"/>
/// <seealso cref="PersonRecognizer"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public abstract class SurveillanceEngine : IDisposable
{
private IntPtr _handle = IntPtr.Zero;
/// <summary>
/// Initializes a new instance of the <see cref="SurveillanceEngine"/> class.
/// </summary>
- /// <param name="eventType">The type of the event trigger</param>
+ /// <param name="eventType">The type of the event trigger.</param>
internal SurveillanceEngine(string eventType)
{
EventTriggerCreate(eventType, out _handle).Validate("Failed to create surveillance event trigger.");
}
/// <summary>
- /// Sets and gets ROI (Region Of Interest).
+ /// Sets and gets the ROI (Region Of Interest).
/// </summary>
/// <exception cref="ObjectDisposedException">The <see cref="SurveillanceEngine"/> has already been disposed of.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public Point[] Roi
{
get
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException">The <see cref="SurveillanceEngine"/> has already been disposed of.</exception>
/// <exception cref="ArgumentException"><paramref name="source"/> has not been added.</exception>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void RemoveSource(SurveillanceSource source)
{
if (source == null)
/// <summary>
- /// Releases all resources used by the <see cref="SurveillanceEngine"/> object.
+ /// Releases all the resources used by the <see cref="SurveillanceEngine"/> object.
/// </summary>
public void Dispose()
{
/// Releases the resources used by the <see cref="SurveillanceEngine"/> object.
/// </summary>
/// <param name="disposing">
- /// true to release both managed and unmanaged resources; false to release only unmanaged resources.
+ /// true to release both managed and unmanaged resources; otherwise false to release only unmanaged resources.
/// </param>
protected virtual void Dispose(bool disposing)
{
namespace Tizen.Multimedia.Vision
{
/// <summary>
- /// Provides the ability to push source to surveillance engines.
+ /// Provides the ability to push the source to surveillance engines.
/// </summary>
/// <seealso cref="MovementDetector"/>
/// <seealso cref="PersonAppearanceDetector"/>
/// <seealso cref="PersonRecognizer"/>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public class SurveillanceSource
{
private static int _nextStreamId = int.MinValue;
/// <summary>
/// Initializes a new instance of the <see cref="SurveillanceSource"/> class.
/// </summary>
- /// <since_tizen> 3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public SurveillanceSource()
{
StreamId = GetNextStreamId();
}
/// <summary>
- /// Pushes source to the surveillance system to detect events.
+ /// Pushes the source to the surveillance system to detect events.
/// </summary>
/// <param name="source">The media source used for surveillance.</param>
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <param name="viewUri">The view URI to get records from</param>
/// <param name="BookId">The calendar book ID to filter</param>
/// <param name="calendarDBVersion">The calendar database version</param>
- /// <param name="currentDBVersion">The current calendar database versio></param>
+ /// <param name="currentDBVersion">The current calendar database version</param>
/// <returns>
/// The record list
/// </returns>
/// <summary>
/// Equals CalendarTime
/// </summary>
- /// <param name="other">The CalendarTime to be compared</param>
+ /// <param name="obj">The CalendarTime to be compared</param>
/// <returns>
/// A 32-bit signed integer that indicates the relative order of the objects being compared.
/// </returns>
namespace Tizen.Pims.Calendar
{
- /// <summary>
- /// This class provides enumurations about calendar information.
- /// </summary>
+ /// <summary>
+ /// This class provides enumerations about calendar information.
+ /// </summary>
/// <remarks>
/// Most enumerations are based on vcalendar, icalendar(ver 2.0) specification.
/// https://www.ietf.org/rfc/rfc2445.txt
/// </remarks>
- public static class CalendarTypes
- {
- /// <summary>
- /// Enumeration for Default book
- /// </summary>
- public enum DefaultBook
- {
- /// <summary>
- /// Default event calendar book.
- /// </summary>
- Event,
- /// <summary>
- /// Default Todo calendar book.
- /// </summary>
- Todo,
- /// <summary>
- /// Default Birthday calendar book.
- /// </summary>
- Birthday,
- }
+ public static class CalendarTypes
+ {
+ /// <summary>
+ /// Enumeration for Default book
+ /// </summary>
+ public enum DefaultBook
+ {
+ /// <summary>
+ /// Default event calendar book.
+ /// </summary>
+ Event,
+ /// <summary>
+ /// Default Todo calendar book.
+ /// </summary>
+ Todo,
+ /// <summary>
+ /// Default Birthday calendar book.
+ /// </summary>
+ Birthday,
+ }
- /// <summary>
- /// Enumeration for Store type
- /// </summary>
- public enum StoreType
- {
- /// <summary>
- /// Book type
- /// </summary>
- Book,
- /// <summary>
- /// Event type
- /// </summary>
- Event,
- /// <summary>
- /// Todo type
- /// </summary>
- Todo,
- }
+ /// <summary>
+ /// Enumeration for Store type
+ /// </summary>
+ public enum StoreType
+ {
+ /// <summary>
+ /// Book type
+ /// </summary>
+ Book,
+ /// <summary>
+ /// Event type
+ /// </summary>
+ Event,
+ /// <summary>
+ /// Todo type
+ /// </summary>
+ Todo,
+ }
- /// <summary>
- /// Enumeration for the book mode.
- /// </summary>
- public enum BookMode
- {
- /// <summary>
- /// All modules can read and write records of this calendar_book
- /// </summary>
- Default,
- /// <summary>
- /// All modules can only read records of this calendar book
- /// </summary>
- ReadOnly,
- }
+ /// <summary>
+ /// Enumeration for the book mode.
+ /// </summary>
+ public enum BookMode
+ {
+ /// <summary>
+ /// All modules can read and write records of this calendar_book
+ /// </summary>
+ Default,
+ /// <summary>
+ /// All modules can only read records of this calendar book
+ /// </summary>
+ ReadOnly,
+ }
- /// <summary>
- /// Enumeration for the event status.
- /// </summary>
- public enum EventStatus
- {
- /// <summary>
- /// No status
- /// </summary>
- None = 0x01,
- /// <summary>
- /// The event is tentative
- /// </summary>
- Tentative = 0x02,
- /// <summary>
- /// The event is confirmed
- /// </summary>
- Confirmed = 0x04,
- /// <summary>
- /// The event is cancelled
- /// </summary>
- Cancelled = 0x08,
- }
+ /// <summary>
+ /// Enumeration for the event status.
+ /// </summary>
+ public enum EventStatus
+ {
+ /// <summary>
+ /// No status
+ /// </summary>
+ None = 0x01,
+ /// <summary>
+ /// The event is tentative
+ /// </summary>
+ Tentative = 0x02,
+ /// <summary>
+ /// The event is confirmed
+ /// </summary>
+ Confirmed = 0x04,
+ /// <summary>
+ /// The event is cancelled
+ /// </summary>
+ Cancelled = 0x08,
+ }
- /// <summary>
- /// Enumeration for for the status of a to-do.
- /// </summary>
- public enum TodoStatus
- {
- /// <summary>
- /// No status
- /// </summary>
- None = 0x0100,
- /// <summary>
- /// Needs action status
- /// </summary>
- NeedAction = 0x0200,
- /// <summary>
- /// Completed status
- /// </summary>
- Completed = 0x0400,
- /// <summary>
- /// Work in process status
- /// </summary>
- InProcess = 0x0800,
- /// <summary>
- /// Cancelled status
- /// </summary>
- Cancelled = 0x1000,
- }
+ /// <summary>
+ /// Enumeration for for the status of a to-do.
+ /// </summary>
+ public enum TodoStatus
+ {
+ /// <summary>
+ /// No status
+ /// </summary>
+ None = 0x0100,
+ /// <summary>
+ /// Needs action status
+ /// </summary>
+ NeedAction = 0x0200,
+ /// <summary>
+ /// Completed status
+ /// </summary>
+ Completed = 0x0400,
+ /// <summary>
+ /// Work in process status
+ /// </summary>
+ InProcess = 0x0800,
+ /// <summary>
+ /// Cancelled status
+ /// </summary>
+ Cancelled = 0x1000,
+ }
- /// <summary>
- /// Enumeration for the busy status of an event.
- /// </summary>
- public enum BusyStatus
- {
- /// <summary>
- /// The free status
- /// </summary>
- Free,
- /// <summary>
- /// The busy status
- /// </summary>
- Busy,
- /// <summary>
- /// The unavailable status
- /// </summary>
- Unavailable,
- /// <summary>
- /// The tentative status
- /// </summary>
- Tentative,
- }
+ /// <summary>
+ /// Enumeration for the busy status of an event.
+ /// </summary>
+ public enum BusyStatus
+ {
+ /// <summary>
+ /// The free status
+ /// </summary>
+ Free,
+ /// <summary>
+ /// The busy status
+ /// </summary>
+ Busy,
+ /// <summary>
+ /// The unavailable status
+ /// </summary>
+ Unavailable,
+ /// <summary>
+ /// The tentative status
+ /// </summary>
+ Tentative,
+ }
- /// <summary>
- /// Enumeration for the calendar sensitivity type.
- /// </summary>
- public enum Sensitivity
- {
- /// <summary>
- /// Public Sensitivity
- /// </summary>
- Public,
- /// <summary>
- /// Private Sensitivity
- /// </summary>
- Private,
- /// <summary>
- /// Confidential Sensitivity
- /// </summary>
- Confidential,
- }
+ /// <summary>
+ /// Enumeration for the calendar sensitivity type.
+ /// </summary>
+ public enum Sensitivity
+ {
+ /// <summary>
+ /// Public Sensitivity
+ /// </summary>
+ Public,
+ /// <summary>
+ /// Private Sensitivity
+ /// </summary>
+ Private,
+ /// <summary>
+ /// Confidential Sensitivity
+ /// </summary>
+ Confidential,
+ }
- /// <summary>
- /// Enumeration for the meeting status.
- /// </summary>
- public enum MeetingStatus
- {
- /// <summary>
- /// No meeting
- /// </summary>
- NoMeeting,
- /// <summary>
- /// Meeting exists
- /// </summary>
- Meeting,
- /// <summary>
- /// Meeting received
- /// </summary>
- Received,
- /// <summary>
- /// Meeting cancelled
- /// </summary>
- Cancelled,
- }
+ /// <summary>
+ /// Enumeration for the meeting status.
+ /// </summary>
+ public enum MeetingStatus
+ {
+ /// <summary>
+ /// No meeting
+ /// </summary>
+ NoMeeting,
+ /// <summary>
+ /// Meeting exists
+ /// </summary>
+ Meeting,
+ /// <summary>
+ /// Meeting received
+ /// </summary>
+ Received,
+ /// <summary>
+ /// Meeting cancelled
+ /// </summary>
+ Cancelled,
+ }
- /// <summary>
- /// Enumeration for the calendar event item's priority
- /// </summary>
- public enum Priority
- {
- /// <summary>
- /// No priority
- /// </summary>
- None = 0x01,
- /// <summary>
- /// Low priority
- /// </summary>
- High = 0x02,
- /// <summary>
- /// Normal priority
- /// </summary>
- Normal = 0x04,
- /// <summary>
- /// High priority
- /// </summary>
- Low = 0x08,
- }
+ /// <summary>
+ /// Enumeration for the calendar event item's priority
+ /// </summary>
+ public enum Priority
+ {
+ /// <summary>
+ /// No priority
+ /// </summary>
+ None = 0x01,
+ /// <summary>
+ /// Low priority
+ /// </summary>
+ High = 0x02,
+ /// <summary>
+ /// Normal priority
+ /// </summary>
+ Normal = 0x04,
+ /// <summary>
+ /// High priority
+ /// </summary>
+ Low = 0x08,
+ }
- /// <summary>
- /// Enumeration for the frequency of an event's recurrence.
- /// </summary>
- public enum Recurrence
- {
- /// <summary>
- /// No recurrence event
- /// </summary>
- None,
- /// <summary>
- /// An event occurs every day
- /// </summary>
- Daily,
- /// <summary>
- /// An event occurs on the same day of every week. According to the week flag, the event will recur every day of the week
- /// </summary>
- Weekly,
- /// <summary>
- /// An event occurs on the same day of every month
- /// </summary>
- Monthly,
- /// <summary>
- /// An event occurs on the same day of every year
- /// </summary>
- Yearly,
- }
+ /// <summary>
+ /// Enumeration for the frequency of an event's recurrence.
+ /// </summary>
+ public enum Recurrence
+ {
+ /// <summary>
+ /// No recurrence event
+ /// </summary>
+ None,
+ /// <summary>
+ /// An event occurs every day
+ /// </summary>
+ Daily,
+ /// <summary>
+ /// An event occurs on the same day of every week. According to the week flag, the event will recur every day of the week
+ /// </summary>
+ Weekly,
+ /// <summary>
+ /// An event occurs on the same day of every month
+ /// </summary>
+ Monthly,
+ /// <summary>
+ /// An event occurs on the same day of every year
+ /// </summary>
+ Yearly,
+ }
- /// <summary>
- /// Enumeration for the range type.
- /// </summary>
- public enum RangeType
- {
- /// <summary>
- /// Range until
- /// </summary>
- Until,
- /// <summary>
- /// Range count
- /// </summary>
- Count,
- /// <summary>
- /// No range
- /// </summary>
- None,
- }
+ /// <summary>
+ /// Enumeration for the range type.
+ /// </summary>
+ public enum RangeType
+ {
+ /// <summary>
+ /// Range until
+ /// </summary>
+ Until,
+ /// <summary>
+ /// Range count
+ /// </summary>
+ Count,
+ /// <summary>
+ /// No range
+ /// </summary>
+ None,
+ }
- /// <summary>
- /// Enumeration for the system type.
- /// </summary>
- public enum SystemType
- {
- /// <summary>
- /// Locale's default calendar
- /// </summary>
- Default,
- /// <summary>
- /// Locale's default calendar
- /// </summary>
- Gregorian,
- /// <summary>
- /// East Asian lunisolar calendar
- /// </summary>
- Lunisolar,
- }
+ /// <summary>
+ /// Enumeration for the system type.
+ /// </summary>
+ public enum SystemType
+ {
+ /// <summary>
+ /// Locale's default calendar
+ /// </summary>
+ Default,
+ /// <summary>
+ /// Locale's default calendar
+ /// </summary>
+ Gregorian,
+ /// <summary>
+ /// East Asian lunisolar calendar
+ /// </summary>
+ Lunisolar,
+ }
- /// <summary>
- /// Enumeration for the alarm time unit type of an event, such as minutes, hours, days, and so on.
- /// </summary>
- public enum TickUnit
- {
- /// <summary>
- /// No reminder set
- /// </summary>
- None = -1,
- /// <summary>
- /// Specific in seconds
- /// </summary>
- Specific = 1,
- /// <summary>
- /// Alarm time unit in minutes
- /// </summary>
- Minute = 60,
- /// <summary>
- /// Alarm time unit in hours
- /// </summary>
- Hour = 3600,
- /// <summary>
- /// Alarm time unit in days
- /// </summary>
- Day = 86400,
- /// <summary>
- /// Alarm time unit in weeks
- /// </summary>
- Week = 604800,
- }
+ /// <summary>
+ /// Enumeration for the alarm time unit type of an event, such as minutes, hours, days, and so on.
+ /// </summary>
+ public enum TickUnit
+ {
+ /// <summary>
+ /// No reminder set
+ /// </summary>
+ None = -1,
+ /// <summary>
+ /// Specific in seconds
+ /// </summary>
+ Specific = 1,
+ /// <summary>
+ /// Alarm time unit in minutes
+ /// </summary>
+ Minute = 60,
+ /// <summary>
+ /// Alarm time unit in hours
+ /// </summary>
+ Hour = 3600,
+ /// <summary>
+ /// Alarm time unit in days
+ /// </summary>
+ Day = 86400,
+ /// <summary>
+ /// Alarm time unit in weeks
+ /// </summary>
+ Week = 604800,
+ }
- /// <summary>
- /// Enumeration for weekdays.
- /// </summary>
- public enum WeekDay
- {
- /// <summary>
- /// Sunday
- /// </summary>
- Sunday = 1,
- /// <summary>
- /// Monday
- /// </summary>
- Monday,
- /// <summary>
- /// Tuesday
- /// </summary>
- Tuesday,
- /// <summary>
- /// Wednesday
- /// </summary>
- Wednesday,
- /// <summary>
- /// Thursday
- /// </summary>
- Thursday,
- /// <summary>
- /// Friday
- /// </summary>
- Friday,
- /// <summary>
- /// Saturday
- /// </summary>
- Saturday,
- }
+ /// <summary>
+ /// Enumeration for weekdays.
+ /// </summary>
+ public enum WeekDay
+ {
+ /// <summary>
+ /// Sunday
+ /// </summary>
+ Sunday = 1,
+ /// <summary>
+ /// Monday
+ /// </summary>
+ Monday,
+ /// <summary>
+ /// Tuesday
+ /// </summary>
+ Tuesday,
+ /// <summary>
+ /// Wednesday
+ /// </summary>
+ Wednesday,
+ /// <summary>
+ /// Thursday
+ /// </summary>
+ Thursday,
+ /// <summary>
+ /// Friday
+ /// </summary>
+ Friday,
+ /// <summary>
+ /// Saturday
+ /// </summary>
+ Saturday,
+ }
- /// <summary>
- /// Enumeration to specify the type of calendar user specified by the property.
- /// </summary>
- public enum Cutype
- {
- /// <summary>
+ /// <summary>
+ /// Enumeration to specify the type of calendar user specified by the property.
+ /// </summary>
+ public enum Cutype
+ {
+ /// <summary>
/// An individual
- /// </summary>
- Individual,
- /// <summary>
+ /// </summary>
+ Individual,
+ /// <summary>
/// A group of individuals
- /// </summary>
- Group,
- /// <summary>
+ /// </summary>
+ Group,
+ /// <summary>
/// A physical resource
- /// </summary>
- Resource,
- /// <summary>
+ /// </summary>
+ Resource,
+ /// <summary>
/// A room resource
- /// </summary>
- Room,
- /// <summary>
+ /// </summary>
+ Room,
+ /// <summary>
/// Otherwise not known
- /// </summary>
- Unknown,
- }
+ /// </summary>
+ Unknown,
+ }
- /// <summary>
- /// Enumeration for the attendee role.
- /// </summary>
- public enum AttendeeRole
- {
- /// <summary>
- /// Participation is required
- /// </summary>
- ReqParticipant,
- /// <summary>
- /// Accepted status
- /// </summary>
- OptParticipant,
- /// <summary>
- /// Non-Participant
- /// </summary>
- NonParticipant,
- /// <summary>
- /// Chairperson
- /// </summary>
- Chair,
- }
+ /// <summary>
+ /// Enumeration for the attendee role.
+ /// </summary>
+ public enum AttendeeRole
+ {
+ /// <summary>
+ /// Participation is required
+ /// </summary>
+ ReqParticipant,
+ /// <summary>
+ /// Accepted status
+ /// </summary>
+ OptParticipant,
+ /// <summary>
+ /// Non-Participant
+ /// </summary>
+ NonParticipant,
+ /// <summary>
+ /// Chairperson
+ /// </summary>
+ Chair,
+ }
- /// <summary>
- /// Enumeration for the attendee status.
- /// </summary>
- public enum AttendeeStatus
- {
- /// <summary>
- /// Pending status
- /// </summary>
- Pending,
- /// <summary>
- /// Accepted status
- /// </summary>
- Accepted,
- /// <summary>
- /// Declined status
- /// </summary>
- Declined,
- /// <summary>
- /// Tentative status
- /// </summary>
- Tentative,
- /// <summary>
- /// Delegated status
- /// </summary>
- Delegated,
- /// <summary>
- /// Completed status
- /// </summary>
- Completed,
- /// <summary>
- /// In process status
- /// </summary>
- InProcess,
- }
+ /// <summary>
+ /// Enumeration for the attendee status.
+ /// </summary>
+ public enum AttendeeStatus
+ {
+ /// <summary>
+ /// Pending status
+ /// </summary>
+ Pending,
+ /// <summary>
+ /// Accepted status
+ /// </summary>
+ Accepted,
+ /// <summary>
+ /// Declined status
+ /// </summary>
+ Declined,
+ /// <summary>
+ /// Tentative status
+ /// </summary>
+ Tentative,
+ /// <summary>
+ /// Delegated status
+ /// </summary>
+ Delegated,
+ /// <summary>
+ /// Completed status
+ /// </summary>
+ Completed,
+ /// <summary>
+ /// In process status
+ /// </summary>
+ InProcess,
+ }
- /// <summary>
- /// Enumeration for the alarm action.
- /// </summary>
- public enum Action
- {
- /// <summary>
- /// Audio action
- /// </summary>
- Audio,
- /// <summary>
- /// Display action
- /// </summary>
- Display,
- /// <summary>
- /// Email action
- /// </summary>
- Email,
- }
- }
+ /// <summary>
+ /// Enumeration for the alarm action.
+ /// </summary>
+ public enum Action
+ {
+ /// <summary>
+ /// Audio action
+ /// </summary>
+ Audio,
+ /// <summary>
+ /// Display action
+ /// </summary>
+ Display,
+ /// <summary>
+ /// Email action
+ /// </summary>
+ Email,
+ }
+ }
}
/// Parsing vcalendar file callback function.
/// </summary>
/// <param name="record">The record</param>
- /// <returns></returns>
+ /// <returns>true to continue with the next iteration of the loop, otherwise false to break out of the loop</returns>
public delegate bool ParseCallback(CalendarRecord record);
/// <summary>
}
/// <summary>
- /// The parameter which data is combinded.
+ /// The parameter which data is combined.
/// </summary>
/// <value>
/// The combination of reminder data(Value string like id=value&time=value&tick=value&unit=value&type=value)
namespace Tizen.Security.SecureRepository
{
/// <summary>
- /// Class that represents a certificate.
+ /// The class that represents a certificate.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class Certificate
{
/// <summary>
- /// Load Certificate from the given file path.
+ /// Loads Certificate from the given file path.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <param name="filePath">The path of certificate file to be loaded.</param>
/// <returns>Loaded certificate class instance.</returns>
/// <exception cref="ArgumentNullException">
- /// filePath should not be null
+ /// The filePath should not be null
/// </exception>
/// <exception cref="InvalidOperationException">
/// Invalid certificate file format. Provided file path does not exist or
public class CertificateManager : Manager
{
/// <summary>
- /// Gets a certificate from secure repository.
+ /// Gets a certificate from the secure repository.
/// </summary>
/// <since_tizen> 3 </since_tizen>
- /// <param name="alias">The name of a certificate to retrieve.</param>
+ /// <param name="alias">The name of a certificate to be retrieved.</param>
/// <param name="password">
/// The password used in decrypting a certificate value. If password of
/// policy is provided in SaveCertificate(), the same password should be
/// </param>
/// <returns>A certificate specified by alias.</returns>
/// <exception cref="ArgumentNullException">
- /// Alias argument is null
+ /// The alias argument is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// Alias argument is invalid format.
+ /// The alias argument is in an invalid format.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// Certificate does not exist with the alias or certificate-protecting
+ /// The certificate does not exist with the alias or certificate-protecting
/// password isn't matched.
/// </exception>
static public Certificate Get(string alias, string password)
}
/// <summary>
- /// Gets all alias of certificates which the client can access.
+ /// Gets all aliases of certificates, which the client can access.
/// </summary>
/// <since_tizen> 3 </since_tizen>
- /// <returns>All alias of certificates which the client can access.</returns>
+ /// <returns>All aliases of certificates, which the client can access.</returns>
/// <exception cref="ArgumentException">No alias to get.</exception>
static public IEnumerable<string> GetAliases()
{
}
/// <summary>
- /// Stores a certificate inside secure repository based on the provided policy.
+ /// Stores a certificate inside the secure repository based on the provided policy.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <param name="alias">The name of a certificate to be stored.</param>
/// Any of argument is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// Alias argument is invalid format. cert argument is invalid format.
+ /// The alias argument is in the invalid format. cert argument is in the invalid format.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// Certificate with alias does already exist.
+ /// The certificate with alias already exist.
/// </exception>
static public void Save(string alias, Certificate cert, Policy policy)
{
/// </param>
/// <returns>A newly created certificate chain.</returns>
/// <exception cref="ArgumentNullException">
- /// certificate argument is null.
+ /// The certificate argument is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// Some of certificate in arguments is invalid.
+ /// Some of the certificates in arguments are invalid.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// Some of certificate in arguments is expired or not valid yet.
+ /// Some of the certificates in arguments are expired or not valid yet.
/// Certificate cannot build chain.
- /// Root certificate is not in trusted system certificate store.
+ /// The root certificate is not in the trusted system certificate store.
/// </exception>
/// <remarks>
/// The trusted root certificate of the chain should exist in the system's
/// certificate storage.
/// </remarks>
/// <remarks>
- /// The trusted root certificate of the chain in system's certificate storage
+ /// The trusted root certificate of the chain in the system's certificate storage
/// is added to the certificate chain.
/// </remarks>
static public IEnumerable<Certificate> GetCertificateChain(
/// </param>
/// <returns>A newly created certificate chain.</returns>
/// <exception cref="ArgumentNullException">
- /// certificate argument is null.
+ /// The certificate argument is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// Some of certificate in arguments is invalid.
+ /// Some of the certificates in arguments are invalid.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// Some of certificate in arguments is expired or not valid yet.
+ /// Some of the certificates in arguments are expired or not valid yet.
/// Certificate cannot build chain.
- /// Root certificate is not in trusted system certificate store.
+ /// The root certificate is not in the trusted system certificate store.
/// </exception>
/// <remarks>
- /// The trusted root certificate of the chain in system's certificate storage
+ /// The trusted root certificate of the chain in the system's certificate storage
/// is added to the certificate chain.
/// </remarks>
static public IEnumerable<Certificate> GetCertificateChain(
}
/// <summary>
- /// Perform OCSP which checks certificate is whether revoked or not.
+ /// Perform OCSP, which checks whether the certificate is revoked or not.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <param name="certificateChain">
- /// Valid certificate chain to perform OCSP check.
+ /// Valid certificate chain to perform the OCSP check.
/// </param>
- /// <returns>A status result of OCSP check.</returns>
+ /// <returns>A status result of the OCSP check.</returns>
/// <exception cref="ArgumentNullException">
- /// certificateChain argument is null.
+ /// The certificateChain argument is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// certificateChain is not valid chain or certificate.
+ /// The certificateChain is not valid chain or certificate.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// some of certificate in chain is expired or not valid yet.
+ /// Some of the certificates in chain are expired or not valid yet.
/// </exception>
static public OcspStatus CheckOcsp(IEnumerable<Certificate> certificateChain)
{
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// A class holding parameters for AES algorithm with CBC mode.
+ /// A class for holding parameters for the AES algorithm with the CBC mode.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class AesCbcCipherParameters : AesCipherParameters
{
/// <summary>
- /// A default constructor
+ /// A default constructor.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <remarks>The CipherAlgorithmType in CipherParameters is set to CipherAlgorithmType.AesCbc.</remarks>
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// A class holding parameters for AES algorithm with CFB mode.
+ /// A class for holding parameters for the AES algorithm with the CFB mode.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class AesCfbCipherParameters : AesCipherParameters
{
/// <summary>
- /// A default constructor
+ /// A default constructor.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <remarks>The CipherAlgorithmType in CipherParameters is set to CipherAlgorithmType.AesCfb.</remarks>
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// A abstract class holding parameters for AES algorithm.
+ /// An abstract class for holding parameters for the AES algorithm.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public abstract class AesCipherParameters : CipherParameters
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// A class holding parameters for AES algorithm with counter mode.
+ /// A class for holding parameters for the AES algorithm with the counter mode.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class AesCtrCipherParameters : AesCipherParameters
{
/// <summary>
- /// A default constructor
+ /// A default constructor.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <remarks>The CipherAlgorithmType in CipherParameters is set to CipherAlgorithmType.AesCtr.</remarks>
}
/// <summary>
- /// Length of counter block in bits.
+ /// Length of the counter block in bits.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <remarks>Optional, only 128b is supported at the moment.</remarks>
- /// <exception cref="ArgumentOutOfRangeException">value should be positive.</exception>
+ /// <exception cref="ArgumentOutOfRangeException">The value should be positive.</exception>
public long CounterLength
{
get
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// A class holding parameters for AES algorithm with GCM mode.
+ /// A class for holding parameters for the AES algorithm with the GCM mode.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class AesGcmCipherParameters : AesCipherParameters
{
/// <summary>
- /// A default constructor
+ /// A default constructor.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <remarks>The CipherAlgorithmType in CipherParameters is set to CipherAlgorithmType.AesGcm.</remarks>
/// GCM tag length in bits.
/// </summary>
/// <since_tizen> 3 </since_tizen>
- /// <remarks>One of {32, 64, 96, 104, 112, 120, 128} (optional, if not present the length 128 is used.</remarks>
- /// <exception cref="ArgumentOutOfRangeException">TagLength should be one of {32, 64, 96, 104, 112, 120, 128}</exception>
+ /// <remarks>One of {32, 64, 96, 104, 112, 120, 128} (optional), if not present the length 128 is used.</remarks>
+ /// <exception cref="ArgumentOutOfRangeException">TagLength should be one of {32, 64, 96, 104, 112, 120, 128}.</exception>
public long TagLength
{
get
}
/// <summary>
- /// Additional authentication data(optional)
+ /// Additional authentication data (optional).
/// </summary>
/// <since_tizen> 3 </since_tizen>
public byte[] AAD
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// This class provides the methods encrypting and decrypting data.
+ /// This class provides the methods for encrypting and decrypting data.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class Cipher
}
/// <summary>
- /// Decrypts data using selected key and algorithm.
+ /// Decrypts data using the selected key and the algorithm.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <param name="keyAlias">Alias of the key to be used for decryption.</param>
/// <param name="password">
/// The password used in decrypting a key value. If password of policy is
- /// provided in SaveKey(), the same password should be provided
+ /// provided in SaveKey(), the same password should be provided.
/// </param>
/// <param name="cipherText">
/// Data to be decrypted (some algorithms may require additional information
/// </param>
/// <returns>Decrypted data.</returns>
/// <exception cref="ArgumentNullException">
- /// keyAlias or cipherText is null.
+ /// The keyAlias or cipherText is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// Mandatory algorithm parameter is missing or invalid.
- /// Optional algorithm parameter is invalid.
+ /// The mandatory algorithm parameter is missing or invalid.
+ /// The optional algorithm parameter is invalid.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// Key-protecting password isn't matched.
- /// Key does not exist with keyAlias.
+ /// The key-protecting password isn't matched.
+ /// The key does not exist with the keyAlias.
/// </exception>
/// <remarks>
/// The key type specified by keyAlias should be compatible with the algorithm
/// provided in SaveKey(), the same password should be provided.
/// </param>
/// <param name="plainText">
- /// Data to be encrypted. In case of AES algorithm there are no restrictions on
- /// the size of data. For RSA the size must be smaller or equal to (key_size_in
- /// bytes - 42). Example: for 1024 RSA key the maximum data size is
+ /// Data to be encrypted. In case of the AES algorithm, there are no restrictions on
+ /// the size of data. For RSA, the size must be smaller or equal to (key_size_in
+ /// bytes - 42). Example: For 1024 RSA key, the maximum data size is
/// 1024/8 - 42 = 86.
/// </param>
/// <returns>Encrypted data.</returns>
/// <exception cref="ArgumentNullException">
- /// keyAlias or plainText is null.
+ /// The keyAlias or plainText is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// Mandatory algorithm parameter is missing or invalid.
- /// Optional algorithm parameter is invalid.
+ /// The mandatory algorithm parameter is missing or invalid.
+ /// The optional algorithm parameter is invalid.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// Key-protecting password isn't matched.
- /// Key does not exist with keyAlias.
+ /// The key-protecting password isn't matched.
+ /// The key does not exist with the keyAlias.
/// </exception>
/// <remarks>
- /// The key type specified by keyAlias should be compatible with the algorithm
+ /// The key type specified by the keyAlias should be compatible with the algorithm
/// specified in Parameters.
/// </remarks>
public byte[] Encrypt(string keyAlias, string password, byte[] plainText)
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// Enumeration for crypto cipher algorithm types.
+ /// Enumeration for the crypto cipher algorithm types.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public enum CipherAlgorithmType : int
{
/// <summary>
- /// AES-CTR algorithm
+ /// The AES-CTR algorithm.
/// Supported parameters:
/// - ParameterName.AlgorithmType = AesCtr(mandatory),
/// - ParameterName.IV = 16 - byte initialization vector(mandatory)
/// </summary>
AesCtr = 0x01,
/// <summary>
- /// AES-CBC algorithm
+ /// The AES-CBC algorithm.
/// Supported parameters:
/// - ParameterName.AlgorithmType = AesCbc(mandatory),
/// - ParameterName.IV = 16-byte initialization vector(mandatory)
/// </summary>
AesCbc,
/// <summary>
- /// AES-GCM algorithm
+ /// The AES-GCM algorithm.
/// Supported parameters:
/// - ParameterName.AlgorithmType = AesGcm(mandatory),
/// - ParameterName.IV = initialization vector(mandatory)
/// </summary>
AesGcm,
/// <summary>
- /// AES-CFB algorithm
+ /// Th AES-CFB algorithm.
/// Supported parameters:
/// - ParameterName.AlgorithmType = AesCfb(mandatory),
/// - ParameterName.IV = 16-byte initialization vector(mandatory)
/// </summary>
AesCfb,
/// <summary>
- /// RSA-OAEP algorithm
+ /// The RSA-OAEP algorithm.
/// Supported parameters:
/// - ParameterName.AlgorithmType = RsaOaep(required),
/// - ParameterName.Label = label to be associated with the message
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// Enumeration for cipher algorithm parameters.
+ /// Enumeration for the cipher algorithm parameters.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public enum CipherParameterName : int
{
/// <summary>
- /// Algorithm Type
+ /// The Algorithm Type.
/// </summary>
AlgorithmType = 0x01,
/// <summary>
- /// Initial Vector, 16B buffer (up to 2^64-1 bytes long in case of AES GCM)
+ /// Initial Vector, 16B buffer (up to 2^64-1 bytes long in case of AES GCM).
/// </summary>
IV = 101,
/// <summary>
- /// Integer - ctr length in bits
+ /// Integer - ctr length in bits.
/// </summary>
CounterLength = 102,
/// <summary>
- /// Additional authenticated data(AAD)
+ /// Additional authenticated data(AAD).
/// </summary>
AAD = 103,
/// <summary>
- /// Tag Length
+ /// Tag Length.
/// </summary>
TagLength = 104,
/// <summary>
- /// Label
+ /// Label.
/// </summary>
Label = 105
}
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// A abstract class holding parameters for encryption and decryption.
+ /// An abstract class for holding parameters for encryption and decryption.
/// </summary>
/// <since_tizen> 3 </since_tizen>
abstract public class CipherParameters
private SafeCipherParametersHandle _handle;
/// <summary>
- /// Cipher algorithm type.
+ /// The Cipher algorithm type.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public CipherAlgorithmType Algorithm
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// A class holding parameters for DSA signature algorithm.
+ /// A class for holding parameters for the DSA signature algorithm.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class DsaSignatureParameters : SignatureParameters
{
/// <summary>
- /// A default constructor
+ /// A default constructor.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public DsaSignatureParameters() : base(SignatureAlgorithmType.Dsa)
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// A class holding parameters for ECDSA signature algorithm.
+ /// A class for holding parameters for the ECDSA signature algorithm.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class EcdsaSignatureParameters : SignatureParameters
{
/// <summary>
- /// A default constructor
+ /// A default constructor.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public EcdsaSignatureParameters() : base(SignatureAlgorithmType.Ecdsa)
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// Enumeration for hash algorithm
+ /// Enumeration for the hash algorithm.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public enum HashAlgorithm : int
{
/// <summary>
- /// No Hash Algorithm
+ /// The no hash algorithm.
/// </summary>
None = 0,
/// <summary>
- /// Hash Algorithm SHA1
+ /// The hash algorithm SHA1.
/// </summary>
Sha1,
/// <summary>
- /// Hash Algorithm SHA256
+ /// The hash algorithm SHA256.
/// </summary>
Sha256,
/// <summary>
- /// Hash Algorithm SHA384
+ /// The hash algorithm SHA384.
/// </summary>
Sha384,
/// <summary>
- /// Hash Algorithm SHA512
+ /// The hash algorithm SHA512.
/// </summary>
Sha512
}
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// A class holding parameters for RSA algorithm with OAEP mode.
+ /// A class for holding parameters for the RSA algorithm with the OAEP mode.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class RsaOaepCipherParameters : CipherParameters
{
/// <summary>
- /// A default constructor
+ /// A default constructor.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <remarks>The CipherAlgorithmType in CipherParameters is set to CipherAlgorithmType.RsaOaep.</remarks>
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// Enumeration for RSA padding algorithm
+ /// Enumeration for the RSA padding algorithm.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public enum RsaPaddingAlgorithm : int
{
/// <summary>
- /// No Padding
+ /// No padding.
/// </summary>
None = 0,
/// <summary>
- /// PKCS#1 Padding
+ /// PKCS#1 padding.
/// </summary>
Pkcs1,
/// <summary>
- /// X9.31 padding
+ /// X9.31 padding.
/// </summary>
X931
}
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// A class holding parameters for RSA signature algorithm.
+ /// A class for holding parameters for the RSA signature algorithm.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class RsaSignatureParameters : SignatureParameters
{
/// <summary>
- /// A default constructor
+ /// A default constructor.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <remarks>The RsaPadding is set to RsaPaddingAlgorithm.None.</remarks>
}
/// <summary>
- /// RSA padding algorithm
+ /// The RSA padding algorithm.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public RsaPaddingAlgorithm RsaPadding
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// This class provides the methods creating and verifying a signature.
+ /// This class provides the methods for creating and verifying a signature.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class Signature
/// <param name="message">The message that is signed with a private key.</param>
/// <returns>A newly created signature.</returns>
/// <exception cref="ArgumentNullException">
- /// privateKeyAlias or message is null.
+ /// The privateKeyAlias or message is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// privateKeyAlias is invalid format.
+ /// The privateKeyAlias is invalid format.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// Key-protecting password isn't matched.
- /// Key does not exist with privateKeyAlias.
+ /// The key-protecting password isn't matched.
+ /// The key does not exist with the privateKeyAlias.
/// </exception>
/// <remarks>
- /// The key type specified by privateKeyAlias should be compatible with the
+ /// The key type specified by the privateKeyAlias should be compatible with the
/// algorithm specified in Parameters.
/// </remarks>
/// <remarks>
- /// If password of policy is provided during storing a key, the same password
+ /// If the password of policy is provided during storing a key, the same password
/// should be provided.
/// </remarks>
public byte[] Sign(string privateKeyAlias, string password, byte[] message)
/// The signature status. True is returned when the signature is valid.
/// </returns>
/// <exception cref="ArgumentNullException">
- /// publicKeyAlias, message or signature is null.
+ /// The publicKeyAlias, message or signature is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// publicKeyAlias is invalid format.
+ /// The publicKeyAlias is invalid format.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// Key-protecting password isn't matched.
- /// Key does not exist with publicKeyAlias.
+ /// The key-protecting password isn't matched.
+ /// The key does not exist with the publicKeyAlias.
/// </exception>
/// <remarks>
/// The key type specified by publicKeyAlias should be compatible with the
public enum SignatureAlgorithmType : int
{
/// <summary>
- /// RSA signature algorithm
+ /// The RSA signature algorithm.
/// </summary>
Rsa = 0x01,
/// <summary>
- /// DSA signature algorithm
+ /// The DSA signature algorithm.
/// </summary>
Dsa,
/// <summary>
- /// ECDSA signature algorithm
+ /// The ECDSA signature algorithm.
/// </summary>
Ecdsa
}
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// Enumeration for signature algorithm parameters.
+ /// Enumeration for the signature algorithm parameters.
/// </summary>
/// <since_tizen> 3 </since_tizen>
internal enum SignatureParameterName : int
{
/// <summary>
- /// Signaturea Algorithm Type
+ /// The signature algorithm type.
/// </summary>
AlgorithmType = 0x01,
/// <summary>
- /// Hash Algorithm Type
+ /// The hash algorithm type.
/// </summary>
HashAlgorithm,
/// <summary>
- /// RSA Padding Algorithm Type
+ /// The RSA padding algorithm type.
/// </summary>
RsaPaddingAlgorithm
}
namespace Tizen.Security.SecureRepository.Crypto
{
/// <summary>
- /// A abstract class holding parameters for signing and verification.
+ /// An abstract class for holding parameters for signing and verification.
/// </summary>
/// <since_tizen> 3 </since_tizen>
abstract public class SignatureParameters
private Dictionary<SignatureParameterName, int> _parameters;
/// <summary>
- /// Signature algorithm type.
+ /// The signature algorithm type.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public SignatureAlgorithmType SignatureAlgorithm
}
/// <summary>
- /// Hash algorithm used in signing anve verification.
+ /// The hash algorithm used in signing anve verification.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public HashAlgorithm HashAlgorithm
namespace Tizen.Security.SecureRepository
{
/// <summary>
- /// Enumeration for data format
+ /// Enumeration for data format.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public enum DataFormat : int
{
/// <summary>
- /// DER format base64 encoded data
+ /// The DER format base64 encoded data.
/// </summary>
DerBase64 = 0,
/// <summary>
- /// DER encoded data
+ /// The DER encoded data.
/// </summary>
Der,
/// <summary>
- /// PEM encoded data. It consists of the DER format base64 encoded
+ /// The PEM encoded data. It consists of the DER format base64 encoded
/// with additional header and footer lines.
/// </summary>
Pem
namespace Tizen.Security.SecureRepository
{
/// <summary>
- /// This class provides the methods storing and retrieving data.
+ /// This class provides the methods for storing and retrieving data.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class DataManager : Manager
{
/// <summary>
- /// Gets data from secure repository.
+ /// Gets data from the secure repository.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <param name="alias">The name of a certificate to retrieve.</param>
/// </param>
/// <returns>Data specified by alias.</returns>
/// <exception cref="ArgumentNullException">
- /// Alias argument is null.
+ /// The alias argument is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// Alias argument is invalid format.
+ /// The alias argument is in the invalid format.
/// </exception>
/// <exception cref="InvalidOperationException">
/// Data does not exist with the alias or data-protecting password isn't matched.
}
/// <summary>
- /// Gets all alias of data which the client can access.
+ /// Gets all aliases of data, which the client can access.
/// </summary>
/// <since_tizen> 3 </since_tizen>
- /// <returns>All alias of data which the client can access.</returns>
+ /// <returns>All aliases of data, which the client can access.</returns>
/// <exception cref="ArgumentException">No alias to get.</exception>
static public IEnumerable<string> GetAliases()
{
}
/// <summary>
- /// Stores data inside secure repository based on the provided policy.
+ /// Stores data inside the secure repository based on the provided policy.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <param name="alias">The name of data to be stored.</param>
/// Any of argument is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// Alias argument is invalid format. Data policy cannot be unextractable.
+ /// The alias argument is in the invalid format. Data policy cannot be unextractable.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// Data with alias does already exist.
+ /// Data with alias already exist.
/// </exception>
static public void Save(string alias, byte[] data, Policy policy)
{
namespace Tizen.Security.SecureRepository
{
/// <summary>
- /// Enumeration for elliptic curve
+ /// Enumeration for the elliptic curve.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public enum EllipticCurveType : int
{
/// <summary>
- /// Elliptic curve domain "secp192r1" listed in "SEC 2" recommended elliptic curve domain
+ /// The elliptic curve domain "secp192r1" listed in "SEC 2" recommended elliptic curve domain.
/// </summary>
Prime192V1 = 0,
/// <summary>
- /// "SEC 2" recommended elliptic curve domain - secp256r1
+ /// The "SEC 2" recommended elliptic curve domain - secp256r1.
/// </summary>
Prime256V1,
/// <summary>
- /// NIST curve P-384(covers "secp384r1", the elliptic curve domain listed in See SEC 2
+ /// The NIST curve P-384(covers "secp384r1", the elliptic curve domain listed in See SEC 2.
/// </summary>
Secp384R1
}
namespace Tizen.Security.SecureRepository
{
/// <summary>
- /// Class that represents a key.
+ /// The class that represents a key.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class Key
namespace Tizen.Security.SecureRepository
{
/// <summary>
- /// This class provides the methods storing, retrieving, and creating keys.
+ /// This class provides the methods for storing, retrieving, and creating keys.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class KeyManager : Manager
{
/// <summary>
- /// Gets a key from secure repository.
+ /// Gets a key from the secure repository.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <param name="alias">The name of a key to retrieve.</param>
/// </param>
/// <returns>A key specified by alias.</returns>
/// <exception cref="ArgumentNullException">
- /// Alias argument is null.
+ /// The alias argument is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// Alias argument is invalid format.
+ /// The alias argument is in the invalid format.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// Key does not exist with the alias or key-protecting password isn't matched.
+ /// The key does not exist with the alias or the key-protecting password isn't matched.
/// </exception>
static public Key Get(string alias, string password)
{
}
/// <summary>
- /// Gets all alias of keys which the client can access.
+ /// Gets all aliases of keys, which the client can access.
/// </summary>
/// <since_tizen> 3 </since_tizen>
- /// <returns>All alias of keys which the client can access.</returns>
+ /// <returns>All aliases of keys, which the client can access.</returns>
/// <exception cref="ArgumentException">No alias to get.</exception>
static public IEnumerable<string> GetAliases()
{
}
/// <summary>
- /// Stores a key inside secure repository based on the provided policy.
+ /// Stores a key inside the secure repository based on the provided policy.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <param name="alias">The name of a key to be stored.</param>
/// Any of argument is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// Alias argument is invalid format. key argument is invalid format.
+ /// The alias argument is in the invalid format. key argument is in the invalid format.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// Key with alias does already exist.
+ /// The key with alias does already exist.
/// </exception>
/// <remarks>
- /// Type in key may be set to KeyType.None as an input.
- /// Type is determined inside secure reposioty during storing keys.
+ /// The type in key may be set to KeyType.None as an input.
+ /// The type is determined inside the secure reposioty during storing keys.
/// </remarks>
/// <remarks>
- /// If password in policy is provided, the key is additionally encrypted with
+ /// If the password in policy is provided, the key is additionally encrypted with
/// the password in policy.
/// </remarks>
static public void Save(string alias, Key key, Policy policy)
}
/// <summary>
- /// Creates RSA private/public key pair and stores them inside secure repository
+ /// Creates the RSA private/public key pair and stores them inside the secure repository
/// based on each policy.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// Any of argument is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// size is invalid. privateKeyAlias or publicKeyAlias is invalid format.
+ /// The size is invalid. privateKeyAlias or publicKeyAlias is invalid format.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// Key with privateKeyAlias or publicKeyAlias does already exist.
+ /// The key with privateKeyAlias or publicKeyAlias does already exist.
/// </exception>
/// <remarks>
- /// If password in policy is provided, the key is additionally encrypted with the
+ /// If the password in policy is provided, the key is additionally encrypted with the
/// password in policy.
/// </remarks>
static public void CreateRsaKeyPair(
}
/// <summary>
- /// Creates DSA private/public key pair and stores them inside secure repository
+ /// Creates the DSA private/public key pair and stores them inside the secure repository
/// based on each policy.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// Any of argument is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// size is invalid. privateKeyAlias or publicKeyAlias is invalid format.
+ /// The size is invalid. privateKeyAlias or publicKeyAlias is invalid format.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// Key with privateKeyAlias or publicKeyAlias does already exist.
+ /// The key with privateKeyAlias or publicKeyAlias does already exist.
/// </exception>
/// <remarks>
- /// If password in policy is provided, the key is additionally encrypted with
+ /// If the password in policy is provided, the key is additionally encrypted with
/// the password in policy.
/// </remarks>
static public void CreateDsaKeyPair(
}
/// <summary>
- /// Creates ECDSA private/public key pair and stores them inside secure repository
+ /// Creates the ECDSA private/public key pair and stores them inside secure repository
/// based on each policy.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// Any of argument is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// Elliptic curve type is invalid. privateKeyAlias or publicKeyAlias is
+ /// The elliptic curve type is invalid. privateKeyAlias or publicKeyAlias is in the
/// invalid format.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// Key with privateKeyAlias or publicKeyAlias does already exist.
+ /// The key with privateKeyAlias or publicKeyAlias does already exist.
/// </exception>
/// <remarks>
- /// If password in policy is provided, the key is additionally encrypted with
+ /// If the password in policy is provided, the key is additionally encrypted with
/// the password in policy.
/// </remarks>
static public void CreateEcdsaKeyPair(
}
/// <summary>
- /// Creates AES key and stores it inside secure repository based on each policy.
+ /// Creates the AES key and stores it inside the secure repository based on each policy.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <param name="size">
- /// The size of key strength to be created. 128, 192 and 256 are supported.
+ /// The size of the key strength to be created. 128, 192 and 256 are supported.
/// </param>
/// <param name="keyAlias">The name of key to be stored.</param>
/// <param name="policy">The policy about how to store the key securely.</param>
/// <exception cref="ArgumentNullException">
- /// keyAlias or policy is null.
+ /// The keyAlias or policy is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// Key size is invalid. keyAlias is invalid format.
+ /// The key size is invalid. keyAlias is in the invalid format.
/// </exception>
/// <exception cref="InvalidOperationException">
- /// Key with privateKeyAlias or publicKeyAlias does already exist.
+ /// The key with privateKeyAlias or publicKeyAlias does already exist.
/// </exception>
/// <remarks>
- /// If password in policy is provided, the key is additionally encrypted with
+ /// If the password in policy is provided, the key is additionally encrypted with
/// the password in policy.
/// </remarks>
static public void CreateAesKey(int size, string keyAlias, Policy policy)
public enum KeyType : int
{
/// <summary>
- /// Key type not specified
+ /// Key type not specified.
/// </summary>
None = 0,
/// <summary>
- /// RSA public key
+ /// The RSA public key.
/// </summary>
RsaPublic,
/// <summary>
- /// RSA private key
+ /// The RSA private key.
/// </summary>
RsaPrivate,
/// <summary>
- /// ECDSA public key
+ /// The ECDSA public key.
/// </summary>
EcdsaPublic,
/// <summary>
- /// ECDSA private key
+ /// The ECDSA private key.
/// </summary>
EcdsaPrivate,
/// <summary>
- /// DSA public key
+ /// The DSA public key.
/// </summary>
DsaPublic,
/// <summary>
- /// DSA private key
+ /// The DSA private key.
/// </summary>
DsaPrivate,
/// <summary>
- /// AES key
+ /// The AES key.
/// </summary>
Aes
}
namespace Tizen.Security.SecureRepository
{
/// <summary>
- /// This class is a base class of XxxManager classes. It provides the common methods
+ /// This class is a base class of the XxxManager classes. It provides the common methods
/// for all sub classes.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class Manager
{
/// <summary>
- /// Creates a new full alias which is concatenation of owner id and alias.
+ /// Creates a new full alias, which is concatenation of owner ID and alias.
/// </summary>
/// <since_tizen> 3 </since_tizen>
- /// <param name="ownerId">Data owner's id. This should be package id if data
+ /// <param name="ownerId">Data owner's ID. This should be package ID if data
/// owner is application. If you want to access data stored by system services,
/// use CreateFullSystemAlias() instead.</param>
/// <param name="alias">Data alias.</param>
}
/// <summary>
- /// Creates a new full alias which is concatenation of system service's
- /// owner id and alias.
+ /// Creates a new full alias, which is concatenation of system service's
+ /// owner ID and alias.
/// </summary>
/// <since_tizen> 3 </since_tizen>
- /// <param name="alias">Data alias which is owned by system service.</param>
+ /// <param name="alias">Data alias, which is owned by system service.</param>
static public string CreateFullSystemAlias(string alias)
{
return Manager.CreateFullAlias(Manager.SystemOwnerId, alias);
}
/// <summary>
- /// Removes a an entry (no matter of type) from the key manager.
+ /// Removes an entry (no matter of type) from the key manager.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <param name="alias">Item alias to be removed.</param>
- /// <exception cref="ArgumentNullException">alias is null.</exception>
- /// <exception cref="ArgumentException">alias is invalid format.</exception>
- /// <exception cref="InvalidOperationException">alias does not exist.</exception>
+ /// <exception cref="ArgumentNullException">The alias is null.</exception>
+ /// <exception cref="ArgumentException">The alias is in the invalid format.</exception>
+ /// <exception cref="InvalidOperationException">The alias does not exist.</exception>
/// <remarks>
- /// To remove item, client must have remove permission to the specified item.
+ /// To remove item, client must remove permission to the specified item.
/// </remarks>
/// <remarks>The item owner can remove by default.</remarks>
static public void RemoveAlias(string alias)
/// <since_tizen> 3 </since_tizen>
/// <param name="alias">Item alias for which access will be granted.</param>
/// <param name="otherPackageId">
- /// Package id of the application that will gain access rights.
+ /// Package ID of the application that will gain access rights.
/// </param>
/// <param name="permissions">
/// Mask of permissions(Permission enum) granted for an application with
/// otherPackageId.
/// </param>
/// <exception cref="ArgumentNullException">
- /// alias or otherPackageId is null.
+ /// The alias or otherPackageId is null.
/// </exception>
/// <exception cref="ArgumentException">
- /// alias or otherPackageId is invalid format.
+ /// The alias or otherPackageId is in the invalid format.
/// </exception>
- /// <exception cref="InvalidOperationException">alias does not exist.</exception>
+ /// <exception cref="InvalidOperationException">The alias does not exist.</exception>
/// <remarks>Data identified by alias should exist.</remarks>
/// <remarks>The item owner can set permissions.</remarks>
static public void SetPermission(
namespace Tizen.Security.SecureRepository
{
/// <summary>
- /// Enumeration for OCSP status.
+ /// Enumeration for the OCSP status.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public enum OcspStatus : int
{
/// <summary>
- /// OCSP status is good
+ /// The OCSP status is good.
/// </summary>
Good = 0x00,
/// <summary>
- /// The certificate is revoked
+ /// The certificate is revoked.
/// </summary>
Revoked = 0x01,
/// <summary>
- /// Unknown error
+ /// Unknown error.
/// </summary>
Unknown = 0x02,
/// <summary>
- /// The certificate does not provide OCSP extension
+ /// The certificate does not provide the OCSP extension.
/// </summary>
Unsupported = 0x03,
/// <summary>
- /// The invalid URL in certificate OCSP extension
+ /// The invalid URL in the certificate OCSP extension.
/// </summary>
InvalidUrl = 0x04,
/// <summary>
- /// The invalid response from OCSP server
+ /// The invalid response from the OCSP server.
/// </summary>
InvalidResponse = 0x05,
/// <summary>
- /// OCSP remote server error
+ /// The OCSP remote server error.
/// </summary>
RemoteError = 0x06,
/// <summary>
- /// Network connection error
+ /// The Network connection error.
/// </summary>
NetworkError = 0x07,
/// <summary>
- /// Internal error
+ /// An Internal error.
/// </summary>
InternalError = 0x08
}
public enum Permission : int
{
/// <summary>
- /// Clear permissions
+ /// Clear permissions.
/// </summary>
None = 0x00,
/// <summary>
- /// Eead allowed
+ /// Read allowed.
/// </summary>
Read = 0x01,
/// <summary>
- /// Remove allowed
+ /// Remove allowed.
/// </summary>
Remove = 0x02
}
namespace Tizen.Security.SecureRepository
{
/// <summary>
- /// Class that represents a PKCS#12 contents.
+ /// The class that represents a PKCS#12 contents.
/// It has a private key or its certificate or all the members of a chain of trust.
/// </summary>
/// <since_tizen> 3 </since_tizen>
private SafeCertificateListHandle _certChainHandle = null;
/// <summary>
- /// Load Pkcs12 from the given PKCS#12 file path.
+ /// Loads the Pkcs12 from the given PKCS#12 file path.
/// </summary>
/// <since_tizen> 3 </since_tizen>
- /// <param name="filePath">The path of PKCS12 file to be loaded.</param>
+ /// <param name="filePath">The path of the PKCS12 file to be loaded.</param>
/// <param name="filePassword">The passphrase used to decrypt the PCKS12 file.
- /// If PKCS12 file is not encrypted, passphrase can be null.</param>
- /// <exception cref="ArgumentNullException">filePath is null.</exception>
+ /// If the PKCS12 file is not encrypted, passphrase can be null.</param>
+ /// <exception cref="ArgumentNullException">The filePath is null.</exception>
/// <exception cref="InvalidOperationException">
/// No file on filePath.
/// No permission to access file.
- /// File is invalid PKCS12 format.
+ /// File is in the invalid PKCS12 format.
/// File cannot be extracted with provided filePassword.
/// </exception>
static public Pkcs12 Load(string filePath, string filePassword)
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <param name="privateKey">A private key.</param>
- /// <param name="certificate">A certificate corresponding the private key</param>
+ /// <param name="certificate">A certificate corresponding the private key.</param>
/// <param name="caChain">
/// A certificate chain of CA(Certificate Authority) that issued the certificate.
/// </param>
}
/// <summary>
- /// A certificate corresponding the private key.
+ /// A certificate corresponding to the private key.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public Certificate Certificate
namespace Tizen.Security.SecureRepository
{
/// <summary>
- /// This class provides the methods storing, retrieving Pkcs12 contents.
+ /// This class provides the methods for storing and retrieving the Pkcs12 contents.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public class Pkcs12Manager : Manager
{
/// <summary>
- /// Gets Pkcs12 contents from secure repository.
+ /// Gets Pkcs12 contents from the secure repository.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <param name="alias">The name of data to retrieve.</param>
/// <param name="keyPassword">
/// The password used in decrypting a private key value. If password of
- /// keyPolicy is provided in SavePkcs12(), the same password should be provided
+ /// keyPolicy is provided in SavePkcs12(), the same password should be provided.
/// </param>
/// <param name="cerificatePassword">
/// The password used in decrypting a certificate value. If password of
/// certificatePolicy is provided in SavePkcs12(), the same password should be
- /// provided
+ /// provided.
/// </param>
/// <returns>A Pkcs12 data specified by alias.</returns>
- /// <exception cref="ArgumentNullException">Alias argument is null.</exception>
+ /// <exception cref="ArgumentNullException">The alias argument is null.</exception>
/// <exception cref="ArgumentException">
- /// Alias argument is invalid format.
+ /// The alias argument is in the invalid format.
/// </exception>
/// <exception cref="InvalidOperationException">
/// Pkcs12 does not exist with the alias.
/// </param>
/// <exception cref="ArgumentNullException">Any of argument is null.</exception>
/// <exception cref="ArgumentException">
- /// Alias argument is invalid format. Pkcs12 argument is invalid format.
+ /// The alias argument is in the invalid format. Pkcs12 argument is in the invalid format.
/// </exception>
/// <exception cref="InvalidOperationException">
/// Pkcs12 with alias does already exist.
/// </summary>
/// <since_tizen> 3 </since_tizen>
/// <param name="password">Used to encrypt data secure repository.</param>
- /// <param name="extractable">If true key may be extracted from secure repository.</param>
+ /// <param name="extractable">If true, key may be extracted from the secure repository.</param>
public Policy(String password, bool extractable)
{
Password = password;
/// <summary>
/// Used to encrypt data secure repository. If it is not null, the data
- /// (or key, or certificate) is stored encrypted with this password inside secure repository
+ /// (or key, or certificate) is stored encrypted with this password inside secure repository.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public String Password
}
/// <summary>
- /// If true key may be extracted from secure repository.
+ /// If true, key may be extracted from the secure repository.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public bool Extractable
namespace Tizen.Security
{
/// <summary>
- /// The class provides the information of the given privilege and API version.
+ /// This class provides the information of the given privilege and the API version.
/// </summary>
/// <since_tizen> 3 </since_tizen>
public static class Privilege
/// Gets the display name of the given privilege.
/// </summary>
/// <since_tizen> 3 </since_tizen>
- /// <remarks>If there's no matching privilege then it returns last token of given privilege.</remarks>
- /// <param name="apiVersion">The api version</param>
- /// <param name="privilege">The privilege</param>
- /// <returns>The display name of given privilege at given api version</returns>
+ /// <remarks>If there's no matching privilege, then it returns last token of the given privilege.</remarks>
+ /// <param name="apiVersion">The API version.</param>
+ /// <param name="privilege">The privilege.</param>
+ /// <returns>The display name of the given privilege at the given API version.</returns>
/// <exception cref="System.ArgumentNullException">Thrown when there is a null parameter.</exception>
/// <exception cref="System.ArgumentException">Thrown when there is an invalid parameter.</exception>
- /// <exception cref="System.OutOfMemoryException">Thrown when out of memory occurs</exception>
- /// <exception cref="System.InvalidOperationException">Thrown when internal error occurs.</exception>
+ /// <exception cref="System.OutOfMemoryException">Thrown when out of memory occurs.</exception>
+ /// <exception cref="System.InvalidOperationException">Thrown when an internal error occurs.</exception>
public static string GetDisplayName(string apiVersion, string privilege)
{
string displayName;
/// Gets the display name of the given privilege.
/// </summary>
/// <since_tizen> 3 </since_tizen>
- /// <remarks>If there's no matching privilege then it returns last token of given privilege.</remarks>
- /// <param name="apiVersion">The api version</param>
- /// <param name="privilege">The privilege</param>
- /// <param name="packageType">The type of application package</param>
- /// <returns>The display name of given privilege at given api version and the package type</returns>
+ /// <remarks>If there's no matching privilege, then it returns last token of the given privilege.</remarks>
+ /// <param name="apiVersion">The API version.</param>
+ /// <param name="privilege">The privilege.</param>
+ /// <param name="packageType">The type of application package.</param>
+ /// <returns>The display name of the given privilege at the given API version and the package type.</returns>
/// <exception cref="System.ArgumentNullException">Thrown when there is a null parameter.</exception>
/// <exception cref="System.ArgumentException">Thrown when there is an invalid parameter.</exception>
- /// <exception cref="System.OutOfMemoryException">Thrown when out of memory occurs</exception>
- /// <exception cref="System.InvalidOperationException">Thrown when internal error occurs.</exception>
+ /// <exception cref="System.OutOfMemoryException">Thrown when out of memory occurs.</exception>
+ /// <exception cref="System.InvalidOperationException">Thrown when an internal error occurs.</exception>
public static string GetDisplayName(string apiVersion, string privilege, PackageType packageType)
{
string displayName;
/// Gets the description of the given privilege.
/// </summary>
/// <since_tizen> 3 </since_tizen>
- /// <remarks>If there's no matching privilege then it returns description string for undefined privilege.</remarks>
- /// <param name="apiVersion">The api version</param>
- /// <param name="privilege">The privilege</param>
- /// <returns>The description of given privilege at given api version</returns>
+ /// <remarks>If there's no matching privilege, then it returns description string for undefined privilege.</remarks>
+ /// <param name="apiVersion">The API version.</param>
+ /// <param name="privilege">The privilege.</param>
+ /// <returns>The description of given privilege at the given API version</returns>
/// <exception cref="System.ArgumentNullException">Thrown when there is a null parameter.</exception>
/// <exception cref="System.ArgumentException">Thrown when there is an invalid parameter.</exception>
- /// <exception cref="System.OutOfMemoryException">Thrown when out of memory occurs</exception>
- /// <exception cref="System.InvalidOperationException">Thrown when internal error occurs.</exception>
+ /// <exception cref="System.OutOfMemoryException">Thrown when out of memory occurs.</exception>
+ /// <exception cref="System.InvalidOperationException">Thrown when an internal error occurs.</exception>
public static string GetDescription(string apiVersion, string privilege)
{
string description;
/// Gets the description of the given privilege.
/// </summary>
/// <since_tizen> 3 </since_tizen>
- /// <remarks>If there's no matching privilege then it returns description string for undefined privilege.</remarks>
- /// <param name="apiVersion">The api version</param>
- /// <param name="privilege">The privilege</param>
- /// <param name="packageType">The type of application package</param>
- /// <returns>The description of given privilege at given api version and the package type</returns>
+ /// <remarks>If there's no matching privilege, then it returns description string for undefined privilege.</remarks>
+ /// <param name="apiVersion">The API version.</param>
+ /// <param name="privilege">The privilege.</param>
+ /// <param name="packageType">The type of application package.</param>
+ /// <returns>The description of given privilege at the given API version and the package type.</returns>
/// <exception cref="System.ArgumentNullException">Thrown when there is a null parameter.</exception>
/// <exception cref="System.ArgumentException">Thrown when there is an invalid parameter.</exception>
- /// <exception cref="System.OutOfMemoryException">Thrown when out of memory occurs</exception>
- /// <exception cref="System.InvalidOperationException">Thrown when internal error occurs.</exception>
+ /// <exception cref="System.OutOfMemoryException">Thrown when out of memory occurs.</exception>
+ /// <exception cref="System.InvalidOperationException">Thrown when an internal error occurs.</exception>
public static string GetDescription(string apiVersion, string privilege, PackageType packageType)
{
string description;
/// Gets the display name of the privacy group in which the given privilege is included.
/// </summary>
/// <since_tizen> 3 </since_tizen>
- /// <param name="privilege">The privilege</param>
+ /// <param name="privilege">The privilege.</param>
/// <remarks>The privilege must be privacy related.</remarks>
- /// <returns>The privacy group's display name that the given privilege is included in</returns>
+ /// <returns>The privacy group's display name that the given privilege is included in.</returns>
/// <exception cref="System.ArgumentNullException">Thrown when there is a null parameter.</exception>
/// <exception cref="System.ArgumentException">Thrown when there is an invalid parameter.</exception>
- /// <exception cref="System.OutOfMemoryException">Thrown when out of memory occurs</exception>
- /// <exception cref="System.InvalidOperationException">Thrown when internal error occurs.</exception>
+ /// <exception cref="System.OutOfMemoryException">Thrown when out of memory occurs.</exception>
+ /// <exception cref="System.InvalidOperationException">Thrown when an internal error occurs.</exception>
public static string GetPrivacyDisplayName(string privilege)
{
string displayName;
/// Gets the status of the given privacy related privilege.
/// </summary>
/// <since_tizen> 3 </since_tizen>
- /// <param name="privilege">The privilege</param>
+ /// <param name="privilege">The privilege.</param>
/// <remarks>The privilege must be privacy related.</remarks>
- /// <returns>status true if the privilege is on and false if the privilege is off.</returns>
+ /// <returns>Status true if the privilege is on and false if the privilege is off.</returns>
/// <exception cref="System.ArgumentNullException">Thrown when there is a null parameter.</exception>
/// <exception cref="System.ArgumentException">Thrown when there is an invalid parameter.</exception>
- /// <exception cref="System.OutOfMemoryException">Thrown when out of memory occurs</exception>
- /// <exception cref="System.InvalidOperationException">Thrown when internal error occurs.</exception>
+ /// <exception cref="System.OutOfMemoryException">Thrown when out of memory occurs.</exception>
+ /// <exception cref="System.InvalidOperationException">Thrown when an internal error occurs.</exception>
public static bool GetPrivacyPrivilegeStatus(string privilege)
{
bool status;