/** @file IEnv.idl */

/* Copyright (c) 2015, 2017 Qualcomm Technologies, Inc.  All Rights Reserved.
   Qualcomm Technologies Proprietary and Confidential. */

include "IOpener.idl"

/** @cond */
interface IEnv : IOpener{
/** @endcond */

  /**
   * @addtogroup IEnv
   * @{
   */
  /**
    Outputs message for debugging.

    @param[in] text  Message provided as a buffer (not a string).

    @detdesc
    The buffer must not contain a terminating NULL character. All
    characters in the buffer must be valid ASCII. A terminating
    newline character is not necessary to delimit the message from
    other messages.

    @return
    Object_OK on success.
  */
   method log(in buffer text);

  /**
    Terminates execution within the current execution environment (process
    or VM).

    @param[in] code  Exit code. \n 
                     Non-zero exit conditions indicate an
                     exception, and imply that a core dump or other
                     diagnostic contingencies apply, depending on
                     the environment.

    @return
    Object_OK on success.
  */
  method exit(in int32 code);
  /** @} */ /* end_addtogroup IEnv */
};

