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

#ifndef __gnu_javax_crypto_jce_cipher_BlowfishSpi__
#define __gnu_javax_crypto_jce_cipher_BlowfishSpi__

#pragma interface

#include <gnu/javax/crypto/jce/cipher/CipherAdapter.h>
extern "Java"
{
  namespace gnu
  {
    namespace javax
    {
      namespace crypto
      {
        namespace jce
        {
          namespace cipher
          {
              class BlowfishSpi;
          }
        }
      }
    }
  }
}

class gnu::javax::crypto::jce::cipher::BlowfishSpi : public ::gnu::javax::crypto::jce::cipher::CipherAdapter
{

public:
  BlowfishSpi();
  static ::java::lang::Class class$;
};

#endif // __gnu_javax_crypto_jce_cipher_BlowfishSpi__
