#pragma once

#include "Proxies.hpp"
#include "Process.hpp"

namespace Proxies {

	class FlattenHierarchyProcess:
		public Process
	{
	public:
		FlattenHierarchyProcess(GroupProxy *parent_group=NULL):
			parentGroup(parent_group)
				{}
		FlattenHierarchyProcess(
			Stuff::NotationFile *data_file,
			bool bSuppress = true,
			void* fcn = NULL,
			GroupProxy *parent_group=NULL
		):
			Process(data_file, bSuppress, fcn),
			parentGroup(parent_group)
				{}

		virtual void
			FlattenHierarchyCallback(GenericProxy* proxy)
				{}

		GroupProxy
			*parentGroup;
	};

}
