<commit_before>/***********************************************************************************************************************
 * LayoutProvider.h
 *
 *  Created on: Feb 18, 2011
 *      Author: <NAME>
 **********************************************************************************************************************/

#ifndef LAYOUTPROVIDER_H_
#define LAYOUTPROVIDER_H_

#include "../visualizationbase_api.h"

#include "LayoutProviderBase.h"

namespace Visualization {

template <class LayoutType>
class LayoutProvider : public LayoutProviderBase
{
	public:
		LayoutProvider(Item* parent, const StyleType *style);

		LayoutType* layout() const;
};

template <class LayoutType>
inline LayoutType* LayoutProvider<LayoutType>::layout() const { return static_cast<LayoutType*> (LayoutProviderBase::layout()); }

template <class LayoutType>
LayoutProvider<LayoutType>::LayoutProvider(Item* parent, const StyleType *style) :
LayoutProviderBase(parent, style, new LayoutType(NULL))
{
	layout()->setParentItem(this);
}

}

#endif /* LAYOUTPROVIDER_H_ */<commit_msg>CHANGED: Made SequentialLayout be the default parameter for LayoutProvider.<commit_after>/***********************************************************************************************************************
 * LayoutProvider.h
 *
 *  Created on: Feb 18, 2011
 *      Author: <NAME>
 **********************************************************************************************************************/

#ifndef LAYOUTPROVIDER_H_
#define LAYOUTPROVIDER_H_

#include "LayoutProviderBase.h"
#include "../layouts/SequentialLayout.h"

namespace Visualization {

template <class LayoutType = SequentialLayout>
class LayoutProvider : public LayoutProviderBase
{
	public:
		LayoutProvider(Item* parent, const StyleType *style);

		LayoutType* layout() const;
};

template <class LayoutType>
inline LayoutType* LayoutProvider<LayoutType>::layout() const { return static_cast<LayoutType*> (LayoutProviderBase::layout()); }

template <class LayoutType>
LayoutProvider<LayoutType>::LayoutProvider(Item* parent, const StyleType *style) :
LayoutProviderBase(parent, style, new LayoutType(NULL))
{
	layout()->setParentItem(this);
}

}

#endif /* LAYOUTPROVIDER_H_ */
{'fraction_non_alphanumeric': 0.304445442299057, 'fraction_numerical': 0.005388414907947912, 'mean_word_length': 8.283333333333333, 'pattern_counts': {'":': 0, '<': 17, '<?xml version=': 0, '>': 19, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '971169', 'n_tokens_mistral': 582, 'n_tokens_neox': 548, 'n_words': 129}