blob: 7ffb96a0ee858bc244db6bd999a5f1848b1dc65a [file] [log] [blame]
//#####################################################################
// Copyright 2004, Ronald Fedkiw.
// This file is part of PhysBAM whose distribution is governed by the license contained in the accompanying file PHYSBAM_COPYRIGHT.txt.
//#####################################################################
// Class SOLIDS_EVOLUTION_CALLBACKS
//#####################################################################
#ifndef __SOLIDS_EVOLUTION_CALLBACKS__
#define __SOLIDS_EVOLUTION_CALLBACKS__
#include "../Utilities/DEBUG_UTILITIES.h"
namespace PhysBAM
{
class RIGID_BODY_COLLISION_MANAGER;
template<class T, class TV>
class SOLIDS_EVOLUTION_CALLBACKS
{
public:
SOLIDS_EVOLUTION_CALLBACKS()
{}
virtual ~SOLIDS_EVOLUTION_CALLBACKS()
{}
//#####################################################################
virtual void Update_Rigid_Body_Parameters (RIGID_BODY_COLLISION_MANAGER& collision_manager, const T time)
{
WARN_IF_NOT_OVERRIDDEN();
}
virtual void Update_Collision_Body_Positions_And_Velocities (const T time)
{
WARN_IF_NOT_OVERRIDDEN();
}
virtual void Update_Kinematic_Rigid_Body_States (const T dt, const T time)
{
WARN_IF_NOT_OVERRIDDEN();
}
virtual void Update_Solids_Topology_For_Melting (const T dt, const T time)
{
WARN_IF_NOT_OVERRIDDEN();
}
virtual void Postprocess_Solids_Substep (const T time, const int substep)
{
WARN_IF_NOT_OVERRIDDEN();
}
virtual void Apply_Constraints (const T dt, const T time)
{
WARN_IF_NOT_OVERRIDDEN();
}
//#####################################################################
};
}
#endif