PeriDyno 1.0.0
Loading...
Searching...
No Matches
dyno::DiscreteElementRenderer Class Reference

#include <DiscreteElementRenderer.h>

Inheritance diagram for dyno::DiscreteElementRenderer:
Collaboration diagram for dyno::DiscreteElementRenderer:

Public Member Functions

 DiscreteElementRenderer ()
 
 ~DiscreteElementRenderer () override
 
 DEF_INSTANCE_IN (DiscreteElements, Topology, "")
 
- Public Member Functions inherited from dyno::VkGraphicsPipeline
 VkGraphicsPipeline ()
 
 ~VkGraphicsPipeline ()
 
void prepare (VkRenderPass renderPass) override
 
void setupDescriptorPool ()
 
void setupLayoutsAndDescriptors ()
 
void preparePipelines (VkRenderPass renderPass)
 
void buildCommandBuffers (VkCommandBuffer drawCmdBuffer) override
 
void updateGraphicsUBO ()
 
void viewChanged (const glm::mat4 &perspective, const glm::mat4 &view) override
 
- Public Member Functions inherited from dyno::VkVisualModule
 VkVisualModule ()
 
virtual ~VkVisualModule ()
 
std::string getModuleType () override
 
- Public Member Functions inherited from dyno::VisualModule
 VisualModule ()
 
virtual ~VisualModule ()
 
void setVisible (bool bVisible)
 
bool isVisible ()
 
- Public Member Functions inherited from dyno::Module
 Module (std::string name="default")
 
 ~Module (void) override
 
bool initialize ()
 
void update ()
 
void setName (std::string name)
 
std::string getName () override
 
virtual void setParentNode (Node *node)
 Set the parent node.
 
NodegetParentNode ()
 
SceneGraphgetSceneGraph ()
 
bool isInitialized ()
 
bool attachField (FBase *field, std::string name, std::string desc, bool autoDestroy=true) override
 Attach a field to Base.
 
bool isInputComplete ()
 Check the completeness of input fields.
 
bool isOutputCompete ()
 
 DEF_VAR (bool, ForceUpdate, false, "")
 
void setUpdateAlways (bool b)
 Set the update strategy for the module.
 
- Public Member Functions inherited from dyno::OBase
 OBase ()
 
 ~OBase () override
 
virtual std::string caption ()
 Return the caption.
 
virtual bool captionVisible ()
 Whether to hide the caption in the GUI.
 
virtual std::string description ()
 Return a description for the node or module, override this function to support user-defined description.
 
bool addField (FBase *data)
 Add a field to Base FieldID will be set to the name of Field by default.
 
bool addField (FieldID name, FBase *data)
 Add a field to Base.
 
bool addFieldAlias (FieldID name, FBase *data)
 
bool addFieldAlias (FieldID name, FBase *data, FieldMap &fieldAlias)
 
bool findField (FBase *data)
 Find a field by its pointer.
 
bool findFieldAlias (const FieldID name)
 Find a field by its name.
 
bool findFieldAlias (const FieldID name, FieldMap &fieldAlias)
 Find a field in fieldAlias by its name This function is typically called by other functions.
 
bool removeField (FBase *data)
 Remove a field by its pointer.
 
bool removeFieldAlias (const FieldID name)
 Remove a field by its name.
 
bool removeFieldAlias (const FieldID name, FieldMap &fieldAlias)
 
FBasegetField (const FieldID name)
 Return a field by its name.
 
std::vector< FBase * > & getAllFields ()
 
template<typename T>
TgetField (FieldID name)
 
bool isAllFieldsReady ()
 Check the completeness of all required fields.
 
std::vector< FieldIDgetFieldAlias (FBase *data)
 
int getFieldAliasCount (FBase *data)
 
void setBlockCoord (float x, float y)
 
float bx ()
 
float by ()
 
bool findInputField (FBase *field)
 
bool addInputField (FBase *field)
 
bool removeInputField (FBase *field)
 
std::vector< FBase * > & getInputFields ()
 
bool findOutputField (FBase *field)
 
bool addOutputField (FBase *field)
 
bool addToOutput (FBase *field)
 
bool removeOutputField (FBase *field)
 
bool removeFromOutput (FBase *field)
 
std::vector< FBase * > & getOutputFields ()
 
bool findParameter (FBase *field)
 
bool addParameter (FBase *field)
 
bool removeParameter (FBase *field)
 
std::vector< FBase * > & getParameters ()
 
- Public Member Functions inherited from dyno::Object
 Object ()
 
virtual ~Object ()
 
ObjectId objectId ()
 

Protected Member Functions

bool initializeImpl () override
 
void updateGraphicsContext () override
 
- Protected Member Functions inherited from dyno::VkGraphicsPipeline
std::string getShadersPath () const
 
VkPipelineShaderStageCreateInfo loadShader (std::string fileName, VkShaderStageFlagBits stage)
 
- Protected Member Functions inherited from dyno::VkVisualModule
void updateImpl () override
 
- Protected Member Functions inherited from dyno::Module
virtual void preprocess ()
 
virtual void postprocess ()
 
virtual bool validateInputs ()
 
virtual bool validateOutputs ()
 
virtual bool requireUpdate ()
 
virtual void updateStarted ()
 Two functions called at the beginning and end of update() used for debug.
 
virtual void updateEnded ()
 

Private Member Functions

void initBoxes (VkDeviceArray< px::Box > &boxex)
 
void initSpheres (VkDeviceArray< px::Sphere > &spheres)
 
void initCapsules (VkDeviceArray< px::Capsule > &capsules)
 

Private Attributes

std::shared_ptr< VkProgramsetupFacets
 
VkConstant< uint32_t > mBoxNumber
 
VkUniform< ElementOffsetmOffset
 

Additional Inherited Members

- Public Types inherited from dyno::OBase
typedef std::vector< FBase * > FieldVector
 
typedef std::map< FieldID, FBase * > FieldMap
 
- Static Public Member Functions inherited from dyno::Object
static bool registerClass (ClassInfo *ci)
 
static ObjectcreateObject (std::string name)
 
static std::map< std::string, ClassInfo * > * getClassMap ()
 
static ObjectId baseId ()
 Base Id.
 
- Public Attributes inherited from dyno::VkGraphicsPipeline
struct dyno::VkGraphicsPipeline::GraphicsUBO ubo
 
VkDeviceArray< VertexmCubeVertex
 
VkDeviceArray< uint32_t > mCubeIndex
 
VkDeviceArray< px::BoxmCubeInstanceData
 
VkDeviceArray< VertexmSphereVertex
 
VkDeviceArray< uint32_t > mSphereIndex
 
VkDeviceArray< px::SpheremSphereInstanceData
 
VkDeviceArray< VertexmCapsuleVertex
 
VkDeviceArray< uint32_t > mCapsuleIndex
 
VkDeviceArray< px::CapsulemCapsuleInstanceData
 
VkUniform< GraphicsUBOmUniform
 
- Protected Attributes inherited from dyno::OBase
std::vector< FBase * > fields_input
 
std::vector< FBase * > fields_output
 
std::vector< FBase * > fields_param
 

Detailed Description

Definition at line 10 of file DiscreteElementRenderer.h.

Constructor & Destructor Documentation

◆ DiscreteElementRenderer()

dyno::DiscreteElementRenderer::DiscreteElementRenderer ( )

Definition at line 9 of file DiscreteElementRenderer.cpp.

Here is the call graph for this function:

◆ ~DiscreteElementRenderer()

dyno::DiscreteElementRenderer::~DiscreteElementRenderer ( )
override

Definition at line 14 of file DiscreteElementRenderer.cpp.

Member Function Documentation

◆ DEF_INSTANCE_IN()

dyno::DiscreteElementRenderer::DEF_INSTANCE_IN ( DiscreteElements ,
Topology ,
""  )

◆ initBoxes()

void dyno::DiscreteElementRenderer::initBoxes ( VkDeviceArray< px::Box > & boxex)
private

Definition at line 59 of file DiscreteElementRenderer.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ initCapsules()

void dyno::DiscreteElementRenderer::initCapsules ( VkDeviceArray< px::Capsule > & capsules)
private

Definition at line 95 of file DiscreteElementRenderer.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ initializeImpl()

bool dyno::DiscreteElementRenderer::initializeImpl ( )
overrideprotectedvirtual

Reimplemented from dyno::Module.

Definition at line 18 of file DiscreteElementRenderer.cpp.

Here is the call graph for this function:

◆ initSpheres()

void dyno::DiscreteElementRenderer::initSpheres ( VkDeviceArray< px::Sphere > & spheres)
private

Definition at line 77 of file DiscreteElementRenderer.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateGraphicsContext()

void dyno::DiscreteElementRenderer::updateGraphicsContext ( )
overrideprotectedvirtual

Reimplemented from dyno::VkVisualModule.

Definition at line 38 of file DiscreteElementRenderer.cpp.

Here is the call graph for this function:

Member Data Documentation

◆ mBoxNumber

VkConstant<uint32_t> dyno::DiscreteElementRenderer::mBoxNumber
private

Definition at line 29 of file DiscreteElementRenderer.h.

◆ mOffset

VkUniform<ElementOffset> dyno::DiscreteElementRenderer::mOffset
private

Definition at line 31 of file DiscreteElementRenderer.h.

◆ setupFacets

std::shared_ptr<VkProgram> dyno::DiscreteElementRenderer::setupFacets
private

Definition at line 28 of file DiscreteElementRenderer.h.


The documentation for this class was generated from the following files: