https://mooseframework.inl.gov
ShaftConnectable.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "InputParameters.h"
13 
14 class Component;
15 
20 {
21 public:
22  ShaftConnectable(const Component * const component);
23 
24  virtual void checkShaftConnection(const Component * const component) const;
25  virtual VariableName getMomentofInertiaVariableName() const;
26  virtual VariableName getTorqueVariableName() const;
27  virtual UserObjectName getShaftConnectedUserObjectName() const;
28  virtual void setShaftName(const std::string & name) const;
29 
30 protected:
34  VariableName _torque_var_name;
36  UserObjectName _user_object_name;
38  mutable std::string _shaft_name;
40  mutable bool _connected_to_shaft;
41 
42 public:
44 };
UserObjectName _user_object_name
Shaft-connectable user object name.
ShaftConnectable(const Component *const component)
bool _connected_to_shaft
Flag indicating that a shaft has this component connected.
std::string _shaft_name
Name of the shaft component.
static const std::string component
Definition: NS.h:153
static InputParameters validParams()
virtual void checkShaftConnection(const Component *const component) const
virtual VariableName getMomentofInertiaVariableName() const
const std::string name
Definition: Setup.h:20
Base class for THM components.
Definition: Component.h:27
VariableName _moment_of_inertia_var_name
Moment of inertia variable name.
virtual VariableName getTorqueVariableName() const
virtual UserObjectName getShaftConnectedUserObjectName() const
VariableName _torque_var_name
Torque of variable name.
Interface class for components that connect to a shaft.
virtual void setShaftName(const std::string &name) const