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

#ifndef __org_omg_IOP_TaggedComponent__
#define __org_omg_IOP_TaggedComponent__

#pragma interface

#include <java/lang/Object.h>
#include <gcj/array.h>

extern "Java"
{
  namespace org
  {
    namespace omg
    {
      namespace IOP
      {
          class TaggedComponent;
      }
    }
  }
}

class org::omg::IOP::TaggedComponent : public ::java::lang::Object
{

public:
  TaggedComponent();
  TaggedComponent(jint, JArray< jbyte > *);
private:
  static const jlong serialVersionUID = -2084695346022761692LL;
public:
  jint __attribute__((aligned(__alignof__( ::java::lang::Object)))) tag;
  JArray< jbyte > * component_data;
  static ::java::lang::Class class$;
};

#endif // __org_omg_IOP_TaggedComponent__
