unsupervised_transformed_input_data_reader::unsupervised_transformed_input_data_reader(
		unsupervised_data_reader_smart_ptr original_reader,
		data_transformer_smart_ptr transformer)
		: original_reader(original_reader)
		, transformer(transformer)
		, local_input_ptr(0)
		, transformer_sample_count(transformer->get_sample_count())
		, current_sample_id(0)
	{
		if (!transformer->is_in_place())
		{
			buf.resize(neuron_data_type::get_input_size(transformer->get_transformed_data_type(original_reader->get_input_type()))
				* original_reader->get_input_configuration().get_neuron_count());
			local_input_ptr = &(*buf.begin());
		}
	}