# Class List

Here are the classes, structs, unions and interfaces with brief descriptions:

H3DNetworkingUtils::Attractor | Force toward a point
H3DNetworkingUtils::BufferedMField< M > | The BufferedMField class is an H3D::MField, that has two extra capabilities: 1
H3DNetworkingUtils::BufferedSField< S > | The BufferedSField class is an H3D::SField, that has two extra capabilities: 1
H3DNetworkingUtils::CollidableDynamic | Dynamic that has an associated hierarchy of spheres roughly covering the geometry
H3DNetworkingUtils::CollisionGeometry | Abstract base class for a piece of simple geometry used to represent a complex geometry for the purposes of inter object collision - not rendered
H3DNetworkingUtils::CollisionSphere | The CollisiopnSphere class is a sphere which is used by a CollidableDynamic, to represent a portion of the geometry that can be tested for collisions against another sphere
H3DNetworkingUtils::CollisionSphereHierarchy | CollisionSphere that can also have a set of other CollidableSpheres arranged in its 'collidables" field
H3DNetworkingUtils::DampedDynamic | (Grabbable)Dynamic that behaves like a simple Dynamic that is very highly damped
H3DNetworkingUtils::DampedDynamic::SFMotion | SFMotion: We override the SFMotion from DynamicTransform to take out the momentum
H3DNetworkingUtils::Dynamic | DynamicTransform that puts the necessary routes in place to collect haptic forces on its enclosed geometry and influence the motion of the transform
H3DNetworkingUtils::Dynamic::CalcTorque | The CalcTorque field calulates the torque applied to the geometry with the haptics device /n routes_in[0] is the accumulatedForward matrix of this node /n routes_in[1] is the accumulatedInverse matrix of this node /n routes_in[2] is the collection of forces from device contacts /n routes_in[3] is the collection of global positions of the device contacts /n routes_in[4] is the angularFreedom
H3DNetworkingUtils::Dynamic::InvertForces | Accumulates the forces on the haptic devices and inverts them to act on the Dynamic
H3DNetworkingUtils::Dynamic::LinDamper | Generates a force to dampen the linear motion of a DynamicTransform
H3DNetworkingUtils::Dynamic::LinSpring | Generates a spring force that tries to pull the node to the origin /n routes_in[0] is the current position of the DynamicTransform node /n routes_in[1] is the spring force /n 1st input is enabled, /n 2nd input is position, /n 3rd is springAnchorPoint, /n 4th is springStiffness, /n 5th is springRestLength, /n 6th is springSlackLength
H3DNetworkingUtils::Dynamic::RotDamper | RotDamper dampens the angular motion of the dynamic
H3DNetworkingUtils::Dynamic::SumForces | Just sums the forces of the MFVec3f with any SFVec3f fields that are routed to it
H3DNetworkingUtils::Dynamic::SumMFVec3f | SumMFVec3f implements the impulseForce and impulseTorque fields of the MF route_in
H3DNetworkingUtils::Dynamic::SumTorques | Just sums all SFVec3f fields that are routed to it
H3DNetworkingUtils::EndianCheck | Way to check if the host machine is big or little endian
H3DNetworkingUtils::Filter | Node that can filter raw (Vec3f) values into a value depending on past history
H3DNetworkingUtils::FilteredSFVec3f | SFVec3f that modifies its value to one that is a filtered average of past values
H3DNetworkingUtils::GrabableDynamic | CollidableDynamic that has functions that enable it to be grabbed and moved by a haptic tool
H3DNetworkingUtils::GrabableDynamic::DiffVec3f | Subtracts 2 SFVec3fs
H3DNetworkingUtils::GrabableDynamic::GrabSpring | Generates a grabbing force /n 0th input is grabbed, /n 1st input is grabSpringAnchorPoint, /n 2nd is grabPoint (where the grabbing tool is), /n 3rd is grabStrength, /n 4th is springSlackLength
H3DNetworkingUtils::GrabableDynamic::GrabTorque | GrabTorque calculates the torque from the grab position and grab force input[0] is enabled input[1] is current grab position, /n input[2] is orig grab point, input[3] is force vector causing torque, input[4] is slackRadius /n
H3DNetworkingUtils::GrabableDynamic::MovedPos | MovedPos provides the position of the current (perhaps moved) position of the initial point on the object that was grabbed in global coords input 1 is a 'grabbed' boolean, input 2 is the current grabPoint, /n input 3 is the position of the object, input 4 is the orientation of the object
H3DNetworkingUtils::GrabableDynamic::NegVec3f | Negates a vec3f and adds damping input[0] is grabForce, /n input[1] is grabDamping, /n input[2] is time /n
InetAddr | The inetaddr class contains an Inet address
H3DNetworkingUtils::MouseHapticDevice | The MouseHapticsDevice class provides an alternative interface to use on haptics programs when a haptic device is not available
H3DNetworkingUtils::Packet | The payload data holds the field value
H3DNetworkingUtils::PacketSequenceChecker | Checking on sequence numbers sent in network packet headers
H3DNetworkingUtils::RealtimeAttractor | Attractor that can have its "suck-to" point changed at real time (haptic) rates
H3DNetworkingUtils::RealtimeAttractor::LockableSFVec3f | An SFVec3f that has thread-locked access
H3DNetworkingUtils::RemoteClient | Network connections involve client software conecting across a network to server software
H3DNetworkingUtils::RemoteClient::OpenHandler | Handles a connection attempt when it is set to true
H3DNetworkingUtils::RemoteConnection | Network connections involve client software conecting across a network to server software
H3DNetworkingUtils::RemoteCoordPoint | Network access to the point field of a Coordinate node
H3DNetworkingUtils::RemoteField | Abstract base class which which writes to and reads from a network connection
H3DNetworkingUtils::RemoteMF< M > | The RemoteMF class is a template class which is a node containing a multiple field which sends and receives its value to/from another the field of another RemoteMF<T> node running on another application on another host
H3DNetworkingUtils::RemoteMF< M >::MFSender | This class gets input values and sends them on trhe network
H3DNetworkingUtils::RemoteMFBool | Remote multiple bool field
H3DNetworkingUtils::RemoteMFFloat | Remote multiple Float field
H3DNetworkingUtils::RemoteMFInt32 | Remote multiple int field
H3DNetworkingUtils::RemoteMFString | Remote multiple string field
H3DNetworkingUtils::RemoteMFVec3f | Remote multiple Vec3f field
H3DNetworkingUtils::RemoteNodeField< TheNode, MultiFieldType, fld > | The RemoteNodeField is an abstract base class which provides the ability to can send updates of a given MField of a given Node across a network
H3DNetworkingUtils::RemoteNodeField< TheNode, MultiFieldType, fld >::MFSender | Sends all values in input routed field
H3DNetworkingUtils::RemoteNodeField< TheNode, MultiFieldType, fld >::SFSendAll | Sends all values
H3DNetworkingUtils::RemoteNodeField< TheNode, MultiFieldType, fld >::SFSender | Takes the index of the value in the field and sends the index plus the associated value
H3DNetworkingUtils::RemoteNormalVector | Network access to the vector field of a Normal node
H3DNetworkingUtils::RemoteServer | Remote server using a TCP port
H3DNetworkingUtils::RemoteServer::OpenHandler | Handles opening of communications
H3DNetworkingUtils::RemoteSF< S > | The RemoteSF class is a template class which is a node containing a single field which sends and receives its value to/from another the field of another RemoteSF<S> node running on another application on another host
H3DNetworkingUtils::RemoteSF< S >::SFSender | Sends the field value across the network
H3DNetworkingUtils::RemoteSFBool | Remote single boolean field
H3DNetworkingUtils::RemoteSFColor | Remote single color field
H3DNetworkingUtils::RemoteSFFloat | Remote single floating point field
H3DNetworkingUtils::RemoteSFInt32 | Remote single integer field
H3DNetworkingUtils::RemoteSFRotation | Remote Rotation field
H3DNetworkingUtils::RemoteSFString | Remote single string field
H3DNetworkingUtils::RemoteSFTime | Remote single time field
H3DNetworkingUtils::RemoteSFVec2f | Remote single Vec2f field
H3DNetworkingUtils::RemoteSFVec3f | Remote single Vec3f field
H3DNetworkingUtils::RemoteSync | Tuning tool to determine and accomodate for the the latency in a network
H3DNetworkingUtils::RemoteTCPClient | Remote client using a TCP socket
H3DNetworkingUtils::RemoteTCPServer | Remote server using a TCP port
H3DNetworkingUtils::RemoteTCPServer::ListenData | Data for the listening loop to use (A second thread cannot safely read fields used by the graphics thread)
H3DNetworkingUtils::RemoteUDPClient | Remote client using a UDP port
H3DNetworkingUtils::RemoteUDPServer | IMPORTANT NOTE: Do not route from anything in the haptics loop to a remote field if you have periodicSend FALSE
H3DNetworkingUtils::SFTimePacket | Template specializations in order to get nicer type printouts
H3DNetworkingUtils::SlaveDynamic | The SlaveDynamic superceded and is included for backwards compatibility - It is simply a GrabableDynamic with slaveMode set to TRUE
H3DNetworkingUtils::StickyDynamic | Dynamic that has three types of stickiness:
H3DNetworkingUtils::ToolPosDetector | The ToolposDetector class detects tool posititon and makes this available in its output fields at the haptic rate
H3DNetworkingUtils::ToolPosDetector::ThreadSafeSFVec3f | This class is designed to allow the value to be set in one thread and retrieved in another (not necessarily the graphics and haptics threads - in our case it is the haptics thread and a network sending thread)
H3DNetworkingUtils::VecFilter | Weighted averaging filter in the time domain