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

#ifndef __javax_sound_sampled_Line$Info__
#define __javax_sound_sampled_Line$Info__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace javax
  {
    namespace sound
    {
      namespace sampled
      {
          class Line$Info;
      }
    }
  }
}

class javax::sound::sampled::Line$Info : public ::java::lang::Object
{

public:
  Line$Info(::java::lang::Class *);
  virtual ::java::lang::Class * getLineClass();
  virtual jboolean matches(::javax::sound::sampled::Line$Info *);
  virtual ::java::lang::String * toString();
private:
  ::java::lang::Class * __attribute__((aligned(__alignof__( ::java::lang::Object)))) klass;
public:
  static ::java::lang::Class class$;
};

#endif // __javax_sound_sampled_Line$Info__
