# PhasicFlow: src/phasicFlow/structuredData/pointStructure/selectors/pStructSelector/pStructSelector.hpp Source File

pStructSelector.hpp
Go to the documentation of this file.
/*------------------------------- phasicFlow ---------------------------------
O C enter of
O O E ngineering and
O O M ultiscale modeling of
OOOOOOO F luid flow
------------------------------------------------------------------------------
Copyright (C): www.cemf.ir
email: hamid.r.norouzi AT gmail.com
------------------------------------------------------------------------------
Licence:
This file is part of phasicFlow code. It is a free software for simulating
granular and multiphase flows. You can redistribute it and/or modify it under
the terms of GNU General Public License v3 or any other later versions.
phasicFlow is distributed to help others in their research in the field of
granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-----------------------------------------------------------------------------*/
#ifndef __pStructSelector_hpp__
#define __pStructSelector_hpp__
#include "Vectors.hpp"
#include "virtualConstructor.hpp"
namespace pFlow
{
class dictionary;
class pointStructure;
class pStructSelector
{
protected:
const pointStructure& pStruct_;
public:
// - type info
TypeInfo("pStructSelector");
pStructSelector(const pointStructure& pStruct, const dictionary& UNUSED(dict));
create_vCtor
(
pStructSelector,
dictionary,
(const pointStructure& pStruct, const dictionary& dict),
(pStruct, dict)
);
virtual ~pStructSelector() = default;
const pointStructure& pStruct()const;
virtual const int32Vector& selectedPoinsts()const = 0;
virtual int32Vector& selectedPoinsts() = 0;
static
uniquePtr<pStructSelector> create(const pointStructure& pStruct, const dictionary& dict);
};
} // pFlow
#endif //__pStructSelector_hpp__
pFlow::pStructSelector::create
static uniquePtr< pStructSelector > create(const pointStructure &pStruct, const dictionary &dict)
Definition: pStructSelector.cpp:42
UNUSED
#define UNUSED(x)
Definition: pFlowMacros.hpp:35
Vectors.hpp
pFlow::pStructSelector::TypeInfo
TypeInfo("pStructSelector")
pFlow
Definition: demComponent.hpp:28
pFlow::pointStructure
Definition: pointStructure.hpp:44
pFlow::pStructSelector::pStruct_
const pointStructure & pStruct_
Definition: pStructSelector.hpp:40
pFlow::pStructSelector::pStruct
const pointStructure & pStruct() const
Definition: pStructSelector.cpp:35
virtualConstructor.hpp
pFlow::pStructSelector::selectedPoinsts
virtual const int32Vector & selectedPoinsts() const =0
pFlow::pStructSelector::~pStructSelector
virtual ~pStructSelector()=default
pFlow::pStructSelector
Definition: pStructSelector.hpp:36
pFlow::uniquePtr
Definition: uniquePtr.hpp:44
pFlow::pStructSelector::create_vCtor
create_vCtor(pStructSelector, dictionary,(const pointStructure &pStruct, const dictionary &dict),(pStruct, dict))
pFlow::Vector< int32 >
pFlow::pStructSelector::pStructSelector
pStructSelector(const pointStructure &pStruct, const dictionary &UNUSED(dict))
Definition: pStructSelector.cpp:27
pFlow::dictionary
Definition: dictionary.hpp:38