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

#ifndef __gnu_CORBA_CDR_Vio__
#define __gnu_CORBA_CDR_Vio__

#pragma interface

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

extern "Java"
{
  namespace gnu
  {
    namespace CORBA
    {
      namespace CDR
      {
          class BufferedCdrOutput;
          class Vio;
      }
    }
  }
  namespace javax
  {
    namespace rmi
    {
      namespace CORBA
      {
          class ValueHandler;
      }
    }
  }
  namespace org
  {
    namespace omg
    {
      namespace CORBA
      {
          class WStringValueHelper;
        namespace portable
        {
            class BoxedValueHelper;
            class InputStream;
            class OutputStream;
        }
      }
    }
  }
}

class gnu::CORBA::CDR::Vio : public ::java::lang::Object
{

public:
  Vio();
  static ::java::io::Serializable * read(::org::omg::CORBA::portable::InputStream *);
  static ::java::io::Serializable * read(::org::omg::CORBA::portable::InputStream *, ::java::lang::String *);
  static ::java::io::Serializable * read(::org::omg::CORBA::portable::InputStream *, ::java::lang::Class *);
  static ::java::lang::Object * read(::org::omg::CORBA::portable::InputStream *, ::java::lang::Object *, ::org::omg::CORBA::portable::BoxedValueHelper *);
  static ::java::io::Serializable * read(::org::omg::CORBA::portable::InputStream *, ::org::omg::CORBA::portable::BoxedValueHelper *);
public: // actually package-private
  static ::java::lang::Object * read_instance(::org::omg::CORBA::portable::InputStream *, jint, ::java::lang::Object *, jint, ::org::omg::CORBA::portable::BoxedValueHelper *, ::java::lang::String *, JArray< ::java::lang::String * > *, ::java::lang::String *);
private:
  static ::gnu::CORBA::CDR::BufferedCdrOutput * createBuffer(::org::omg::CORBA::portable::InputStream *, jint);
public:
  static jint readNestedValue(jint, ::org::omg::CORBA::portable::InputStream *, ::gnu::CORBA::CDR::BufferedCdrOutput *, jint);
  static ::java::io::Serializable * readValue(::org::omg::CORBA::portable::InputStream *, jint, ::java::lang::Object *, ::org::omg::CORBA::portable::BoxedValueHelper *, ::java::lang::String *, JArray< ::java::lang::String * > *, ::java::lang::String *);
public: // actually package-private
  static ::java::lang::String * list(JArray< ::java::lang::String * > *);
public:
  static void write(::org::omg::CORBA::portable::OutputStream *, ::java::io::Serializable *);
  static void write(::org::omg::CORBA::portable::OutputStream *, ::java::io::Serializable *, ::java::lang::Class *);
  static void write(::org::omg::CORBA::portable::OutputStream *, ::java::io::Serializable *, JArray< ::java::lang::String * > *);
  static void write(::org::omg::CORBA::portable::OutputStream *, ::java::io::Serializable *, ::java::lang::String *);
  static void write(::org::omg::CORBA::portable::OutputStream *, ::java::io::Serializable *, ::org::omg::CORBA::portable::BoxedValueHelper *);
private:
  static void writeString(::org::omg::CORBA::portable::OutputStream *, ::java::io::Serializable *);
public: // actually package-private
  static void write_instance(::org::omg::CORBA::portable::OutputStream *, ::java::io::Serializable *, ::java::lang::Object *, ::org::omg::CORBA::portable::BoxedValueHelper *);
  static void writeValue(::org::omg::CORBA::portable::OutputStream *, ::java::io::Serializable *, ::org::omg::CORBA::portable::BoxedValueHelper *);
  static jboolean writeSelf(::org::omg::CORBA::portable::OutputStream *, ::java::io::Serializable *);
  static ::java::io::Serializable * readIndirection(::org::omg::CORBA::portable::InputStream *);
  static void checkTag(jint);
  static void throwIt(::java::lang::String *, ::java::lang::String *, ::java::lang::String *, ::java::lang::Throwable *);
  static ::java::lang::Object * createInstance(::java::lang::String *, JArray< ::java::lang::String * > *, ::java::lang::String *);
  static ::java::lang::Object * _createInstance(::java::lang::String *, ::java::lang::String *);
  static ::java::lang::String * read_string(::org::omg::CORBA::portable::InputStream *);
  static JArray< ::java::lang::String * > * read_string_array(::org::omg::CORBA::portable::InputStream *);
  static void write_string(::org::omg::CORBA::portable::OutputStream *, ::java::lang::String *);
  static void write_string_array(::org::omg::CORBA::portable::OutputStream *, JArray< ::java::lang::String * > *);
public:
  static ::org::omg::CORBA::portable::BoxedValueHelper * getHelper(::java::lang::Class *, ::java::lang::Object *);
  static ::org::omg::CORBA::portable::BoxedValueHelper * getHelper(::java::lang::Class *, ::java::lang::String *);
public: // actually package-private
  static ::org::omg::CORBA::portable::BoxedValueHelper * locateHelper(::java::lang::String *);
  static jint getCurrentPosition(::org::omg::CORBA::portable::InputStream *);
public:
  static ::java::lang::Object * instantiateAnyWay(::java::lang::Class *);
  static jboolean USE_CHUNKING;
  static const jint vt_VALUE_TAG = 2147483392;
  static const jint vf_CODEBASE = 1;
  static const jint vf_ID = 2;
  static const jint vf_MULTIPLE_IDS = 4;
  static const jint vf_CHUNKING = 8;
  static const jint vt_INDIRECTION = -1;
  static const jint vt_NULL = 0;
public: // actually package-private
  static const jint INT_SIZE = 4;
public:
  static ::org::omg::CORBA::WStringValueHelper * m_StringValueHelper;
public: // actually package-private
  static ::javax::rmi::CORBA::ValueHandler * handler;
public:
  static ::java::lang::Class class$;
};

#endif // __gnu_CORBA_CDR_Vio__
