SMTK  @SMTK_VERSION@
Simulation Modeling Tool Kit
Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Friends | List of all members
smtk::mesh::Resource Class Reference
Inheritance diagram for smtk::mesh::Resource:
[legend]
Collaboration diagram for smtk::mesh::Resource:
[legend]

Classes

class  InternalImpl
 

Public Types

typedef smtk::geometry::Resource ParentResource
 
- Public Types inherited from smtk::resource::DerivedFrom< Resource, smtk::geometry::Resource >
using ParentResource = smtk::geometry::Resource
 
using Superclass = smtk::geometry::Resource
 
using DirectSuperclass = DerivedFrom< Resource, smtk::geometry::Resource >
 
- Public Types inherited from smtk::resource::DerivedFrom< Resource, smtk::resource::Resource >
using ParentResource = smtk::resource::Resource
 
using Superclass = smtk::resource::Resource
 
using DirectSuperclass = DerivedFrom< Resource, smtk::resource::Resource >
 
- Public Types inherited from smtk::resource::Resource
typedef std::size_t Index
 
typedef smtk::resource::Metadata Metadata
 
typedef detail::ResourceLinks Links
 
typedef detail::ResourceProperties Properties
 
typedef query::Queries Queries
 

Public Member Functions

 smtkTypeMacro (smtk::mesh::Resource)
 
 smtkSuperclassMacro (smtk::resource::DerivedFrom< Resource, smtk::geometry::Resource >)
 
 smtkSharedPtrCreateMacro (smtk::resource::PersistentObject)
 
 Resource (const Resource &other)=delete
 
Resourceoperator= (const Resource &other)=delete
 
resource::ComponentPtr find (const common::UUID &compId) const override
 Given a resource component's UUID, return the resource component.
 
std::function< bool(const resource::Component &)> queryOperation (const std::string &) const override
 given a std::string describing a query, return a functor for performing the query (accepts component as input, returns true if the component satisfies the query parameters).
 
void visit (resource::Component::Visitor &v) const override
 
bool isValid () const
 
bool isModified () const
 
const smtk::common::FileLocationreadLocation () const
 
void writeLocation (const smtk::common::FileLocation &path)
 
void writeLocation (const std::string &path)
 
const smtk::common::FileLocationwriteLocation () const
 
void clearReadWriteLocations ()
 
std::string interfaceName () const
 
const smtk::common::UUID entity () const
 
std::size_t numberOfMeshes () const
 
smtk::mesh::TypeSet types () const
 
smtk::mesh::MeshSet meshes () const
 
smtk::mesh::CellSet cells () const
 
smtk::mesh::PointSet points () const
 
smtk::mesh::PointConnectivity pointConnectivity () const
 
void assignDefaultNames ()
 Assign a machine-generated name to any mesh component that does not have a user-assigned name.
 
std::vector< std::string > meshNames () const
 
smtk::mesh::MeshSet meshes (smtk::mesh::DimensionType dim) const
 
smtk::mesh::MeshSet meshes (const smtk::mesh::Domain &d) const
 
smtk::mesh::MeshSet meshes (const smtk::mesh::Dirichlet &d) const
 
smtk::mesh::MeshSet meshes (const smtk::mesh::Neumann &n) const
 
smtk::mesh::MeshSet meshes (const std::string &name) const
 
smtk::mesh::CellSet cells (smtk::mesh::CellType cellType) const
 
smtk::mesh::CellSet cells (smtk::mesh::CellTypes cellTypes) const
 
smtk::mesh::CellSet cells (smtk::mesh::DimensionType dim) const
 
bool classifyTo (const smtk::model::ResourcePtr &)
 
smtk::model::ResourcePtr classifiedTo () const
 
smtk::mesh::TypeSet findAssociatedTypes (const smtk::model::EntityRef &eref) const
 
smtk::mesh::MeshSet findAssociatedMeshes (const smtk::model::EntityRef &eref) const
 
smtk::mesh::MeshSet findAssociatedMeshes (const smtk::model::EntityRef &eref, smtk::mesh::DimensionType dim) const
 
smtk::mesh::CellSet findAssociatedCells (const smtk::model::EntityRef &eref) const
 
smtk::mesh::CellSet findAssociatedCells (const smtk::model::EntityRef &eref, smtk::mesh::CellType cellType) const
 
smtk::mesh::CellSet findAssociatedCells (const smtk::model::EntityRef &eref, smtk::mesh::DimensionType dim) const
 
smtk::mesh::TypeSet findAssociatedTypes (const smtk::common::UUID &id) const
 
smtk::mesh::MeshSet findAssociatedMeshes (const smtk::common::UUID &id) const
 
smtk::mesh::MeshSet findAssociatedMeshes (const smtk::common::UUID &id, smtk::mesh::DimensionType dim) const
 
smtk::mesh::CellSet findAssociatedCells (const smtk::common::UUID &id) const
 
smtk::mesh::CellSet findAssociatedCells (const smtk::common::UUID &id, smtk::mesh::CellType cellType) const
 
smtk::mesh::CellSet findAssociatedCells (const smtk::common::UUID &id, smtk::mesh::DimensionType dim) const
 
smtk::mesh::TypeSet findAssociatedTypes (smtk::model::EntityIterator &refIt) const
 
smtk::mesh::MeshSet findAssociatedMeshes (smtk::model::EntityIterator &refIt) const
 
smtk::mesh::MeshSet findAssociatedMeshes (smtk::model::EntityIterator &refIt, smtk::mesh::DimensionType dim) const
 
smtk::mesh::CellSet findAssociatedCells (smtk::model::EntityIterator &refIt) const
 
smtk::mesh::CellSet findAssociatedCells (smtk::model::EntityIterator &refIt, smtk::mesh::CellType cellType) const
 
smtk::mesh::CellSet findAssociatedCells (smtk::model::EntityIterator &refIt, smtk::mesh::DimensionType dim) const
 
bool setAssociation (const smtk::model::EntityRef &eref, const smtk::mesh::MeshSet &meshset)
 
bool hasAssociations () const
 
bool associateToModel (const smtk::common::UUID &uuid)
 
bool isAssociatedToModel () const
 
smtk::common::UUID associatedModel () const
 
smtk::mesh::MeshSet createMesh (const smtk::mesh::CellSet &cells, const smtk::common::UUID &uuid=smtk::common::UUID::null())
 
bool removeMeshes (const smtk::mesh::MeshSet &meshesToDelete)
 
std::vector< smtk::mesh::Domaindomains () const
 
smtk::mesh::MeshSet domainMeshes (const smtk::mesh::Domain &m) const
 
bool setDomainOnMeshes (const smtk::mesh::MeshSet &meshes, const smtk::mesh::Domain &m)
 
std::vector< smtk::mesh::Dirichletdirichlets () const
 
smtk::mesh::MeshSet dirichletMeshes (const smtk::mesh::Dirichlet &d) const
 
bool setDirichletOnMeshes (const smtk::mesh::MeshSet &meshes, const smtk::mesh::Dirichlet &d)
 
std::vector< smtk::mesh::Neumannneumanns () const
 
smtk::mesh::MeshSet neumannMeshes (const smtk::mesh::Neumann &n) const
 
bool setNeumannOnMeshes (const smtk::mesh::MeshSet &meshes, const smtk::mesh::Neumann &n)
 
const smtk::mesh::InterfacePtrinterface () const
 
void setModelResource (smtk::model::ResourcePtr resource)
 
smtk::model::ResourcePtr modelResource () const
 
- Public Member Functions inherited from smtk::resource::DerivedFrom< Resource, smtk::geometry::Resource >
bool isOfType (const Resource::Index &index) const override
 given a resource index, return whether or not this resource is or is derived from the resource described by the index.
 
bool isOfType (const std::string &typeName) const override
 given a resource's unique name, return whether or not this resource is or is derived from the resource described by the name.
 
int numberOfGenerationsFromBase (const std::string &typeName) const override
 
 DerivedFrom (const DerivedFrom &)=delete
 
- Public Member Functions inherited from smtk::geometry::Resource
 smtkTypeMacro (smtk::geometry::Resource)
 
 smtkSharedFromThisMacro (smtk::resource::PersistentObject)
 
std::unique_ptr< Geometry > & geometry (const Backend &backend)
 Given a backend, return a provider of geometry for that backend. More...
 
std::unique_ptr< Geometry > & geometry ()
 Return the first geometry provider (for any backend). More...
 
void visitGeometry (std::function< void(std::unique_ptr< Geometry > &)> visitor)
 Visit all existing geometry providers for this resource. More...
 
void visitGeometry (std::function< void(const std::unique_ptr< Geometry > &)> visitor) const
 
 Resource (Resource &&)=default
 
void copyGeometry (const std::shared_ptr< const Resource > &source, smtk::resource::CopyOptions &options)
 Copy renderable geometry from source into this resource. More...
 
- Public Member Functions inherited from smtk::resource::DerivedFrom< Resource, smtk::resource::Resource >
bool isOfType (const Resource::Index &index) const override
 given a resource index, return whether or not this resource is or is derived from the resource described by the index.
 
bool isOfType (const std::string &typeName) const override
 given a resource's unique name, return whether or not this resource is or is derived from the resource described by the name.
 
int numberOfGenerationsFromBase (const std::string &typeName) const override
 
 DerivedFrom (const DerivedFrom &)=delete
 
- Public Member Functions inherited from smtk::resource::Resource
 smtkTypeMacro (smtk::resource::Resource)
 
 smtkSuperclassMacro (smtk::resource::PersistentObject)
 
 smtkSharedFromThisMacro (smtk::resource::PersistentObject)
 
ResourceparentResource () const override
 Return a raw (not shared) pointer to the resource that owns this resource. More...
 
void setParentResource (Resource *newParent)
 Sets the parent resource for this resource. More...
 
bool setManager (ManagerPtr newManager)
 Set the manager that the resource will use to decode its link information. More...
 
 Resource (Resource &&) noexcept
 
virtual Index index () const
 Index is a compile-time intrinsic of the derived resource's type; as such, it cannot be set.
 
template<class ResourceType >
bool isOfType () const
 Given a resource type, return whether or not this resource is or is derived from the resource described by the index.
 
const smtk::common::UUIDid () const override
 Set/get the UUID of a resource. More...
 
bool setId (const smtk::common::UUID &myID) override
 Set/get the UUID of a resource. More...
 
const std::string & location () const
 Set/get the location (a URL) where the resource is stored persistently. More...
 
virtual bool setLocation (const std::string &location)
 Set/get the location (a URL) where the resource is stored persistently. More...
 
std::string absoluteLocation (bool createDir=false) const
 As a convenience, fetch the absolute path to a resource from its location. More...
 
std::string name () const override
 Set/get the user-assigned name of the resource. More...
 
virtual bool setName (const std::string &name)
 Set/get the user-assigned name of the resource. More...
 
bool isNameSet () const
 Set/get the user-assigned name of the resource. More...
 
virtual bool clean () const
 Resources that have a non-empty location and are identical to the data stored at location are clean. More...
 
void setClean (bool state=true)
 Resources that have a non-empty location and are identical to the data stored at location are clean. More...
 
void setMarkedForRemoval (bool val)
 Mark the resource to indicate it is about to removed (meaning it is being removed from memory not necessarily for deletion)
 
virtual bool isMarkedForRemoval () const
 Return whether the object is marked for removal.
 
ManagerPtr manager () const
 Resources that are managed have a non-null pointer to their manager.
 
virtual Componentcomponent (const smtk::common::UUID &compId) const
 Given a component's UUID, return a raw pointer to the component.
 
template<typename ComponentType >
ComponentType * componentAs (const smtk::common::UUID &uuid) const
 A templated version of component() that casts its result to a type. More...
 
virtual void visit (std::function< void(const ComponentPtr &)> &v) const =0
 visit all components in a resource.
 
ComponentSet filter (const std::string &queryString) const
 Given a resource component's UUID, return the resource component.
 
template<typename Collection >
Collection filterAs (const std::string &queryString) const
 given a a std::string describing a query and a type of container, return a set of components that satisfy both. More...
 
Linkslinks () override
 Fetch the links stored for this resource and its components.
 
const Linkslinks () const override
 Fetch the links stored for this resource and its components.
 
Propertiesproperties () override
 
const Propertiesproperties () const override
 
const Queriesqueries () const
 
Queriesqueries ()
 
Locklock (Key()) const
 Classes that are granted permission to the key may retrieve the resource's lock. More...
 
LockType locked () const
 Anyone can query whether or not the resource is locked.
 
virtual bool setUnitSystem (const shared_ptr< units::System > &unitSystem)
 Sets the system of units used by this resource.
 
virtual bool setUnitsSystem (const shared_ptr< units::System > &unitsSystem)
 Sets the system of units used by this resource.
 
const shared_ptr< units::System > & unitSystem () const
 Gets the system of units used by this resource.
 
const shared_ptr< units::System > & unitsSystem () const
 Sets the system of units used by this resource.
 
virtual bool setTemplateType (const smtk::string::Token &templateType)
 Set/get the "type" of a resource's template. More...
 
virtual smtk::string::Token templateType () const
 Set/get the "type" of a resource's template. More...
 
virtual bool setTemplateVersion (std::size_t templateVersion)
 Set/get the version number of the template this instance of the resource is based upon. More...
 
virtual std::size_t templateVersion () const
 Set/get the "type" of a resource's template. More...
 
virtual std::shared_ptr< Resourceclone (CopyOptions &options) const
 Create an empty, un-managed clone of this resource instance. More...
 
virtual bool copyInitialize (const std::shared_ptr< const Resource > &source, CopyOptions &options)
 Copy initial data from a source resource into this resource. More...
 
virtual bool copyFinalize (const std::shared_ptr< const Resource > &source, CopyOptions &options)
 Finalize copying of a resource by resolving internal and external references among components copied from any of the source resources mapped in options. More...
 
void copyUnitSystem (const std::shared_ptr< const Resource > &rsrc, const CopyOptions &options)
 Copy the units system from rsrc into this resource as specified by options. More...
 
void copyProperties (const std::shared_ptr< const Resource > &rsrc, CopyOptions &options)
 Copy all property data from rsrc, mapping them along the way via options. More...
 
- Public Member Functions inherited from smtk::resource::PersistentObject
 smtkTypeMacroBase (smtk::resource::PersistentObject)
 
template<typename T >
T::Ptr as ()
 Attempt to cast this object to a subclass.
 
template<typename T >
T::ConstPtr as () const
 Attempt to cast this object to a subclass.
 

Static Public Member Functions

static constexpr smtk::resource::Links::RoleType classificationRole ()
 
static smtk::shared_ptr< Resourcecreate (const smtk::common::UUID &resourceID)
 
static smtk::shared_ptr< Resourcecreate (smtk::mesh::InterfacePtr interface)
 
static smtk::shared_ptr< Resourcecreate (const smtk::common::UUID &resourceID, smtk::mesh::InterfacePtr interface)
 
- Static Public Member Functions inherited from smtk::resource::Resource
static constexpr smtk::resource::Links::RoleType visuallyLinkedRole ()
 

Static Public Attributes

static constexpr smtk::resource::Links::RoleType ClassificationRole = -3
 A mesh resource may be classified to a model, indicating the mesh set discretizes the linked model component.
 
- Static Public Attributes inherited from smtk::resource::DerivedFrom< Resource, smtk::geometry::Resource >
static const Resource::Index type_index
 A static index for this resource type. More...
 
- Static Public Attributes inherited from smtk::resource::DerivedFrom< Resource, smtk::resource::Resource >
static const Resource::Index type_index
 A static index for this resource type. More...
 
- Static Public Attributes inherited from smtk::resource::Resource
static const Resource::Index type_index = std::type_index(typeid(Resource)).hash_code()
 
static constexpr smtk::resource::Links::RoleType VisuallyLinkedRole = -4
 A role for components that implies their visibility in renderings should be linked to another object. More...
 

Friends

class smtk::io::ReadMesh
 
std::shared_ptr< ComponentComponent::create (const ResourcePtr &, const smtk::common::UUID &)
 
std::shared_ptr< ComponentComponent::create (const MeshSet &)
 

Additional Inherited Members

- Protected Member Functions inherited from smtk::resource::DerivedFrom< Resource, smtk::geometry::Resource >
 DerivedFrom (T &&... all)
 Forward all constructor arguments to the parent class.
 
 DerivedFrom (DerivedFrom &&rhs) noexcept=default
 
- Protected Member Functions inherited from smtk::geometry::Resource
 Resource (const smtk::common::UUID &myID, smtk::resource::ManagerPtr manager)
 
 Resource (const smtk::common::UUID &myID)
 
 Resource (smtk::resource::ManagerPtr manager=nullptr)
 
- Protected Member Functions inherited from smtk::resource::DerivedFrom< Resource, smtk::resource::Resource >
 DerivedFrom (T &&... all)
 Forward all constructor arguments to the parent class.
 
 DerivedFrom (DerivedFrom &&rhs) noexcept=default
 
- Protected Member Functions inherited from smtk::resource::Resource
 Resource (const smtk::common::UUID &, ManagerPtr manager=nullptr)
 
 Resource (ManagerPtr manager=nullptr)
 
bool copyPropertiesForId (const std::shared_ptr< Resource > &rsrc, const smtk::common::UUID &sourceId, const smtk::common::UUID &targetId, const CopyOptions &options)
 Copy all property data for sourceId from rsrc into targetId of this resource. More...
 
void copyLinks (const std::shared_ptr< const Resource > &rsrc, const CopyOptions &options)
 Copy links from rsrc (except those excluded by options), mapping them along the way. More...
 
- Protected Attributes inherited from smtk::resource::Resource
WeakManagerPtr m_manager
 
std::shared_ptr< units::System > m_unitSystem
 

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