I agree its awkward.  EngineDeck depends on effects manager but it is not
added to the engine until after the constructor runs. I prefer the channel
to be registered the moment the class is constructed so that you can't
accidentally call an EM method with an unregistered group.
On Feb 21, 2014 5:41 PM, "Daniel Schürmann" <notifications@github.com>
wrote:

> In src/engine/enginedeck.cpp:
>
> >            m_pPassing(new ControlPushButton(ConfigKey(group, "passthrough"))),
> >            // Need a +1 here because the CircularBuffer only allows its size-1
> >            // items to be held at once (it keeps a blank spot open persistently)
> >            m_sampleBuffer(MAX_BUFFER_LEN+1) {
> > +    pEffectsManager->registerGroup(getGroup());
>
> After reading this again, this line feels not right here
> The EngineChannel is instantiate an then added to MixingEngine:
> pMixingEngine->addChannel(m_pChannel);
>
> https://github.com/rryan/mixxx/blob/features_effects/src/basetrackplayer.cpp#L40
>
> We should keep this way here as well:
> pass EngineEffectsManager and register EngineChannel from outside.
>
> --
> Reply to this email directly or view it on GitHub<https://github.com/mixxxdj/mixxx/pull/180/files#r9965324>
> .
>