/*
 * BEGIN FLOCK GPL
 *
 * Copyright Flock Inc. 2005-2009
 * http://flock.com
 *
 * This file may be used under the terms of the
 * GNU General Public License Version 2 or later (the "GPL"),
 * http://www.gnu.org/licenses/gpl.html
 *
 * Software distributed under the License is distributed on an "AS IS" basis,
 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
 * for the specific language governing rights and limitations under the
 * License.
 *
 * END FLOCK GPL
 */

#include "nsISupports.idl"

[scriptable, uuid(5c287353-7c85-4cd9-a851-3213e3f40c5c)]
interface flockISystemInfo: nsISupports
{
  PRInt32 getCPU();
  PRInt64 getMem();
  AString getBuildInfo();
  AString getStartTime();

  /** On Mac, check whether the current process is the "front" process. */
  boolean isFrontProcess();
  /** On Mac, set the Flock process as the "front" process. */
  void setFrontProcess();
};

%{C++
#define FLOCK_SYSTEMINFO_CID { 0x7386b0e1, 0x1a16, 0x46aa, { 0x9e, 0x8c, 0xe5, 0x11, 0x10, 0x76, 0x13, 0xeb } }
#define FLOCK_SYSTEMINFO_CLASSNAME "Flock System Info"
#define FLOCK_SYSTEMINFO_CONTRACTID "@flock.com/sysinfo;1"
%}
