7 #include "imstkComponent.h" 9 #include "imstkVecDataArray.h" 10 #include "imstkPbdObjectCellRemoval.h" 18 class PbdObjectCellRemoval;
32 Burnable(
const std::string& name =
"BurnableBehaviour");
40 void setTrackOnly(
bool val) { m_trackOnly = val; }
42 bool getTrackOnly()
const {
return m_trackOnly; }
46 void visualUpdate(
const double& dt)
override;
48 void setUpdateType(PbdObjectCellRemoval::OtherMeshUpdateType updateType)
50 m_updateType = updateType;
53 PbdObjectCellRemoval::OtherMeshUpdateType getUpdateType()
const 58 std::shared_ptr<PbdObjectCellRemoval> getCellRemover()
const 68 bool m_trackOnly =
false;
70 PbdObjectCellRemoval::OtherMeshUpdateType m_updateType = PbdObjectCellRemoval::OtherMeshUpdateType::None;
75 std::shared_ptr<DataArray<double>> m_burnDamagePtr;
76 std::shared_ptr<DataArray<double>> m_burnVisualPtr;
std::shared_ptr< PbdObject > m_burnableObject
Object being burned.
Defines the behaviour to allow a Pbd Object to be burned. This object creates the state data on the m...
A Behaviour represents a single component system A template is used here for UpdateInfo to keep the C...
std::shared_ptr< PbdObject > getPbdObject() const
Get the PBD object to be torn.
std::shared_ptr< PbdObjectCellRemoval > m_cellRemover
Cell remover for removing cells.
void init() override
Initialize the component, called at a later time after all component construction is complete...