public static TonalityMarkingOutputResult4Blogs Processing(ITonalityMarking tonalityMarking, TonalityMarkingInputParams4Blogs inputParams)
        {
            tonalityMarking.ThrowIfNull("tonalityMarking");
            inputParams.ThrowIfNull("inputParams");

            switch (inputParams.ProcessingBlogsMode)
            {
            case ProcessingBlogsMode.Parallel:
                return(new ParallelBlogsProcessing(tonalityMarking).Processing(inputParams));

            case ProcessingBlogsMode.Consecutively:
                return(new ConsecutivelyBlogsProcessing(tonalityMarking).Processing(inputParams));

            default:
                throw (new ArgumentException(inputParams.ProcessingBlogsMode.ToString()));
            }
        }
        public ConsecutivelyBlogsProcessing(ITonalityMarking tonalityMarking)
        {
            tonalityMarking.ThrowIfNull("tonalityMarking");

            _TonalityMarking = tonalityMarking;
        }
        public ParallelBlogsProcessing(ITonalityMarking tonalityMarking)
        {
            tonalityMarking.ThrowIfNull("tonalityMarking");

            _TonalityMarking = tonalityMarking;
        }