OK, I think I get it. Just to clarify though. BarPeriod can be thought of as the 'trading timeframe' where all trade based activities (entry, exit, pendings etc) are carried out. TimeFrame can be thought of as our 'indicator/signal timeframe' where data is retrieved about the market that is from a time period different to BarPeriod.

So any strategy should essentially flow like this:
run()
BarPeriod = 60;
TimeFrame = 4;
GetSignalInformation()...
TimeFrame = 1;
EnterTrades();

Correct?

Cheers,
BobbyT