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

#ifndef __org_w3c_dom_css_Rect__
#define __org_w3c_dom_css_Rect__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace org
  {
    namespace w3c
    {
      namespace dom
      {
        namespace css
        {
            class CSSPrimitiveValue;
            class Rect;
        }
      }
    }
  }
}

class org::w3c::dom::css::Rect : public ::java::lang::Object
{

public:
  virtual ::org::w3c::dom::css::CSSPrimitiveValue * getTop() = 0;
  virtual ::org::w3c::dom::css::CSSPrimitiveValue * getRight() = 0;
  virtual ::org::w3c::dom::css::CSSPrimitiveValue * getBottom() = 0;
  virtual ::org::w3c::dom::css::CSSPrimitiveValue * getLeft() = 0;
  static ::java::lang::Class class$;
} __attribute__ ((java_interface));

#endif // __org_w3c_dom_css_Rect__
