bgneal@1: #ifndef CPP_ENIGMA_ROTOR_FACTORY_H bgneal@1: #define CPP_ENIGMA_ROTOR_FACTORY_H bgneal@1: // Copyright (C) 2012 by Brian Neal. bgneal@1: // This file is part of Cpp-Enigma, the Enigma Machine simulation. bgneal@1: // Cpp-Enigma is released under the MIT License (see License.txt). bgneal@1: // bgneal@1: // rotor_factory.h - simulated rotor & reflector factory functions bgneal@1: bgneal@1: #include bgneal@1: bgneal@1: namespace enigma bgneal@1: { bgneal@1: class rotor; bgneal@1: bgneal@1: // Create a historical rotor with the given ring setting and return it: bgneal@1: std::unique_ptr create_rotor(const char* name, int ring_setting = 0); bgneal@1: bgneal@1: // Create a historical reflector and return it: bgneal@1: std::unique_ptr create_reflector(const char* name); bgneal@1: } bgneal@1: bgneal@1: #endif