view enigma/rotor_factory.h @ 16:280facb82b80

Add the ability to change ring settings at the machine level.
author Brian Neal <bgneal@gmail.com>
date Sat, 07 Jul 2012 11:42:31 -0500
parents 1459e74fda3f
children
line wrap: on
line source
#ifndef CPP_ENIGMA_ROTOR_FACTORY_H
#define CPP_ENIGMA_ROTOR_FACTORY_H
// Copyright (C) 2012 by Brian Neal.
// This file is part of Cpp-Enigma, the Enigma Machine simulation.
// Cpp-Enigma is released under the MIT License (see License.txt).
//
// rotor_factory.h - simulated rotor & reflector factory functions

#include <memory>

namespace enigma
{
   class rotor;

   // Create a historical rotor with the given ring setting and return it:
   std::unique_ptr<rotor> create_rotor(const char* name, int ring_setting = 0);

   // Create a historical reflector and return it:
   std::unique_ptr<rotor> create_reflector(const char* name);
}

#endif