## Variables and functions to check the library version

Variables and functions to check the library version

## Functions

const gchar * | thunarx_check_version ()
#define | THUNARX_CHECK_VERSION ()

## Types and Values

extern const guint | thunarx_major_version
extern const guint | thunarx_minor_version
extern const guint | thunarx_micro_version
#define | THUNARX_MAJOR_VERSION
#define | THUNARX_MINOR_VERSION
#define | THUNARX_MICRO_VERSION

## Includes

    #include <thunarx/thunarx.h>

## Description

## Functions

### thunarx_check_version ()

    const gchar *
    thunarx_check_version (guint required_major,
                           guint required_minor,
                           guint required_micro);

Checks that the `thunarx` library in use is compatible with the given version. Generally you would pass in the constants THUNARX_MAJOR_VERSION, THUNARX_MINOR_VERSION and THUNARX_VERSION_MICRO as the three arguments to this function; that produces a check that the library in use is compatible with the version of

`thunarx` the extension was

compiled against.

This function should be called by extensions in the `thunar_extension_initialize()` method to verify that the `thunarx` library used by file manager is compatible with the version the extension was compiled with.

Example 3. Checking the runtime version of the Thunar Extension library

    1
    2
    3
    4
    5
    6

    const gchar *mismatch;
    mismatch = thunarx_check_version (THUNARX_VERSION_MAJOR,
                                      THUNARX_VERSION_MINOR,
                                      THUNARX_VERSION_MICRO);
    if (G_UNLIKELY (mismatch != NULL))
      g_error ("Version mismatch: %s", mismatch);

#### Parameters

required_major | the required major version. |
required_minor | the required minor version. |
required_micro | the required micro version. |

#### Returns

`NULL` if the library is compatible with the given version, or a string describing the version mismatch. The returned string is owned by the library and must not be freed or modified by the caller.

### THUNARX_CHECK_VERSION()

    #define             THUNARX_CHECK_VERSION(major,minor,micro)

## Types and Values

### thunarx_major_version

    extern const guint thunarx_major_version;

The major version number of the

`thunarx` library (e.g. in

version 0.5.1 this is 0).

This variable is in the library, so represents the

`thunarx` library you have

linked against. Contrast with the THUNARX_MAJOR_VERSION macro, which represents the major version of the

`thunarx` headers you have

included.

### thunarx_minor_version

    extern const guint thunarx_minor_version;

The minor version number of the

`thunarx` library (e.g. in

version 0.5.1 this is 5).

This variable is in the library, so represents the

`thunarx` library you have

linked against. Contrast with the THUNARX_MINOR_VERSION macro, which represents the minor version of the

`thunarx` headers you have

included.

### thunarx_micro_version

    extern const guint thunarx_micro_version;

The micro version number of the

`thunarx` library (e.g. in

version 0.5.1 this is 1).

This variable is in the library, so represents the

`thunarx` library you have

linked against. Contrast with the THUNARX_MICRO_VERSION macro, which represents the micro version of the

`thunarx` headers you have

included.

### THUNARX_MAJOR_VERSION

    #define THUNARX_MAJOR_VERSION 4

### THUNARX_MINOR_VERSION

    #define THUNARX_MINOR_VERSION 16

### THUNARX_MICRO_VERSION

    #define THUNARX_MICRO_VERSION 4