
###############
A3DEntityDelete
###############

.. c:function:: A3DStatus A3DEntityDelete(A3DEntity *pEntity)

   .. rst-class:: sig-pretty-signature
   
      | :c:enum:`~A3DStatus` A3DEntityDelete(:c:type:`~A3DEntity`\ \* **pEntity**\ )
   
   Recursively deletes the entity and its child entities.
   
   This function deletes the given entity along with all it's child entities. Usually deleting any entity of a PRC tree is implicitly done when the tree root is deleted. Indeed, when using this function on an :c:type:`~A3DAsmModelFile`\ , it will frees all the memory allocated for ``pModelFile``\ . It recursively deletes all entities inside the model file, thus deleting the whole PRC tree. After the call, access to the model file is no longer possible, and ``pModelFile``\ is invalid.
   
   However, it is possible that some entities may not be attached to any PRC. This is usually the case when a CAD model is manipulated for modification purpose.
   
   As a rule of thumb, you should always explicitly delete an entity that you have not attached to any other entity.
   
   **Returns**
   
   
      ``A3D_SUCCESS``\ on success, or an error code on failure
   
   




