// Copyright (C) 2004 Davis E. King (davis@dlib.net) // License: Boost Software License See LICENSE.txt for the full license. #ifndef DLIB_ENTROPY_DECODER_MODEl_ #define DLIB_ENTROPY_DECODER_MODEl_ #include "entropy_decoder_model/entropy_decoder_model_kernel_1.h" #include "entropy_decoder_model/entropy_decoder_model_kernel_2.h" #include "entropy_decoder_model/entropy_decoder_model_kernel_3.h" #include "entropy_decoder_model/entropy_decoder_model_kernel_4.h" #include "entropy_decoder_model/entropy_decoder_model_kernel_5.h" #include "entropy_decoder_model/entropy_decoder_model_kernel_6.h" #include "conditioning_class.h" #include "memory_manager.h" namespace dlib { template < unsigned long alphabet_size, typename entropy_decoder > class entropy_decoder_model { entropy_decoder_model() {} typedef typename conditioning_class::kernel_1a cc1; typedef typename conditioning_class::kernel_2a cc2; typedef typename conditioning_class::kernel_3a cc3; typedef typename conditioning_class::kernel_4a cc4a; typedef typename conditioning_class::kernel_4b cc4b; typedef typename conditioning_class::kernel_4c cc4c; typedef typename conditioning_class::kernel_4d cc4d; public: //----------- kernels --------------- // kernel_1 typedef entropy_decoder_model_kernel_1 kernel_1a; typedef entropy_decoder_model_kernel_1 kernel_1b; typedef entropy_decoder_model_kernel_1 kernel_1c; // -------------------- // kernel_2 typedef entropy_decoder_model_kernel_2 kernel_2a; typedef entropy_decoder_model_kernel_2 kernel_2b; typedef entropy_decoder_model_kernel_2 kernel_2c; typedef entropy_decoder_model_kernel_2 kernel_2d; // -------------------- // kernel_3 typedef entropy_decoder_model_kernel_3 kernel_3a; typedef entropy_decoder_model_kernel_3 kernel_3b; typedef entropy_decoder_model_kernel_3 kernel_3c; // -------------------- // kernel_4 typedef entropy_decoder_model_kernel_4 kernel_4a; typedef entropy_decoder_model_kernel_4 kernel_4b; // -------------------- // kernel_5 typedef entropy_decoder_model_kernel_5 kernel_5a; typedef entropy_decoder_model_kernel_5 kernel_5b; typedef entropy_decoder_model_kernel_5 kernel_5c; // -------------------- // kernel_6 typedef entropy_decoder_model_kernel_6 kernel_6a; }; } #endif // DLIB_ENTROPY_DECODER_MODEl_