mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-30 12:10:37 +00:00
66 lines
1.4 KiB
C#
66 lines
1.4 KiB
C#
//
|
|
// Version.cs: Lightweight Version Object for GStreamer
|
|
//
|
|
// Authors:
|
|
// Aaron Bockover (abockover@novell.com)
|
|
//
|
|
// Copyright (C) 2006 Novell, Inc.
|
|
//
|
|
|
|
using System;
|
|
using System.Runtime.InteropServices;
|
|
|
|
namespace Gst {
|
|
public static class Version {
|
|
private static uint major;
|
|
private static uint minor;
|
|
private static uint micro;
|
|
private static uint nano;
|
|
private static string version_string;
|
|
|
|
static Version() {
|
|
gst_version (out major, out minor, out micro, out nano);
|
|
}
|
|
|
|
public static string Description {
|
|
get {
|
|
if (version_string == null) {
|
|
IntPtr version_string_ptr = gst_version_string();
|
|
version_string = Gst.GLib.Marshaller.Utf8PtrToString (version_string_ptr);
|
|
}
|
|
|
|
return version_string;
|
|
}
|
|
}
|
|
|
|
public static uint Major {
|
|
get {
|
|
return major;
|
|
}
|
|
}
|
|
|
|
public static uint Minor {
|
|
get {
|
|
return minor;
|
|
}
|
|
}
|
|
|
|
public static uint Micro {
|
|
get {
|
|
return micro;
|
|
}
|
|
}
|
|
|
|
public static uint Nano {
|
|
get {
|
|
return nano;
|
|
}
|
|
}
|
|
|
|
[DllImport ("libgstreamer-0.10.dll") ]
|
|
private static extern void gst_version (out uint major, out uint minor, out uint micro, out uint nano);
|
|
|
|
[DllImport ("libgstreamer-0.10.dll") ]
|
|
private static extern IntPtr gst_version_string();
|
|
}
|
|
}
|