Home | History | Annotate | Download | only in utilities

Lines Matching defs:Object

3  * Module Name: utobject - ACPI object create/delete/size/cache routines
187 * Type - ACPI Type of the new object
189 * RETURN: A new internal object, null on failure
191 * DESCRIPTION: Create and initialize a new internal object.
193 * NOTE: We always allocate the worst-case object descriptor because
196 * the most memory efficient, but the efficiency of the object
208 ACPI_OPERAND_OBJECT *Object;
216 /* Allocate the raw object descriptor */
218 Object = AcpiUtAllocateObjectDescDbg (
220 if (!Object)
231 /* These types require a secondary object */
237 AcpiUtDeleteObjectDesc (Object);
244 /* Link the second object to the first */
246 Object->Common.NextObject = SecondObject;
251 /* All others have no secondary object */
255 /* Save the object type in the object descriptor */
257 Object->Common.Type = (UINT8) Type;
261 Object->Common.ReferenceCount = 1;
265 return_PTR (Object);
275 * RETURN: Pointer to a new Package object, null on failure
277 * DESCRIPTION: Create a fully initialized package object
292 /* Create a new Package object */
324 * RETURN: Pointer to a new Integer object, null on failure
326 * DESCRIPTION: Create an initialized integer object
340 /* Create and initialize a new integer object */
359 * RETURN: Pointer to a new Buffer object, null on failure
361 * DESCRIPTION: Create a fully initialized buffer object
376 /* Create a new Buffer object */
401 /* Complete buffer object initialization */
421 * RETURN: Pointer to a new String object
423 * DESCRIPTION: Create a fully initialized string object
438 /* Create a new String object */
460 /* Complete string object initialization */
475 * PARAMETERS: Object - Object to be validated
477 * RETURN: TRUE if object is valid, FALSE otherwise
485 void *Object)
493 if (!Object)
495 ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, "**** Null Object Ptr\n"));
501 switch (ACPI_GET_DESCRIPTOR_TYPE (Object))
505 /* The object appears to be a valid ACPI_OPERAND_OBJECT */
513 Object, AcpiUtGetDescriptorName (Object)));
529 * RETURN: Pointer to newly allocated object descriptor. Null on error
531 * DESCRIPTION: Allocate a new object descriptor. Gracefully handle
542 ACPI_OPERAND_OBJECT *Object;
548 Object = AcpiOsAcquireObject (AcpiGbl_OperandCache);
549 if (!Object)
552 "Could not allocate an object descriptor"));
559 ACPI_SET_DESCRIPTOR_TYPE (Object, ACPI_DESC_TYPE_OPERAND);
562 Object, (UINT32) sizeof (ACPI_OPERAND_OBJECT)));
564 return_PTR (Object);
572 * PARAMETERS: Object - An Acpi internal object to be deleted
576 * DESCRIPTION: Free an ACPI object descriptor or add it to the object cache
582 ACPI_OPERAND_OBJECT *Object)
584 ACPI_FUNCTION_TRACE_PTR (UtDeleteObjectDesc, Object);
587 /* Object must be of type ACPI_OPERAND_OBJECT */
589 if (ACPI_GET_DESCRIPTOR_TYPE (Object) != ACPI_DESC_TYPE_OPERAND)
592 "%p is not an ACPI Operand object [%s]", Object,
593 AcpiUtGetDescriptorName (Object)));
597 (void) AcpiOsReleaseObject (AcpiGbl_OperandCache, Object);
606 * PARAMETERS: InternalObject - An ACPI operand object
612 * contain a simple object for return to an external user.
614 * The length includes the object structure plus any additional
632 /* Start with the length of the (external) Acpi object */
636 /* A NULL object is allowed, can be a legal uninitialized package element */
641 * Object is NULL, just return the length of ACPI_OBJECT
642 * (A NULL ACPI_OBJECT is an object of all zeroes.)
656 "where an operand object is required",
662 * The final length depends on the object type
663 * Strings and Buffers are packed right up against the parent object and
693 * Get the actual length of the full pathname to this object.
694 * The reference will be converted to the pathname to the object
711 ACPI_ERROR ((AE_INFO, "Cannot convert to external object - "
712 "unsupported Reference Class [%s] 0x%X in object %p",
722 ACPI_ERROR ((AE_INFO, "Cannot convert to external object - "
723 "unsupported type [%s] 0x%X in object %p",
731 * Account for the space required by the object rounded up to the next
732 * multiple of the machine word size. This keeps each object aligned
769 * Simple object - just get the size (Null object/entry is handled
783 /* Package object - nothing much to do here, let the walk handle it */
804 * PARAMETERS: InternalObject - An ACPI internal object
810 * contain a package object for return to an external user.
859 * PARAMETERS: InternalObject - An ACPI internal object
865 * contain an object for return to an API user.