
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __gnu_java_lang_management_OperatingSystemMXBeanImpl__
#define __gnu_java_lang_management_OperatingSystemMXBeanImpl__

#pragma interface

#include <gnu/java/lang/management/BeanImpl.h>
extern "Java"
{
  namespace gnu
  {
    namespace java
    {
      namespace lang
      {
        namespace management
        {
            class OperatingSystemMXBeanImpl;
        }
      }
    }
  }
}

class gnu::java::lang::management::OperatingSystemMXBeanImpl : public ::gnu::java::lang::management::BeanImpl
{

public:
  OperatingSystemMXBeanImpl();
  ::java::lang::String * getArch();
  jint getAvailableProcessors();
  ::java::lang::String * getName();
  jdouble getSystemLoadAverage();
  ::java::lang::String * getVersion();
  static ::java::lang::Class class$;
};

#endif // __gnu_java_lang_management_OperatingSystemMXBeanImpl__
