class TsDataCollector {

    public TsData make(TsFrequency frequency, TsAggregationType convMode) {
        if (frequency == TsFrequency.Undefined) {
            if (convMode != TsAggregationType.None) {
                throw new TsException(TsException.INVALID_AGGREGATIONMODE);
            }
            return makeFromUnknownFrequency(m_obs);
        }
        if (convMode != TsAggregationType.None) {
            return makeWithAggregation(m_obs, frequency, convMode);
        }
        return makeWithoutAggregation(m_obs, frequency);
    }

    public  TsDataCollector();

}