Select Git revision
Connectivity.cpp
IBoundaryConditionDescriptor.hpp 1008 B
#ifndef I_BOUNDARY_CONDITION_DESCRIPTOR_HPP
#define I_BOUNDARY_CONDITION_DESCRIPTOR_HPP
#include <iostream>
class IBoundaryDescriptor;
class IBoundaryConditionDescriptor
{
public:
enum class Type
{
axis,
dirichlet,
external,
fourier,
fixed,
free,
inflow,
neumann,
coupling,
outflow,
symmetry
};
protected:
virtual std::ostream& _write(std::ostream& os) const = 0;
public:
friend std::ostream&
operator<<(std::ostream& os, const IBoundaryConditionDescriptor& bcd)
{
return bcd._write(os);
}
virtual const IBoundaryDescriptor& boundaryDescriptor() const = 0;
virtual Type type() const = 0;
IBoundaryConditionDescriptor() = default;
IBoundaryConditionDescriptor(const IBoundaryConditionDescriptor&) = delete;
IBoundaryConditionDescriptor(IBoundaryConditionDescriptor&&) = delete;
virtual ~IBoundaryConditionDescriptor() = default;
};
#endif // I_BOUNDARY_CONDITION_DESCRIPTOR_HPP