[Previous] [Contents] [Next]

Caution: This version of this document is no longer maintained. For the latest documentation, see http://www.qnx.com/developers/docs.

pm_get_property()

Get the value of the property associated with a power managed object

Synopsis:

#include <sys/pm.h>

int pm_get_property(pm_hdl_t hdl, 
                    pm_property_t id,
		    void *value, 
                    int size);

Arguments:

hdl
A handle to the power managed object obtained via pm_attach().
id
An integer identifier that specifies the property type.
value
A pointer to where the property value is returned.
size
Size of the property value.

Library:

libpm

Description:

The pm_get_property() obtains the current value of the specified property associated with a power managed object.

Returns:

0
Success
-1
An error has occurred (errno is set)

Errors:

EBADF
hdl is not a valid handle.
EINVAL
No property exists with the specified identifier.
EINVAL
Size of the property value is different to size.
EFAULT
A fault occurred accessing value.

Examples:

#include <sys/pm.h>
#include <stat.h>
#include <stdlib.h>
// define a property identifier and structure containing property data
#define PROP_ID         (PM_PROPERTY_USER + 1)
struct prop_value {
        int     data1;
        int     data2;
};

int
main()
{
  pm_hdl_t   hdl;
  struct prop_value  value = { 1, 2 };

  hdl = pm_attach("object", O_RDWR);
  if (!pm_valid_hdl(hdl)) {
    perror("pm_attach");
    return EXIT_FAILURE;
  }

  if (pm_get_property(hdl, PROP_ID, &value, sizeof value) == -1) {
     perror("pm_add_property");
     return EXIT_FAILURE;
  }
  
  printf("data1 = %d\n", value.data1);
  printf("data2 = %d\n", value.data2);

  return EXIT_SUCCESS;
}

Classification:

Neutrino

Safety:
Cancellation point Yes
Interrupt handler No
Signal handler Yes
Thread Yes

See also:

pm_add_property(), pm_set_property(), pm_properties()


[Previous] [Contents] [Next]