## GckObjectAttributes

GckObjectAttributes — An interface which holds attributes for a PKCS#11 object

## Synopsis

                        GckObjectAttributes;
    struct              GckObjectAttributesIface;
    GckAttributes *     gck_object_attributes_get_attributes
                                                            (GckObjectAttributes *object);
    void                gck_object_attributes_set_attributes
                                                            (GckObjectAttributes *object,
                                                             GckAttributes *attributes);

## Object Hierarchy

      GInterface
       +----GckObjectAttributes

## Prerequisites

GckObjectAttributes requires GckObject.

## Properties

      "attributes"               GckAttributes*        : Read / Write / Construct

## Description

GckObjectAttributes is an interface implemented by derived classes of GckObject to indicate which attributes they'd like an enumerator to retrieve. These attributes are then cached on the object and can be retrieved through the "attributes" property.

## Details

### GckObjectAttributes

    typedef struct _GckObjectAttributes GckObjectAttributes;

### struct GckObjectAttributesIface

    struct GckObjectAttributesIface {
    	GTypeInterface interface;

    	const gulong *attribute_types;
    	gint n_attribute_types;
    };

Interface for GckObjectAttributes. If the `attribute_types` field is set by a implementing class, then the a GckEnumerator which has been setup using `gck_enumerator_set_object_type()`

GTypeInterface `interface`; | parent interface
const gulong *`attribute_types`; | attribute types that an enumerator should retrieve. [array length=n_attribute_types]
gint `n_attribute_types`; | number of attribute types to be retrieved

### gck_object_attributes_get_attributes ()

    GckAttributes *     gck_object_attributes_get_attributes
                                                            (GckObjectAttributes *object);

Gets the attributes cached on this object.

`object` : | an object with attributes
Returns : | the attributes. [transfer full][allow-none]

### gck_object_attributes_set_attributes ()

    void                gck_object_attributes_set_attributes
                                                            (GckObjectAttributes *object,
                                                             GckAttributes *attributes);

Sets the attributes cached on this object.

`object` : | an object with attributes
`attributes` : | the attributes to cache. [allow-none]

## Property Details

### The `"attributes"` property

      "attributes"               GckAttributes*        : Read / Write / Construct

The attributes cached on this object.