|
| | cGenericTool (cWorld *a_parentWorld) |
| | Constructor of cGenericTool. More...
|
| |
| virtual | ~cGenericTool () |
| | Destructor of cGenericTool. More...
|
| |
| void | setHapticDevice (cGenericHapticDevicePtr a_hapticDevice) |
| | This method define a haptic device that will control this tool. More...
|
| |
| cGenericHapticDevicePtr | getHapticDevice () |
| | This method returns a pointer to the haptic device that is controlling this tool. More...
|
| |
| virtual bool | start () |
| | This method starts communication with the haptic device and initializes the tool. More...
|
| |
| virtual bool | stop () |
| | This method stops communication with the haptic device. More...
|
| |
| virtual void | initialize () |
| | This method resets the contact force models and sets the tool at the position of the haptic device. More...
|
| |
| virtual void | updateFromDevice () |
| | This method updates the position, orientation, velocity and other degree of freedoms of the tool by reading sensor data from the haptic device. More...
|
| |
| virtual void | computeInteractionForces () |
| | This method computes all interaction forces between the tool's haptic points and the virtual environment. More...
|
| |
| virtual bool | applyToDevice () |
| | This method sends the latest computed interaction force, torque, and gripper force to the haptic device. More...
|
| |
| virtual bool | setForcesON () |
| | This method enables forces to the haptic device. More...
|
| |
| virtual bool | setForcesOFF () |
| | This method disables forces to the haptic device. More...
|
| |
| void | setWaitForSmallForce (const bool a_value) |
| | This method enables the tool to wait for the simulation to compute a small force before sending it to the haptic device. This feature typically avoids having the device "jump" at the initialization of an application. More...
|
| |
| bool | getWaitForSmallForce () |
| | This method returns the status about waiting for small small forces to appear before sending them to the haptic device. More...
|
| |
| void | setSmallForceThresh (const double a_smallForceThresh) |
| | This method sets the force threshold required to engage forces when setWaitForSmallForce() is enabled. More...
|
| |
| double | getSmallForceThresh () |
| | This method returns the force threshold required to engage forces when setWaitForSmallForce() is enabled. More...
|
| |
| void | setUseForceRise (const bool a_value) |
| | This method enables or disables the tool to gradually rise forces at startup. More...
|
| |
| bool | getUseForceRise () |
| | This method returns the status about force rising mode. More...
|
| |
| void | setRiseTime (const double a_riseTime) |
| | This method sets the time required to rise the forces from 0% to 100%. More...
|
| |
| double | getRiseTime () |
| | This method returns the force rise time. More...
|
| |
| virtual bool | getUserSwitch (const unsigned int a_switchIndex) const |
| | This method returns the status of a user switch from the device. More...
|
| |
| virtual void | setUserSwitch (const unsigned int a_switchIndex, const bool a_value) |
| | This method overrides the status of a selected user switch. More...
|
| |
| virtual unsigned int | getUserSwitches () const |
| | This method returns the status of all user switches on the device. More...
|
| |
| virtual void | setUserSwitches (const unsigned int a_userSwitches) |
| | This method overrides the status of all user switches on the device. More...
|
| |
| virtual double | getGripperAngleRad () const |
| | This method returns the angle in radians of the gripper. More...
|
| |
| virtual void | setGripperAngleRad (const double &a_gripperAngleRad) |
| | This method overrides the angle in radians of the gripper. More...
|
| |
| virtual double | getGripperAngleDeg () const |
| | This method returns the angle in degrees of the gripper. More...
|
| |
| virtual void | setGripperAngleDeg (const double &a_gripperAngleDeg) |
| | This method overrides the angle in degrees of the gripper. More...
|
| |
| virtual double | getGripperAngVel () const |
| | This method returns the angular velocity in radians per second of the gripper. More...
|
| |
| virtual void | setGripperAngVel (const double &a_gripperAngVel) |
| | This method overrides the angular velocity of the gripper in radians per second. More...
|
| |
| virtual cVector3d | getDeviceLocalPos () const |
| | This method returns the position of the haptic device expressed in device local coordinates. More...
|
| |
| virtual void | setDeviceLocalPos (const cVector3d &a_localPos) |
| | This method overrides the position of the haptic device expressed in device local coordinates. More...
|
| |
| void | setDeviceLocalPos (const double &a_x, const double &a_y, const double &a_z) |
| | This method overrides the position of the haptic device expressed in device local coordinates. More...
|
| |
| virtual cVector3d | getDeviceGlobalPos () const |
| | This method returns the position of the haptic device expressed in world global coordinates. More...
|
| |
| virtual void | setDeviceGlobalPos (const cVector3d &a_globalPos) |
| | This method overrides the position of the haptic device expressed in world global coordinates. More...
|
| |
| void | setDeviceGlobalPos (const double &a_x, const double &a_y, const double &a_z) |
| | This method overrides the position of the haptic device expressed in world global coordinates. More...
|
| |
| virtual cVector3d | getDeviceLocalLinVel () const |
| | This method returns the linear velocity of the device expressed in device local coordinates. More...
|
| |
| virtual void | setDeviceLocalLinVel (const cVector3d &a_localLinVel) |
| | This method overrides the linear velocity of the device expressed in device local coordinates. More...
|
| |
| void | setDeviceLocalLinVel (const double &a_x, const double &a_y, const double &a_z) |
| | This method overrides the linear velocity of the device expressed in device local coordinates. More...
|
| |
| virtual cVector3d | getDeviceGlobalLinVel () const |
| | This method returns the linear velocity of the device expressed in world global coordinates. More...
|
| |
| virtual void | setDeviceGlobalLinVel (const cVector3d &a_globalLinVel) |
| | This method overrides the linear velocity of the device expressed in world global coordinates. More...
|
| |
| void | setDeviceGlobalLinVel (const double &a_x, const double &a_y, const double &a_z) |
| | This method overrides the linear velocity of the device expressed in world global coordinates. More...
|
| |
| virtual cMatrix3d | getDeviceLocalRot () const |
| | This method returns the orientation of the haptic device expressed in device local coordinates. More...
|
| |
| virtual void | setDeviceLocalRot (const cMatrix3d &a_localRot) |
| | This method overrides the orientation of the haptic device expressed in device local coordinates. More...
|
| |
| virtual void | setDeviceGlobalRot (const cMatrix3d &a_globalRot) |
| | This method overrides the orientation of the haptic device expressed in world global coordinates. More...
|
| |
| virtual cMatrix3d | getDeviceGlobalRot () const |
| | This method returns the orientation of the haptic device expressed in world global coordinates. More...
|
| |
| virtual cVector3d | getDeviceLocalAngVel () const |
| | This method returns the angular velocity of the device expressed in device local coordinates. More...
|
| |
| virtual void | setDeviceLocalAngVel (const cVector3d &a_localAngVel) |
| | This method overrides the angular velocity of the device expressed in device local coordinates. More...
|
| |
| void | setDeviceLocalAngVel (const double &a_x, const double &a_y, const double &a_z) |
| | This method overrides the angular velocity of the device expressed in device local coordinates. More...
|
| |
| virtual cVector3d | getDeviceGlobalAngVel () const |
| | This method returns the angular velocity of the device expressed in world global coordinates. More...
|
| |
| virtual void | setDeviceGlobalAngVel (const cVector3d &a_globalAngVel) |
| | This method overrides the angular velocity of the device expressed in world global coordinates. More...
|
| |
| void | setDeviceGlobalAngVel (const double &a_x, const double &a_y, const double &a_z) |
| | This method overrides the angular velocity of the device expressed in world global coordinates. More...
|
| |
| virtual cTransform | getDeviceLocalTransform () const |
| | This method returns a transformation matrix which expresses the position and orientation of the haptic device in the local tool frame. More...
|
| |
| virtual void | setDeviceLocalTransform (const cTransform &a_localTransform) |
| | This method overrides the transformation matrix which expresses the position and orientation of the haptic device in the local tool frame. More...
|
| |
| virtual cTransform | getDeviceGlobalTransform () const |
| | This method returns a transformation matrix which expresses the position and orientation of the haptic device in world coordinates. More...
|
| |
| virtual void | setDeviceGlobalTransform (const cTransform &a_globalTransform) |
| | This method overrides the transformation matrix which expresses the position and orientation of the haptic device in world coordinates. More...
|
| |
| virtual double | getGripperForce () const |
| | This method returns the currently computed gripper force. More...
|
| |
| virtual void | setGripperForce (const double &a_gripperForce) |
| | This method overrides the current gripper force. More...
|
| |
| virtual void | addGripperForce (const double &a_gripperForce) |
| | This method adds a force to the currently computed gripper force. More...
|
| |
| virtual cVector3d | getDeviceLocalForce () const |
| | This method returns the currently computed force expressed in device or tool local coordinates. More...
|
| |
| virtual void | setDeviceLocalForce (const cVector3d &a_localForce) |
| | This method overrides the current force expressed in device or tool local coordinates. More...
|
| |
| void | setDeviceLocalForce (const double &a_x, const double &a_y, const double &a_z) |
| | This method overrides the current force expressed in device or tool local coordinates. More...
|
| |
| virtual void | addDeviceLocalForce (const cVector3d &a_localForce) |
| | This method adds a force to the currently computed force expressed in device or tool local coordinates. More...
|
| |
| void | addDeviceLocalForce (const double &a_x, const double &a_y, const double &a_z) |
| | This method adds a force to the currently computed force expressed in device or tool local coordinates. More...
|
| |
| virtual cVector3d | getDeviceGlobalForce () const |
| | This method returns the currently computed force expressed in world coordinates. More...
|
| |
| virtual void | setDeviceGlobalForce (const cVector3d &a_globalForce) |
| | This method overrides the current force expressed in world coordinates. More...
|
| |
| void | setDeviceGlobalForce (const double &a_x, const double &a_y, const double &a_z) |
| | This method overrides the current force expressed in world coordinates. More...
|
| |
| virtual void | addDeviceGlobalForce (const cVector3d &a_globalForce) |
| | This method adds a force to the currently computed force expressed in world coordinates. More...
|
| |
| void | addDeviceGlobalForce (const double &a_x, const double &a_y, const double &a_z) |
| | This method adds a force to the currently computed force expressed in world coordinates. More...
|
| |
| virtual cVector3d | getDeviceLocalTorque () const |
| | This method returns the currently computed torque expressed in device or tool local coordinates. More...
|
| |
| virtual void | setDeviceLocalTorque (const cVector3d &a_localTorque) |
| | This method overrides the current torque expressed in device local coordinates. More...
|
| |
| void | setDeviceLocalTorque (const double &a_x, const double &a_y, const double &a_z) |
| | This method overrides the current torque expressed in device local coordinates. More...
|
| |
| virtual void | addDeviceLocalTorque (const cVector3d &a_localTorque) |
| | This method adds a torque to the currently computed torque expressed in device local coordinates. More...
|
| |
| void | addDeviceLocalTorque (const double &a_x, const double &a_y, const double &a_z) |
| | This method adds a torque to the currently computed torque expressed in device local coordinates. More...
|
| |
| virtual cVector3d | getDeviceGlobalTorque () const |
| | This method returns the currently computed torque expressed in world coordinates. More...
|
| |
| virtual void | setDeviceGlobalTorque (const cVector3d &a_globalTorque) |
| | This method overrides the current torque expressed in world coordinates. More...
|
| |
| void | setDeviceGlobalTorque (const double &a_x, const double &a_y, const double &a_z) |
| | This method overrides the current torque expressed in world coordinates. More...
|
| |
| virtual void | addDeviceGlobalTorque (const cVector3d &a_globalTorque) |
| | This method adds a torque to the currently computed torque expressed in world coordinates. More...
|
| |
| void | addDeviceGlobalTorque (const double &a_x, const double &a_y, const double &a_z) |
| | This method adds a torque to the curently computed torque expressed in world coordinates. More...
|
| |
| bool | setWorkspaceRadius (const double &a_workspaceRadius) |
| | This method set the translational virtual workspace dimensions in which tool will be working. More...
|
| |
| double | getWorkspaceRadius () |
| | This method returns the radius of the workspace of the tool. More...
|
| |
| bool | setWorkspaceScaleFactor (const double &a_workspaceScaleFactor) |
| | This method sets the scale factor between the workspaces of the haptic device and the virtual tool. More...
|
| |
| double | getWorkspaceScaleFactor () |
| | This method returns the current workspace scale factor between the haptic device and the tool. More...
|
| |
| virtual bool | isInContact (cGenericObject *a_object) |
| | This method checks if the tool is touching a particular object. More...
|
| |
| int | getNumHapticPoints () |
| | This method returns the number of haptic points that describe this tool. More...
|
| |
| cHapticPoint * | getHapticPoint (int a_index) |
| | This method returns a pointer to a haptic point by passing its index number. More...
|
| |
| virtual void | setRadius (double a_radius) |
| | This method sets the radius size of all haptic points. More...
|
| |
| virtual void | setRadius (double a_radiusDisplay, double a_radiusContact) |
| | This method sets the radius size of all haptic points. More...
|
| |
| virtual void | setRadiusContact (double a_radiusContact) |
| | This method sets the radius size of the of the physical proxy used in all haptic points. More...
|
| |
| virtual void | setRadiusDisplay (double a_radiusDisplay) |
| | This method sets the radius size of the spheres used to display the proxies and goals positions. More...
|
| |
| virtual void | setShowContactPoints (bool a_showProxy=true, bool a_showGoal=false, cColorf a_colorLine=cColorf(0.5, 0.5, 0.5)) |
| | This method sets the display properties of all haptic points. More...
|
| |
| cWorld * | getParentWorld () |
| | This method returns the parent world of this tool. More...
|
| |
| virtual void | enableDynamicObjects (bool a_enabled) |
| | This method enables or disables the dynamic proxy algorithm to support environments where mesh objects move. More...
|
| |
| bool | createAudioSource (cAudioDevice *a_audioDevice) |
| | This method creates an audio source for each haptic point of this tool. More...
|
| |
| virtual void | render (cRenderOptions &a_options) |
| | This method renders the tool graphically using OpenGL. More...
|
| |
| virtual void | setShaderProgram (cShaderProgramPtr a_shaderProgram, const bool a_affectChildren=false) |
| | This method assigns a shader program to this object, optionally propagating the operation to its children.. More...
|
| |
| | cGenericObject () |
| | Constructor of cGenericObject. More...
|
| |
| virtual | ~cGenericObject () |
| | Destructor of cGenericObject. More...
|
| |
| virtual void | setEnabled (bool a_enabled, const bool a_affectChildren=false) |
| | This method enables or disable this object. When an object is disabled, both haptic and graphic rendering no longer occur. More...
|
| |
| bool | getEnabled () const |
| | This method returns true if the object is enabled, false otherwise. More...
|
| |
| virtual cGenericObject * | copy (const bool a_duplicateMaterialData=false, const bool a_duplicateTextureData=false, const bool a_duplicateMeshData=false, const bool a_buildCollisionDetector=true) |
| | This method creates a copy of itself. More...
|
| |
| virtual void | setLocalPos (const cVector3d &a_localPos) |
| | This method sets the local position of this object. More...
|
| |
| void | setLocalPos (const double a_x=0.0, const double a_y=0.0, const double a_z=0.0) |
| | This method sets the local position of this object. More...
|
| |
| cVector3d | getLocalPos () const |
| | This method returns the local position of this object. More...
|
| |
| cVector3d | getGlobalPos () const |
| | This method returns the global position of this object. More...
|
| |
| virtual void | setLocalRot (const cMatrix3d &a_localRot) |
| | This method sets the local rotation matrix for this object. More...
|
| |
| cMatrix3d | getLocalRot () const |
| | This method returns the local rotation matrix of this object. More...
|
| |
| cMatrix3d | getGlobalRot () const |
| | This method returns the global rotation matrix of this object. More...
|
| |
| void | setLocalTransform (const cTransform &a_transform) |
| | This method returns the local position and rotation matrix by passing a transformation matrix. More...
|
| |
| cTransform | getLocalTransform () |
| | This method returns the local position and rotation matrix in a transformation matrix. More...
|
| |
| cTransform | getGlobalTransform () |
| | This method returns the global position and rotation matrix in a transformation matrix. More...
|
| |
| void | translate (const cVector3d &a_translation) |
| | This method translates this object by a specified offset. More...
|
| |
| void | translate (const double a_x, const double a_y, const double a_z=0.0) |
| | This method translates this object by a specified offset. More...
|
| |
| void | rotateAboutLocalAxisRad (const cVector3d &a_axis, const double a_angleRad) |
| | This method rotates this object around a local axis. Angle magnitude is defined in radians. More...
|
| |
| void | rotateAboutLocalAxisDeg (const cVector3d &a_axis, const double a_angleDeg) |
| | This method rotates this object around a local axis. Angle magnitude is defined in degrees. More...
|
| |
| void | rotateAboutLocalAxisRad (const double a_axisX, const double a_axisY, const double a_axisZ, const double a_angleRad) |
| | This method rotates this object around a local axis. Angle magnitude is defined in radians. More...
|
| |
| void | rotateAboutLocalAxisDeg (const double a_axisX, const double a_axisY, const double a_axisZ, const double a_angleDeg) |
| | This method rotates this object around a local axis. Angle magnitude is defined in degrees. More...
|
| |
| void | rotateAboutGlobalAxisRad (const cVector3d &a_axis, const double a_angleRad) |
| | This method rotates this object around a global axis. Angle magnitude is defined in radians. More...
|
| |
| void | rotateAboutGlobalAxisDeg (const cVector3d &a_axis, const double a_angleDeg) |
| | This method rotates this object around a global axis. Angle magnitude is defined in degrees. More...
|
| |
| void | rotateAboutGlobalAxisRad (const double a_axisX, const double a_axisY, const double a_axisZ, const double a_angleRad) |
| | This method rotate this object around a local axis. Angle magnitude is defined in radians. More...
|
| |
| void | rotateAboutGlobalAxisDeg (const double a_axisX, const double a_axisY, const double a_axisZ, const double a_angleDeg) |
| | This method rotates this object around a local axis. Angle magnitude is defined in degrees. More...
|
| |
| void | rotateExtrinsicEulerAnglesRad (const double &a_angleRad1, const double &a_angleRad2, const double &a_angleRad3, const cEulerOrder a_eulerOrder) |
| | This method rotates this object using fixed Euler representation. Angles are defined in radians. More...
|
| |
| void | rotateExtrinsicEulerAnglesDeg (const double &a_angleDeg1, const double &a_angleDeg2, const double &a_angleDeg3, const cEulerOrder a_eulerOrder) |
| | This method rotates this object using fixed Euler representation. Angles are defined in radians. More...
|
| |
| void | rotateIntrinsicEulerAnglesRad (const double &a_angleRad1, const double &a_angleRad2, const double &a_angleRad3, const cEulerOrder a_eulerOrder) |
| | This method rotates this object using co-moving Euler representation. Angles are defined in radians. More...
|
| |
| void | rotateIntrinsicEulerAnglesDeg (const double &a_angleDeg1, const double &a_angleDeg2, const double &a_angleDeg3, const cEulerOrder a_eulerOrder) |
| | This method rotates this object using co-moving Euler representation. Angles are defined in radians. More...
|
| |
| virtual void | computeGlobalPositions (const bool a_frameOnly=true, const cVector3d &a_globalPos=cVector3d(0.0, 0.0, 0.0), const cMatrix3d &a_globalRot=cIdentity3d()) |
| | This method computes the global position and rotation of this object and its children. More...
|
| |
| void | computeGlobalPositionsFromRoot (const bool a_frameOnly=true) |
| | This method computes the global position and rotation of current object only. More...
|
| |
| bool | addEffect (cGenericEffect *a_effect) |
| | This method adds a haptic effect to this object. More...
|
| |
| bool | removeEffect (cGenericEffect *a_effect) |
| | This method removes a haptic effect from this object. More...
|
| |
| void | deleteAllEffects () |
| | This method removes all haptic effects. More...
|
| |
| bool | createEffectMagnetic () |
| | This method creates a magnetic haptic effect. More...
|
| |
| bool | deleteEffectMagnetic () |
| | This method deletes any current magnetic haptic effect. More...
|
| |
| bool | createEffectStickSlip () |
| | This method creates a stick-and-slip haptic effect. More...
|
| |
| bool | deleteEffectStickSlip () |
| | This method delete any current stick-and-slip haptic effect. More...
|
| |
| bool | createEffectSurface () |
| | This method creates a surface haptic effect. More...
|
| |
| bool | deleteEffectSurface () |
| | This method deletes any current surface haptic effect. More...
|
| |
| bool | createEffectVibration () |
| | This method creates a vibration haptic effect. More...
|
| |
| bool | deleteEffectVibration () |
| | This method deletes any current vibration haptic effect. More...
|
| |
| bool | createEffectViscosity () |
| | This method creates a viscous haptic effect. More...
|
| |
| bool | deleteEffectViscosity () |
| | This method deletes any current viscous haptic effect. More...
|
| |
| virtual void | setHapticEnabled (const bool a_hapticEnabled, const bool a_affectChildren=true) |
| | This method enables or disables haptic perception of this object, optionally propagating the change to children. More...
|
| |
| bool | getHapticEnabled () const |
| | This method returns the haptic status of object (true means it can be felt when visible). More...
|
| |
| virtual void | setStiffness (const double a_stiffness, const bool a_affectChildren=true) |
| | This method sets the haptic stiffness of the object, optionally recursively affecting children. More...
|
| |
| virtual void | setFriction (double a_staticFriction, double a_dynamicFriction, const bool a_affectChildren=true) |
| | This method sets the static and dynamic friction properties (polygonal models only), optionally recursively affecting children. More...
|
| |
| virtual void | setShowEnabled (const bool a_show, const bool a_affectChildren=true) |
| | This method enables or disables the graphic display of this object, optionally propagating the change to children. More...
|
| |
| bool | getShowEnabled () const |
| | This method returns the display status of object (true means it's visible). More...
|
| |
| virtual void | setWireMode (const bool a_showWireMode, const bool a_affectChildren=false) |
| | This method enables or disables wireframe rendering, optionally propagating the operation to my children. More...
|
| |
| bool | getWireMode () const |
| | This method returns whether wireframe rendering is enabled. More...
|
| |
| virtual void | setUseCulling (const bool a_useCulling, const bool a_affectChildren=false) |
| | This method enables or disables face-culling, optionally propagating the operation to my children. More...
|
| |
| bool | getUseCulling () const |
| | This method returns true if face-culling is enabled, false otherwise. More...
|
| |
| virtual void | setUseTransparency (const bool a_useTransparency, const bool a_affectChildren=false) |
| | This method enables or disables transparency. More...
|
| |
| bool | getUseTransparency () const |
| | This method returns true if transparency is enabled, false otherwise. More...
|
| |
| virtual void | setTransparencyLevel (const float a_level, const bool a_applyToVertices=false, const bool a_applyToTextures=false, const bool a_affectChildren=false) |
| | This method sets the transparency level of the object. More...
|
| |
| virtual void | setUseDisplayList (const bool a_useDisplayList, const bool a_affectChildren=false) |
| | This method enabled or disables the use of a display list for rendering, optionally propagating the operation to its children. More...
|
| |
| bool | getUseDisplayList () const |
| | This method returns true if a display list is activated, false otherwise. More...
|
| |
| virtual void | markForUpdate (const bool a_affectChildren=false) |
| | This method invalidates any existing display lists, optionally propagating the operation to its children. More...
|
| |
| virtual void | setUseVertexColors (const bool a_useColors, const bool a_affectChildren=false) |
| | This method enables or disables the use of per-vertex colors, optionally propagating the operation to its children. More...
|
| |
| bool | getUseVertexColors () const |
| | This method returns true is per-vertex color properties are enabled, false otherwise. More...
|
| |
| virtual void | setUseMaterial (const bool a_useMaterial, const bool a_affectChildren=false) |
| | This method enables or disables the use of material properties, optionally propagating the operation to its children. More...
|
| |
| bool | getUseMaterial () const |
| | This method returns true is material properties are enabled, false otherwise. More...
|
| |
| virtual void | setMaterial (cMaterialPtr a_material, const bool a_affectChildren=false) |
| | This method sets the material properties of this object, optionally propagating the operation to its children. More...
|
| |
| virtual void | setMaterial (cMaterial &a_material, const bool a_affectChildren=false) |
| | This method setd the material properties of this object, optionally propagating the operation to its children. More...
|
| |
| virtual void | backupMaterialColors (const bool a_affectChildren=false) |
| | This method creates a backup of the material colors of this object, optionally propagating the operation to its children. More...
|
| |
| virtual void | restoreMaterialColors (const bool a_affectChildren=false) |
| | This method restores the material color properties of this object from a previous backup, optionally propagating the operation to its children. More...
|
| |
| virtual void | setUseTexture (const bool a_useTexture, const bool a_affectChildren=false) |
| | This method enables or disables the use of texture-mapping, optionally propagating the operation to its children. More...
|
| |
| bool | getUseTexture () const |
| | This method returns true if texture-mapping is enabled, false otherwise. More...
|
| |
| virtual void | setTexture (cTexture1dPtr a_texture, const bool a_affectChildren=false) |
| | This method sets a texture to this object, optionally propagating the operation to its children. More...
|
| |
| virtual cShaderProgramPtr | getShaderProgram () |
| | This method returns a pointer to the current shader program. More...
|
| |
| virtual void | setShowBoundaryBox (const bool a_showBoundaryBox, const bool a_affectChildren=false) |
| | This method enables or disabled the graphic display of the boundary box for this object, optionally propagating the change to its children. More...
|
| |
| bool | getShowBoundaryBox () const |
| | This method returns true if the boundary box is being displayed, false otherwise. More...
|
| |
| cVector3d | getBoundaryMin () const |
| | This method returns the minimum point of this object's boundary box. More...
|
| |
| cVector3d | getBoundaryMax () const |
| | This method returns the maximum point of this object's boundary box. More...
|
| |
| cVector3d | getBoundaryCenter () const |
| | This method computes and returns the center of this object's boundary box. More...
|
| |
| bool | getBoundaryBoxEmpty () |
| | This method returns true, if the boundary box is empty, otherwise false. More...
|
| |
| virtual void | computeBoundaryBox (const bool a_includeChildren=true) |
| | This method computes this object's boundary box, optionally forcing it to bound child objects. More...
|
| |
| virtual void | setShowFrame (const bool a_showFrame, const bool a_affectChildren=false) |
| | This method enables or disables the graphic display of the reference frame arrows for this object, optionally propagating the change to its children. More...
|
| |
| bool | getShowFrame (void) const |
| | This method returns true if the display of the reference frame is enabled, false otherwise. More...
|
| |
| virtual void | setFrameSize (const double a_size=1.0, const bool a_affectChildren=false) |
| | This method sets the size of the rendered reference frame, optionally propagating the change to its children. More...
|
| |
| double | getFrameSize () const |
| | This method returns the size of the graphical reference frame. More...
|
| |
| void | setCollisionDetector (cGenericCollision *a_collisionDetector) |
| | This method sets a collision detector to this current object. More...
|
| |
| cGenericCollision * | getCollisionDetector () const |
| | This method returns a pointer to this object's current collision detector. More...
|
| |
| virtual void | deleteCollisionDetector (const bool a_affectChildren=false) |
| | This method deletes any existing collision detector. More...
|
| |
| virtual bool | computeCollisionDetection (const cVector3d &a_segmentPointA, const cVector3d &a_segmentPointB, cCollisionRecorder &a_recorder, cCollisionSettings &a_settings) |
| | This method computes any collision between a segment and this object. More...
|
| |
| virtual void | setShowCollisionDetector (const bool a_showCollisionDetector, const bool a_affectChildren=false) |
| | This method enables or disables the display of the collision detector, optionally propagating the change to its children. More...
|
| |
| bool | getShowCollisionDetector () |
| | This method returns true if the collision detector is being displayed graphically, false otherwise. More...
|
| |
| virtual void | setCollisionDetectorProperties (unsigned int a_displayDepth, cColorf &a_color, const bool a_affectChildren=false) |
| | This method sets the collision detector graphic display properties. More...
|
| |
| void | setParent (cGenericObject *a_parent) |
| | This method sets the parent of this object. More...
|
| |
| cGenericObject * | getParent () const |
| | This method returns the parent of this object. More...
|
| |
| void | setOwner (cGenericObject *a_owner) |
| | This method sets a link to an object that owns this object. This could be a super parent for instance. More...
|
| |
| cGenericObject * | getOwner () |
| | This method returns the owner of this object. More...
|
| |
| cGenericObject * | getChild (const unsigned int a_index) const |
| | This method returns a selected child from the list of children. More...
|
| |
| bool | addChild (cGenericObject *a_object) |
| | This method add an object to the list of children. More...
|
| |
| bool | removeChild (cGenericObject *a_object) |
| | This method removes an object from the list of children, without deleting it. More...
|
| |
| bool | removeFromGraph () |
| | This method removes this object from its parent's list of children. More...
|
| |
| bool | deleteChild (cGenericObject *a_object) |
| | This method removes an object from its list of children and deletes it. More...
|
| |
| void | clearAllChildren () |
| | This method clears all objects from its list of children, without deleting them. More...
|
| |
| void | deleteAllChildren () |
| | This method clears and delete all objects from its list of children. More...
|
| |
| unsigned int | getNumChildren () |
| | This method returns the number of children from its list of children. More...
|
| |
| unsigned int | getNumDescendants (bool a_includeCurrentObject=false) |
| | This method returns the total number of descendants, optionally including this object. More...
|
| |
| void | setGhostEnabled (bool a_ghostEnabled) |
| | This method enables or disables this object to be a ghost node. More...
|
| |
| bool | getGhostEnabled () |
| | This method returns truee if this object is a ghost node. More...
|
| |
| virtual void | scale (const double &a_scaleFactor, const bool a_affectChildren=true) |
| | This method scales the size of this object. More...
|
| |
| virtual void | renderSceneGraph (cRenderOptions &a_options) |
| | This method renders the entire scene graph, starting from this object. More...
|
| |
| virtual void | adjustCollisionSegment (cVector3d &a_segmentPointA, cVector3d &a_segmentPointAadjusted) |
| | This method adjusts the collision segment to handle objects in motion. More...
|
| |
| virtual cVector3d | computeInteractions (const cVector3d &a_toolPos, const cVector3d &a_toolVel, const unsigned int a_IDN, cInteractionRecorder &a_interactions) |
| | This method computes all haptic interaction between a tool and this object using the haptic effects. More...
|
| |
| | cGenericType () |
| | Constructor of cGenericType. More...
|
| |
| virtual | ~cGenericType () |
| | Destructor of cGenericType. More...
|
| |


The neighbors. Sometimes, they're annoying, sometimes they're helpful, sometimes they just drop by way too often. Whether good or bad, however, one thing is fairly certain: If you're living in TV land, you've only got one clear set of 'em. Almost as if the rules of space-time somehow didn't apply to this neighbourhood, resulting in a house that's actually only got one side... or a block with only two lots on it, so only two houses border each other. However, in that case there would still be other nearby houses across the streets, so if it seems like there is only one other named family in the entire neighborhood then this trope is in full force.
The reasoning behind this trope is fairly simple: Keeping down the number of characters that the audience has to remember, and thus the number of actors you have to hire, and even the number of sets you have to maintain, in the case of a live-action TV-series.
Sometimes, the "other" neighbours may make a brief, single-episode appearance, only to be promptly forgotten again. Or may only be seen in the background at parties or other special occasions the main characters attend or host.
See also Limited Social Circle and Everyone Went to School Together.
Examples:
- Donald Duck in comics has two neighbors, one named Jones and one named Smith. They are, however, functionally identical, as they are both sworn enemies of Donald. In fact, most recent comics ignore Smith.
 Or it could be someone new who moves in and forces an Enemy Mine situation between Donald and Mr. Jones by annoying both. These things get pretty formulaic after one reads many of the comics.
- In Circles, the only important neighbors are Mrs. Nussbaum and Carter Allen and his family.
- Batman: While a few of the other rich folk who live in Bruce's neighborhood show up in stories from time to time, usually because they're being robbed or are corrupt corporate executives, they rarely make more than one appearance. The house next door that is right at the entrance of the Wayne estate though has the Drake family move in and they become recurring characters until their deaths since their son Tim becomes the newest Robin.
- In Clerks (and Clerks: The Animated Series), the convenience store, as far as we know, has only the video store next to it — thus making it an interesting case of a Moebius Strip Mall.
- One of the many Clerks comic book stories involves the clerks finally noticing a small store set in between the locations. Turns out an old, bearded guy named Claus runs it.
- This is one of the questions frequently raised about Harry Potter. Harry spends an awful lot of time in the Gryffindor common room or eating at the Gryffindor table in the Great Hall, yet some of his fellow (and not new) Gryffindors are still strangers by the time he meets them in books five and six. He would have to have been actively avoiding these people for years in order not to at least know who they are.
- Small Wonder never showed us the Lawsons' other neighbors, as if they and the Brindles were the only families on their block.
- The early seasons of Married... with Children had the Rhodes as the Bundys' neighbors... and nobody else. Later seasons introduced Bob Rooney, another man from the neighborhood, as a recurring character, though it's unclear whether he lives on the other side of the Bundys, or somewhere else nearby.
- Played with in the PBS show Square One TV. During the "Mathnet" sketches, George Frankly would often speak of his "right-side neighbor, Mr. Beasley," without ever mentioning who was on the left side. However, in later seasons, the "Math Brigade" sketches detailed the adventures of Dirk Niblick and his "left-side neighbor, Mr. Beasley," which gives Beasley two sets of neighbors.
- iCarly: Well, Moebius apartment building.
- In That '70s Show, this trope is followed, and it's even strongly implied that the Foremans and the Pinciottis each have only each other for next door neighbors (where a lecherous character says he drives by Donna's house a lot because his mother lives next door and Eric protests that he lives next door).
- The title character of Everybody Loves Raymond lives across the street from his annoying parents, but neither house seems to have one beside it.
- Friends: Averted with the main apartment building. The gang do know other people in their building,( Mr Heckles, Danny, Joey's singing friend, Ugly Naked Guy (who actually lives in a building across the street)) Played straight with their actual floor, as only Apartment 19 and 20 exist: We see the gang running across the hallway to each other, using it as a thoroughfare, never locking their doors, having joint parties in the hallway, getting into fights, riding pogo sticks, putting the chick and the duck out there...without the other residents ever appearing. They may as well have demolished the walls and joined the apartments up completely.
- Lampshaded on The Drew Carey Show when one of Drew's wacky neighbors from the early episodes drops by. Drew, not being too happy about them always showing up, asks her, "Don't you have neighbours on the other side?"
- Either played straight or averted on Cougar Town, depending on how many houses there are on the cul-de-sac. Either there are not many houses and we know all or most of the residents, or it's a good example of this trope.
- Steve Urkel on Family Matters lived next door to the Winslows for most of the series, but eventually he moved in with them. Apparently this left a vacancy in the neighborhood's only other house, because shortly thereafter a new obnoxious neighbor, Nick Niedermeyer, moved in to the former Urkel residence.
- On Boy Meets World, the Matthewses and Mr. Feeny are always talking over the fence between their adjacent side yards, but we never see an inch of the rest of the street, or even the rest of their yards.
- In Round the Twist, the only neighbour of the Twists is Nell. However, as the Twists live in a lighthouse near a cliff's edge, this is pretty realistic.
- Roseanne had new neighbors in the house next door every few years. Sometimes they would be heavy in the plot, and others would be around for a one off joke. No neighbors living in any other house on the block were ever mentioned or interacted with, though.
- Bitmap World averts this: Both the Smileys and the Ks are plot-relevant.
- Andy Weir talks about his attempts to avert this trope in this Casey and Andy newspost (scroll down to the Trivia Tidbit).
- This is what is shaping up for Savestate. The only known neighbors for Kade and Nicole at the house they inherited from their Uncle Scooby are a family of reindeer that live across the street. This includes Amber and her two children, Chris and Claire. He know Kade and Nicole's parents live "a long car ride" away from their house.
- Living next door to The Simpsons are, of course, the Flanders. But on the other side? Ruth Powers and her teenage daughter Laura. Never heard of them? Don't feel bad; they've appeared in a grand total of maybe two episodes.
- And before them there were the Winfields, who appeared in four episodes, including the one where they moved out to be replaced by the Powers. In fact, Ruth's most recent appearance ("Strong Arm of the Ma") suggests they're not living there anymore, either...
- A few episodes seem to forget that the house next door exists at all in any way, shape or form.
- Similarly, the house across the street from the Simpsons, alternates quite rapidly, some episodes it's a huge mansion as in the episode where George Bush moves in, other times it's a vacant lot, most of the time it's just another regular house with nondescript occupants, but once it was shown that Carl lived there which was never mentioned again.
- Of course, there is a Separate Simpsons Geography Thing anyway. And the first time 742 Evergreen Terrace was mentioned, it was a generic house being burgled by Snake rather than the Simpsons' house, adding to the confusion.
- Similarly, behind the Simpsons' backyard is most commonly sheer empty space (nothing is drawn behind the fence) or wilderness, but it has also been everything from a graveyard to the Springfield Nuclear Power Plant.
- Darkwing Duck has only one set of neighbors, the Muddlefoots.
- Eventually abandoned in The Flintstones, in which a group of Addams Family knockoffs: The Gruesomes moved next to the other side of Fred and Wilma from the Rubbles.
- In the 1980s they got a similar cast of neighbours, the Frankenstones, who seemed to be based more around The Munsters. The head of the family is a typical Frankenstein's Monster knockoff, and he and Fred really hate each other's guts, even when everyone else gets along fine.
- Up until around the sixth season of The Fairly OddParents, it seemed as if the Dinkleburgs (relationship's pretty much ripped off Homer and Ned) were the only neighbors to the Turners.  Naturally, they only existed for the sake of the plot of one particular episode and have yet to be seen again.
- The Pfifers [the black neighbors] did reappear as one of the childless couples outshining the Turners in "The Masked Magician".
- Averted in The Backyardigans. There are three houses behind the titular (and pretty big) backyard, but its residents are never shown.
- If you pay attention to the end of the episodes, you'll see the three houses belong to the families of Pablo, Tyrone, and Uniqua. They are color coordinated to the characters. Austin lives on the other side of the fence to right, and Tasha lives across the street. If anything, this show subverts the trope.
- Carl is the only neighbor of the Aqua Teen Hunger Force, and they are his only neighbors (except for the half season or so when they were kidnapped/evicted and their landlord rented the place out to even worse people to live near). Probably makes sense considering how the Aqua Teens seem to demolish property values. Even when there's
- Averted in Family Guy, as the Griffin family's neighbors (Cleveland and Loretta Brown, Mort and Muriel Goldman, Glenn Quagmire, Joe and Bonnie Swanson, and Herbert) form most of the supporting cast.
- Averted greatly in King of the Hill. The Hills' family home in Rainy Street is near four sets of neighbors who regularly appear in the show. Also occasionally, there is somebody moving in the house in front of the Hills' home.
- Averted on Kick Buttowski. A bunch of the Buttowskis' neighbors make regular appearances, including Gunther and his family, Jackie, Mr. Vickle, Ms. Chicorelli, and in "Kick or Treat" it was revealed that Kendall was living next door to Kick the entire time (which he somehow did not know).
- The Amazing World of Gumball: The Robinsons are essentially the only neighbors of the Wattersons. A few shots show various supporting cast and Recurring Extras living in nearby houses, but only Gary the mailman is seen consistentlyand even he's been shown living in several different houses ("The Wand" and "The Allergy" both show Gary living on the house opposite to the Robinsons' house, in "The Remote" he lives across the street, and in "The Nest" and "The Neighbor", to the left of the Wattersons).
- Mort and the It's Your Funeral Home and Crematorium is to the left of Bob's Burgers. A constantly changing array of businesses are to the right of the titular shop in the show's opening titles, but the lot in generally vacant in the body of the show's episodes. Jimmy Pesto's Pizzeria is directly on the other side of the street, and various other nearby businesses are visited.
- Chances are, if you live in a big city, you know maybe one or two sets of neighbors, if any at all. This is especially true if you live in a high rise, which can realistically house hundreds of apartments in a single building. The only people one tends to encounter are people on a similar schedule to his own, and at those times nobody's in the mood to stop and chat. Most city dwellers simply don't bother making neighbors' acquaintances.
- Comedian Dara Ó Brian has a bit about how he and his wife know all the neighbors on their side of the street, but nobody on the other side. He claims they were all hanging out one day and he learned that nobody knew anyone from the other side, and he wanted to get a posse together to march across and find out why. "Are we not good enough for you? Stuck-up even-numbered pricks!"


Even though the parsed elements are CML the template approach often results in structures which represent the original form of the data rather that what is desirable for CML. For example the compchem convention makes very strict constraints on the elements used, their local syntax and the structure of the document. The initial parse should not discard any information or change the order of the concepts, but we may wish to:
templateList
and record
elements). The description of the vocabulary is held
in <workspace>\jumbo-converters\jumbo-converters-core\src\main\resources\org\xmlcml\cml\converters\text\processList.xml
.
This tutorial gives a brief overview and illustration of some of the commands.
The format of the transform command is usually:
<transform process="fooProcess" xpath="barPath" ... other attributes .../>There are currently about 30 processes in the following main categories:
addAttribute,
addChild,
addDictRef,
addLabel,
addLink,
addMap,
addNamespace,
addUnits
createArray,
createDate,
createDouble,
createFormula,
createGroup,
createInteger,
createMatrix33,
createMolecule,
createNameValue,
createString,
createVector3,
createWrapper,
createWrapperMetadata,
createWrapperParameter,
createWrapperProperty,
createZMatrix
.
Thus createInteger will take a string value and transform it, if possible, to an integer. Some operations
will delete some of the elements (e.g. createVector3 requires 3 scalars and will destroy them to create a
CMLVector3 element. pullup, pullupSingleton
remove a level of hierarchy.The full details are given in the XML file. The xpath attribute is almost mandatory
and selects nodes to be transformed (no indication is given if the list is empty). The from and to
attributes are often used (e.g. to is the target of a move). xpath is always relative to the
local top node (normally a module
element. You should never try to reference outside
this (e.g. "../" or "/" have ill defined behaviour as the nodes may not yet exist). from
is convoluted with xpath
, thus
xpath="./cml:list" from="./cml:scalar"
references the same set of nodes ("./cml:list/cml:scalar") as
xpath="./cml:list/cml:scalar" from="."
and xpath="." from="./cml:list/cml:scalar"
. But the behaviour may be different. Suppose the
process is "createVector3" and there a 2 lists with 3 scalar children each. Only the first will work (the second creates 6 iterable nodes with only one child each
and the second 1 iterable node with 6 children (which fails for vector3). Here are some examples:
<transform process="delete" xpath=".//@cmlx:*"/>
<transform process="joinArray" xpath="." from=".//cml:scalar[@dictRef='my:val'']"/>
<transform process="pullup" xpath=".//cml:scalar" repeat="3"/>
set dictRef attributes to value of templateRefs (I think this works!)
<transform process="addDictRef" xpath=".//*[@cml:templateRef]" value="string(@cml:templateRef)""/>


Media objects
media.less
Abstract object styles for building various types of components (like blog comments, Tweets, etc) that feature a left- or right-aligned image alongside textual content.
Abstract object styles for building various types of components (like blog comments, Tweets, etc) that feature a left- or right-aligned image alongside textual content.
Default media
The default media displays a media object (images, video, audio) to the left or right of a content block.
The classes
.pull-left
and.pull-right
also exist and were previously used as part of the media component, but are deprecated for that use as of v3.3.0. They are approximately equivalent to.media-left
and.media-right
, except that.media-right
should be placed after the.media-body
in the html.Media alignment
The images or other media can be aligned top, middle, or bottom. The default is top aligned.
Media list
With a bit of extra markup, you can use media inside list (useful for comment threads or articles lists).


|
AceTime
2.3.0
Date and time classes for Arduino that support timezones from the TZ Database.
|
Identifiers used by implementation code which need to be publically exported. More...
#include <stdint.h>
Go to the source code of this file.
Typedefs | |
| typedef int32_t | ace_time::acetime_t |
| Type for the number of seconds from epoch. More... | |
Functions | |
| template<typename T > | |
| void | ace_time::internal::swap (T &a, T &b) |
| Swap 2 parameters. | |
Variables | |
| const uint8_t | ace_time::internal::kAbbrevSize = 6 + 1 |
| Size of the c-string buffer needed to hold a time zone abbreviation. More... | |
Identifiers used by implementation code which need to be publically exported.
Definition in file common.h.
| typedef int32_t ace_time::acetime_t |
| const uint8_t ace_time::internal::kAbbrevSize = 6 + 1 |
Size of the c-string buffer needed to hold a time zone abbreviation.
Longest abbreviation currently seems to be 5 characters (https://www.timeanddate.com/time/zones/) but the TZ database spec says that abbreviations are 3 to 6 characters (https://data.iana.org/time-zones/theory.html#abbreviations), so use 6 as the maximum. Plus one for the terminating NUL character.


- Geography - Class in lookingpositive.lookingpositive
-
This class stores and organizes all the facilities according to their
municipality.
- Geography(String, String, String) - Constructor for class lookingpositive.lookingpositive.Geography
-
Constructor for the class Geography.
- Geography() - Constructor for class lookingpositive.lookingpositive.Geography
-
Default constructor Geography.
- getAge() - Method in class lookingpositive.lookingpositive.Profile
-
Returns age.
- getCurrentEvent(int, int) - Method in class lookingpositive.lookingpositive.ArrayListOfArrayList
-
This method returns a specific event.
- getDate() - Method in class lookingpositive.lookingpositive.Event
-
This method returns the date of the event.
- getDateLastUserSignedIn() - Static method in class lookingpositive.lookingpositive.Operations
-
This method gets the date the last person singed in.
- getEmail() - Method in class lookingpositive.lookingpositive.Profile
-
Returns user's email.
- getEventList() - Method in class lookingpositive.lookingpositive.ArrayListOfArrayList
-
This method returns the eventList.
- getFacilities() - Static method in class lookingpositive.lookingpositive.Geography
-
Stores the facilities.
- getFacilitiesLine(int) - Static method in class lookingpositive.lookingpositive.Geography
-
Returns a single facility from the array list.
- getFacilitiesSize() - Static method in class lookingpositive.lookingpositive.Geography
-
Returns the size of the facilities array list.
- getFirstName() - Method in class lookingpositive.lookingpositive.Profile
-
Returns first name.
- getFourteenDaysCell(int) - Static method in class lookingpositive.lookingpositive.Calendar
-
This method returns a chosen cell of fourteenDays table.
- getFuture() - Static method in class lookingpositive.lookingpositive.Calendar
-
This method returns the future Events of all users.
- getIsSusceptible() - Method in class lookingpositive.lookingpositive.Profile
-
Returns whether susceptible or not.
- getLastName() - Method in class lookingpositive.lookingpositive.Profile
-
Returns last name.
- getMunicipality() - Method in class lookingpositive.lookingpositive.Geography
-
Returns the municipality.
- getName() - Method in class lookingpositive.lookingpositive.Geography
-
Return name method.
- getPassword() - Method in class lookingpositive.lookingpositive.Profile
-
Returns user's password.
- getPlace() - Method in class lookingpositive.lookingpositive.Event
-
This method returns the place of the event.
- getProfiles() - Method in class lookingpositive.lookingpositive.Event
-
This method returns the people he/she will meet.
- getProfiles() - Static method in class lookingpositive.lookingpositive.Profile
-
Returns profiles.
- getResidenceRegion() - Method in class lookingpositive.lookingpositive.Profile
-
Returns residence region.
- getToday() - Static method in class lookingpositive.lookingpositive.Calendar
-
This method returns the Events of all users of today.
- getType() - Method in class lookingpositive.lookingpositive.Geography
-
Return type method.
- getUserID() - Method in class lookingpositive.lookingpositive.Profile
-
Returns user ID.
- getUserListOfEvents(int) - Method in class lookingpositive.lookingpositive.ArrayListOfArrayList
-
This method returns the events of a user.
- getUsersEventListsSize(int) - Method in class lookingpositive.lookingpositive.ArrayListOfArrayList
-
This method returns the size of the list of events for the specific row of
eventList.
- giveEventListsSize() - Method in class lookingpositive.lookingpositive.ArrayListOfArrayList
-
This method returns the size of the eventList.


A no-brainer primer on graph neural networks and graph convolution to get a quick sense about their workings
December 4, 2020 • Pratulya Bubna
This post is intended to provide a very high-level intuition about the workings of Graph Convolutional Networks (GCNs)in the spatial domain. The goal is to provide an overall rough-idea about GNNs and GCNs without delving into the meaty math.
Images, text and audio data can easily be represented as a grid — a regular and structured format. Given this representation, Convolutional Neural Networks (CNNs) can be successfully applied to process this data.
However, non-Euclidean data such as social networks, 3D meshes, molecular data, knowledge graphs — inherently graphs, cannot be represented in a grid-like structure and instead lie in an irregular domain. Consequently, the convolution operation in the Euclidean case (CNNs) is not well-defined on non-Euclidean domains.
The learning architecture designed to handle unstructured, non-Euclidean graph data is Graph Neural Networks (GNNs). GNNs do not have strict structural requirements as opposed to regular neural networks that operate on fixed-dimension inputs (eg. CNNs built over MNIST dataset require all input images to be of size 28x28). This means that the number of vertices and edges between input graphs can change.
Variants of GNNs are Graph Convolutional Networks (GCNs) that have evolved due to works in generalizing convolutions to the graph domain.
A graph is a simple way of encoding pairwise relationships among a set of objects.
A graph \(G\) consists of a pair of sets \((V, E)\) — a collection \(V\) of
nodes
and a collection of \(E\) ofedges
. Each edge \(e \in E\) joins two nodes and thus is a two-element subset of \(V: e = \{u, v\}\) for some \(u, v \in V\).
CNNs learn features hierarchically by building from simpler ones to more complex. Desirable properties of CNNs include weight sharing, local connectivity, non-linearity and pooling layers, that have helped them achieve outstanding performance in a variety of tasks.
In graphs, the notion of neighborhoods and connectivity is ill-defined, making the application of convolution and pooling operations non-trivial. Two approaches to tackle this: spectral and non-spectral. Whereas spectral approaches deal with spectral representations of graphs (eg. graph Laplacian), non-spectral approaches define convolutions directly on the graph.
That is, the spatial approaches assume that graphs are embedded in a Euclidean space where nodes can have coordinates and weights on them. This assumption helps in generalizing pixels (in case of CNNs) to nodes of the graph, over which we can take the similar sliding window approach to aggregate the features of the neighborhoods.
We’ll stick to GCNs in spatial domain, in which, convolution is usually implemented through non-linear functions (eg. MLP) over spatial neighbors, and pooling may be adopted to produce a new coarsened graph by aggregating information from each point’s neighbors.
We can choose to determine a fix-sized (node degree) or a variable neighborhood, which would require to define an operator that can work with different sized neighborhoods. After determining the neighborhood, an aggregator is performed over it, for instance, mean
over all the neighbor’s feature vectors.
The aggregation operator generally is chosen to be permutation invariant. That is, the aggregated output is invariant to the order of neighbors picked. The usual choices being sum
, mean
and max
.
The equation encapsulates message passing and neighborhood aggregation in GCNs.
Calculating features of node \(\mathbf{x}_i\) in \(k^{th}\) layer is a non-linear function of:


The National Environmental Information Infrastructure (NEII) service is being decommissioned on 15 June 2022.
Environmental information will continue to be made available through Australian Government services such as data.gov.au, NationalMap and Research Vocabularies Australia. For more details on accessing the environmental information, please go to the NEII data transition information page. If you require assistance in locating specific datasets, or have any questions, please email<EMAIL_ADDRESS>Thank you for your interest in, and support of, NEII.


Description
Version 5 greatly increases the functionality of the sample by adding a listbox and graphics window to the client area of the main frame window. The listbox is used to display a "Hello World" in different languages. A select handler is used to update the static text with whatever "Hello World" string is selected from the listbox. The graphics window uses the Open Class graphics to display a view of the earth from space. The client area is layed-out using ISplitCanvas objects to allow the user to specify proportions for the sections.
Hello5 also introduces the use of the IHelpWindow class for providing context-specific application help. The use of IPF formatted information source files, RTF formatted information source files, and resource file help tables is also demonstrated.
Concept
Sample program with frame window, menu bar from resource, information area, accelerator resources, dialog window, listbox, graphics, split-canvas, and help.
Task
Select from the menu bar tasks to justify the client area text on the left, center, or right. The information area displays menu item messages. You can change the client area text through the text dialog frame window. You can also change the client area text through the listbox selections. The world is drawn using graphics.
Special Notes:
The sample attempts to load its help from its current working directory.
Supported
Supported
Supported


After a long 17 years Scopas died , and was surprised to see himself getting passed on to The Elysium, but then he realized that he wasn’t the selfish and boastful person he was before, and that he was a wiser man than before, too. He had learned from Apollo’s punishment, and learned that the god was only trying to help him. Meanwhile after sitting in water for 17 years, the gold that had chipped off of the Sun Chariot had eroded into a goldfish, and that goldfish started repopulating in freshwater. Many many years would pass before the goldfish would be discovered by the Greeks, and the goldfish's name would not be decided for years to come. Scopas would never know that by breaking off a fragment of the Sun Chariot he created a new creature, nor would Apollo know of the goldfish’s creation, yet little did Apollo know that that one goldfish could change everything.


Man accused in fatal stabbing pleads not guilty
by EndPlayXENIA, Ohio (AP) - A man accused of the stabbing death of a man whose body was found in a nature preserve in Ohio has pleaded not guilty to charges of murder and felonious assault.
Twenty-six-year-old Zyrian Atha-Arnett pleaded not guilty Thursday in a Greene County court. Atha-Arnett, of Enon, is charged in the death of 26-year-old Leonid Clark, who went missing in January. The Yellow Springs man's body was found April 12 along the Little Miami River in the Glen Helen Nature Preserve in western Ohio.
Greene County sheriff's detectives say Atha-Arnett stabbed Clark multiple times. A message seeking comment was left for Atha-Arnett's attorney.
Investigators haven't commented on a potential motive. They say phone records show the men exchanged several text messages and calls prior to the slaying.


We’re happy to announce the release of Celery 1.0.
Celery is a task queue/job queue based on distributed message passing. It is focused on real-time operation, but supports scheduling as well.
The execution units, called tasks, are executed concurrently on one or more worker servers. Tasks can execute asynchronously (in the background) or synchronously (wait until ready).
Celery is already used in production to process millions of tasks a day.
Celery was originally created for use with Django, but is now usable from any Python project. It can also operate with other languages via webhooks.
The recommended message broker is RabbitMQ, but support for Redis or database is also available.
From this version on the public API is considered stable. This means there won’t be any backwards incompatible changes in new minor versions. Changes to the API will be deprecated; so, for example, if we decided to remove a function that existed in Celery 1.0:
See the Celery Deprecation Timeline for a list of pending removals.
Task decorators
Write tasks as regular functions and decorate them. There are both task(), and periodic_task() decorators.
Tasks are automatically registered
Registering the tasks manually was getting tedious, so now you don’t have to anymore. You can still do it manually if you need to, just disable Task.autoregister. The concept of abstract task classes has also been introduced, this is like django models, where only the subclasses of an abstract task is registered.
Events
If enabled, the worker will send events, telling you what tasks it executes, their results, and how long it took to execute them. It also sends out heartbeats, so listeners are able to detect nonfunctional workers. This is the basis for the new real-time web monitor we’re working on (celerymon)
Rate limiting
Global and per task rate limits. 10 tasks a second? or one an hour? You decide. It’s using the awesome token bucket algorithm, which is commonly used for network traffic shaping. It accounts for bursts of activity, so your workers won’t be bored by having nothing to do.
New periodic task service.
Periodic tasks are no longer dispatched by celeryd, but instead by a separate service called celerybeat. This is an optimized, centralized service dedicated to your periodic tasks, which means you don’t have to worry about deadlocks or race conditions any more. But that does mean you have to make sure only one instance of this service is running at any one time.
TIP: If you’re only running a single celeryd server, you can embed celerybeat inside it. Just add the --beat argument.
Broadcast commands
If you change your mind and don’t want to run a task after all, you now have the option to revoke it.
Also, you can rate limit tasks or even shut down the worker remotely.
It doesn’t have many commands yet, but we’re waiting for broadcast commands to reach its full potential, so please share your ideas if you have any.
Multiple queues
The worker is able to receive tasks on multiple queues at once. This opens up a lot of new possibilities when combined with the impressive routing support in AMQP.
Platform agnostic message format.
The message format has been standardized and is now using the ISO-8601 format for dates instead of Python datetime objects. This means you can write task consumers in other languages than Python (eceleryd anyone?)
Timely
Periodic tasks are now scheduled on the clock, i.e. timedelta(hours=1) means every hour at :00 minutes, not every hour from the server starts. To revert to the previous behavior you have the option to enable PeriodicTask.relative.
... and a lot more!
To read about these and other changes in detail, please refer to the changelog. This document contains crucial information for those upgrading from a previous version of Celery, so be sure to read the entire change set before you continue.
TIP: If you install the setproctitle module you can see which task each worker process is currently executing in ps listings. Just install it using pip: pip install setproctitle.
Celery 1.0 has finally been released! It is available on PyPI for
downloading. You can also install it via pip install
celery
. You can read the announcement here.
1.0 is scheduled to be released this week! Please help us test the latest release candiate to make this happen. To upgrade from an earlier version, please read the changelog.
We finally got a home page. Big thanks to Jan Henrik Helmers


| Personal Allowance (£/year) | NI Primary Threshold (£/week) | Eligible groups | UBI in benefit means tests | |
|---|---|---|---|---|
| UBI amount (£/week) | ||||
| 45 | 4000 | 90 | Working-age adults | Included |
| 60 | 2500 | 50 | Working-age adults | Included |
| 75 | 2500 | 50 | Working-age adults | Included |
| 90 | 2500 | 50 | Working-age adults | Included |


--- layout: layout ---
In {{global.name}}, you can run some NPM script to generate only specific files or to build the final files. All the generated files will be saved into the /dist
folder. Open your terminal and type:
npm run <SCRIPT-NAME>
where <SCRIPT-NAME>
is one of the following.
This is the main script.Generates all stylesheets and source maps in a bounch. It is a shortcut for running compile, prefix, rtl and minify scripts sequentially.
Generates the main stylesheet ({{global.id}}.css
).
Generates the debug stylesheets (debug.css
, debug-utils.css
). These files are useful for debug during development and are not included in the final build.
Shortcut for running compile-main and compile-debug scripts.
Runs this static documentation site.
Runs Stylelint to check *.scss
files syntax. Useful for developers contributing to this package.
Generates the minified version of the main stylesheet ({{global.id}}.min.css
) and its source map. It must be manually run after compile or compile-main script to take effect.
Generates the minified versions of the debug stylesheets (debug.min.css
, debug-utils.min.css
) and their source maps. It must be manually run after compile or compile-debug script to take effect.
Generates the minified version of the {{global.id}}-rtl.css
stylesheet ({{global.id}}-rtl.min.css
) and its source map. It must be manually run after compile or compile-main followed by rtl script to take effect.
Shortcut for running minify-main, minify-debug and minify-rtl scripts in parallel. It must be manually run after compile, compile-main, compile-debug or rtl script to take effect.
Adds vendor-specific prefixes to some CSS properties for browsers support. It must be manually run after compile or compile-main script to take effect.
Generates the RTL version of the main stylesheet ({{global.id}}-rtl.css
) for RTL languages. It must be manually run after compile or compile-main script to take effect. Note: debug stylesheets do not have RTL version.
Install all the dependencies needed using Yarn. If you don't have installed Yarn, you can manually run npm install
.


Italy makes alarms for baby car seats mandatory
by CNN NewsourceItalian law now requires vehicles to have a safety device that alerts drivers if a child has been left behind in the rear seat or a car seat.
The law went into effect Thursday and is designed to prevent hot car deaths. Some devices will send visual and audible alerts when someone gets out of the car, according to the Ministry of Infrastructure and Transport. Other devices will send signals to the driver's smartphone that it is out of range from the sensor on the child's car seat.
Fines between 88 and 333 Euros can be imposed and drivers can lose points on their licenses. A second infraction would mean the driver's license would be suspended for at least 15 days.
The law applies to parents of children under 4 years of age.
The ministry says the devices are available online and in stores specializing in children's items. Parents at some point will be able to submit a receipt to the government to recoup incentive money. The government has not yet worked out the reimbursement paperwork, the ministry said.
The law was proposed in 2018 after several hot car deaths.
How the US is dealing with hot car deaths
According to KidsAndCars.org , 38 children in the United States die each year because they were trapped in a hot vehicle. But the deaths from 2016 to 2019 have exceeded that number; in 2019, 52 children have died, according to the organization.
The US House of Representatives is considering the Hot Cars Act of 2019, HR 3593, which was referred to the Highways and Transit subcommittee at the beginning of July. A Senate bill is also in committee.
In September, the Alliance of Automobile Manufacturers and the Association of Global Automakers announced the industry is committing to have a rear-seat reminder in cars and trucks by 2025. Some auto makers have already added some back-seat safety measures to their vehicles.


This is a code-breaking game.
Match the colours of the code set by Plato (hidden from you) to win.
No blank options are allowed.
When you're done with your selection, click on the EVAL
button.
The pegs on the left indicate the correctness of your choice.
Z
sequence.


Defines | |
| #define | COREDATA_DECLARE_NAMED_OBJECT_ID(constant_name, value) |
| #define | COREDATA_DECLARE_THIS_OBJECT_ID(value) |
| #define | COREDATA_DEFINE_NAMED_OBJECT_ID(fully_qualified_class_name, constant_name) |
| #define | COREDATA_DEFINE_THIS_OBJECT_ID(fully_qualified_class_name) |
| #define | COREDATA_DEPRECATED(text_message) |
| #define | COREDATA_PRECONDITION(cond, message) |
| #define | COREDATA_PURE_METHOD |
| #define COREDATA_DECLARE_NAMED_OBJECT_ID | ( | constant_name, | |||
| value | ) |
Declares an object id named constant_name.
| constant_name | The name of the object | |
| value | the ObjectID |
Definition at line 184 of file platform_os.h.
| #define COREDATA_DECLARE_THIS_OBJECT_ID | ( | value | ) |
Declares an object id named THIS_OBJECT_ID.
| value | the ObjectID |
Definition at line 208 of file platform_os.h.
| #define COREDATA_DEFINE_NAMED_OBJECT_ID | ( | fully_qualified_class_name, | |||
| constant_name | ) |
Provides the definition for the objectid named constant_name.
| fully_qualified_class_name | The fully qualified class name | |
| constant_name | The name of the object |
Definition at line 198 of file platform_os.h.
| #define COREDATA_DEFINE_THIS_OBJECT_ID | ( | fully_qualified_class_name | ) |
Provides the definition for the objectid THIS_OBJECT_ID.
| fully_qualified_class_name | The fully qualified class name |
Definition at line 216 of file platform_os.h.
| #define COREDATA_DEPRECATED | ( | text_message | ) |
Marks mark classes and/or functions as no longer being supported.
| text_message | The message to be displayed by the compiler when code uses the deprecated function. It should indicate an alternative. |
class COREDATA_DEPRECATED("Use class Radio instead.") Wireless { }; COREDATA_DEPRECATED("Wrong naming, use turnOn().") void turn_on(Wireless&);
Definition at line 172 of file platform_os.h.
| #define COREDATA_PRECONDITION | ( | cond, | |||
| message | ) |
Throws an exception if an expression evaluates to false.
Use this macro to check the documented preconditions for a function.
| cond | The expression that should evaluate to true . | |
| message | The message to use as the return value from std::exception::what(). |
| std::invalid_argument |
| #define COREDATA_PURE_METHOD |
Marks a virtual member function as being pure making the class abstract.
Use this macro over using = 0
.
virtual void processData() COREDATA_PURE_METHOD;


{{ define "title" }}Weather{{ end }} {{ define "content" }}
You can upload multiple weather presets at once by placing them in a folder named "weather" and uploading the whole folder. The upload process will only take the files that the server requires, and so should not take too long.
First choose the correct weather folder (or containing folder) using the Choose a Folder button below then use the Upload Weather Preset button to upload your weather presets if the preview information appears correctly.
The drag and drop input accepts a single weather folder, multiple weather folders or a weather folder containing multiple weathers!
| Weather Key | Weather Name | {{ if DeleteAccess }}Delete | {{ end }}
|---|---|---|
| {{ $i }} | {{ $weather }} | {{ if DeleteAccess }}{{ end }} |


802.11a
Frequency
5Ghz
2.4Ghz
2.4 and 5Ghz
Bandwidth
11Mbps
54Mbps
600Mbps
Gigabit Speeds
802.11b
Frequency
5Ghz
2.4Ghz
2.4 and 5Ghz
Bandwidth
11Mbps
54Mbps
600Mbps
Gigabit Speeds
802.11g
Frequency
5Ghz
2.4Ghz
2.4 and 5Ghz
Bandwidth
11Mbps
54Mbps
600Mbps
Gigabit Speeds
802.11n
Frequency
5Ghz
2.4Ghz
2.4 and 5Ghz
Bandwidth
11Mbps
54Mbps
600Mbps
Gigabit Speeds
802.11ac
Frequency
5Ghz
2.4Ghz
2.4 and 5Ghz
Bandwidth
11Mbps
54Mbps
600Mbps
Gigabit Speeds


peco
Simplistic interactive filtering tool
Description
peco
(pronounced peh-koh) is based on a python tool, percol. percol
was darn useful, but I wanted a tool that was a single binary, and forget about python. peco
is written in Go, and therefore you can just grab the binary releases and drop it in your $PATH.
peco
can be a great tool to filter stuff like logs, process stats, find files, because unlike grep, you can type as you think and look through the current results.
For basic usage, continue down below. For more cool elaborate usage samples, please see the wiki, and if you have any other tricks you want to share, please add to it!
Demo
Demos speak more than a thousand words! Here's me looking for a process on my mac. As you can see, you can page through your results, and you can keep changing the query:
Here's me trying to figure out which file to open:
When you combine tools like zsh, peco, and ghq, you can make managing/moving around your huge dev area a piece of cake! (this example doesn't use zsh functions so you can see what I'm doing)
Features
Incremental Search
Search results are filtered as you type. This is great to drill down to the line you are looking for
Multiple terms turn the query into an "AND" query:
When you find that line that you want, press enter, and the resulting line is printed to stdout, which allows you to pipe it to other tools
Select Multiple Lines
You can select multiple lines!
Select Range Of Lines
Not only can you select multiple lines one by one, you can select a range of lines (Note: The ToggleRangeMode action is not enabled by default. You need to put a custom key binding in your config file)
Select Filters
Different types of filters are available. Default is case-insensitive filter, so lines with any case will match. You can toggle between IgnoreCase, CaseSensitive, SmartCase and RegExp filters.
The SmartCase filter uses case-insensitive matching when all of the queries are lower case, and case-sensitive matching otherwise.
The RegExp filter allows you to use any valid regular expression to match lines
Selectable Layout
As of v0.2.5, if you would rather not move your eyes off of the bottom of the screen, you can change the screen layout by either providing the --layout=bottom-up
command line option, or set the Layout
variable in your configuration file
Works on Windows!
I have been told that peco even works on windows :) Look ma! I'm not lying!
Installation
Just want the binary?
Go to the releases page, find the version you want, and download the zip file. Unpack the zip file, and put the binary to somewhere you want (on UNIX-y systems, /usr/local/bin or the like). Make sure it has execution bits turned on. Yes, it is a single binary! You can put it anywhere you want :)
THIS IS THE RECOMMENDED WAY (except for OS X homebrew users)
Mac OS X / Homebrew
If you're on OS X and want to use homebrew:
brew install peco
The above homebrew formula is maintained by the folks working on Homebrew. There is a custom tap maintained by the authors of peco, just in case something goes wrong in the homebrew formula. In general you DO NOT need to use this custom tap:
brew tap peco/peco
brew install peco
Windows (Chocolatey NuGet Users)
There's a third-party peco package available for Chocolatey NuGet.
C:\> choco install peco
go get
If you want to go the Go way (install in GOPATH/bin) and just want the command:
go get github.com/peco/peco/cmd/peco
Command Line Options
-h, --help
Display a help message
--version
Display the version of peco
--query
Specifies the default query to be used upon startup. This is useful for scripts and functions where you can figure out before hand what the most likely query string is.
--rcfile
Pass peco a configuration file, which currently must be a JSON file. If unspecified it will try a series of files by default. See Configuration File
for the actual locations searched.
-b, --buffer-size
Limits the buffer size to num
. This is an important feature when you are using peco against a possibly infinite stream, as it limits the number of lines that peco holds at any given time, preventing it from exhausting all the memory. By default the buffer size is unlimited.
--null
WARNING: EXPERIMENTAL. This feature will probably stay, but the option name may change in the future.
Changes how peco interprets incoming data. When this flag is set, you may insert NUL ('\0') characters in your input. Anything before the NUL character is treated as the string to be displayed by peco and is used for matching against user query. Anything after the NUL character is used as the "result": i.e., when peco is about to exit, it displays this string instead of the original string displayed.
Here's a simple example of how to use this feature
--initial-index
Specifies the initial line position upon start up. E.g. If you want to start out with the second line selected, set it to "1" (because the index is 0 based)
IgnoreCase|CaseSensitive|SmartCase|Regexp
--initial-filter Specifies the initial fitler to use upon start up. You should specify the name of the filter like IgnoreCase
, CaseSensitive
, SmartCase
and Regexp
. Default is IgnoreCase
.
--prompt
Specifies the query line's prompt string. When specified, takes precedence over the configuration file's Prompt
section. The default value is QUERY>
top-down|bottom-up
--layout Specifies the display layout. Default is top-down
, where query prompt is at the top, followed by the list, then the system status message line. bottom-up
changes this to the list first (displayed in reverse order), the query prompt, and then the system status message line.
For percol
users, --layout=bottom-up
is almost equivalent of --prompt-bottom --result-bottom-up
.
Configuration File
peco by default consults a few locations for the config files.
- Location specified in --rcfile. If this doesn't exist, peco complains and exits
- $XDG_CONFIG_HOME/peco/config.json
- $HOME/.config/peco/config.json
- for each directories listed in $XDG_CONFIG_DIRS, $DIR/peco/config.json
- If all else fails, $HOME/.peco/config.json
Below are configuration sections that you may specify in your config file:
Global
Global configurations that change the global behavior.
Prompt
You can change the query line's prompt, which is QUERY>
by default.
{
"Prompt": "[peco]"
}
InitialMatcher
InitialMatcher has been deprecated. Please use InitialFilter
instead.
InitialFilter
Specifies the filter name to start peco with. You should specify the name of the filter, such as IgnoreCase
, CaseSensitive
, SmartCase
and Regexp
StickySelection
{
"StickySelection": true
}
StickySelection allows selections to persist even between changes to the query. For example, when you set this to true you can select a few lines, type in a new query, select those lines, and then delete the query. The result is all the lines that you selected before and after the modification to the query are left in tact.
Default value for StickySelection is false.
Keymaps
Example:
{
"Keymap": {
"M-v": "peco.ScrollPageUp",
"C-v": "peco.ScrollPageDown",
"C-x,C-c": "peco.Cancel"
}
}
Key sequences
As of v0.2.0, you can use a list of keys (separated by comma) to register an action that is associated with a key sequence (instead of a single key). Please note that if there is a conflict in the key map, the longest sequence always wins. So In the above example, if you add another sequence, say, C-x,C-c,C-c
, then the above peco.Cancel
will never be invoked.
Combined actions
As of v0.2.1, you can create custom combined actions. For example, if you find yourself repeatedly needing to select 4 lines out of the list, you may want to define your own action like this:
{
"Action": {
"foo.SelectFour": [
"peco.ToggleRangeMode",
"peco.SelectDown",
"peco.SelectDown",
"peco.SelectDown",
"peco.ToggleRangeMode"
]
},
"Keymap": {
"M-f": "foo.SelectFour"
}
}
This creates a new combined action foo.SelectFour
(the format of the name is totally arbitrary, I just like to put namespaces), and assigns that action to M-f
. When it's fired, it toggles the range selection mode and highlights 4 lines, and then goes back to waiting for your input.
As a similar example, a common idiom in emacs is that C-c C-c
means "take the contents of this buffer and accept it", whatever that means. This adds exactly that keybinding:
{
"Action": {
"selectAllAndFinish": [
"peco.SelectAll",
"peco.Finish"
]
},
"Keymap": {
"C-c,C-c": "selectAllAndFinish"
}
}
Available keys
Since v0.1.8, in addition to values below, you may put a M-
prefix on any
key item to use Alt/Option key as a mask.
| Name | Notes |
|---|---|
| C-a ... C-z | Control + whatever character |
| C-2 ... C-8 | Control + 2..8 |
| C-[ | |
| C-] | |
| C-~ | |
| C-_ | |
| C-\\ | Note that you need to escape the backslash |
| C-/ | |
| C-Space | |
| F1 ... F12 | |
| Esc | |
| Tab | |
| Enter | |
| Insert | |
| Delete | |
| BS | |
| BS2 | |
| Home | |
| End | |
| Pgup | |
| Pgdn | |
| ArrowUp | |
| ArrowDown | |
| ArrowLeft | |
| ArrowRight | |
| MouseLeft | |
| MouseMiddle | |
| MouseRight |
Key workarounds
Some keys just... don't map correctly / too easily for various reasons. Here, we'll list possible workarounds for key sequences that are often asked for:
| You want this | Use this instead | Notes |
|---|---|---|
| Shift+Tab | M-[,Z | Verified on OS X |
Available actions
| Name | Notes |
|---|---|
| peco.ForwardChar | Move caret forward 1 character |
| peco.BackwardChar | Move caret backward 1 character |
| peco.ForwardWord | Move caret forward 1 word |
| peco.BackwardWord | Move caret backward 1 word |
| peco.BeginningOfLine | Move caret to the beginning of line |
| peco.EndOfLine | Move caret to the end of line |
| peco.EndOfFile | Delete one character forward, otherwise exit from peco with failure status |
| peco.DeleteForwardChar | Delete one character forward |
| peco.DeleteBackwardChar | Delete one character backward |
| peco.DeleteForwardWord | Delete one word forward |
| peco.DeleteBackwardWord | Delete one word backward |
| peco.InvertSelection | Inverts the selected lines |
| peco.KillBeginningOfLine | Delete the characters under the cursor backward until the beginning of the line |
| peco.KillEndOfLine | Delete the characters under the cursor until the end of the line |
| peco.DeleteAll | Delete all entered characters |
| peco.RefreshScreen | Redraws the screen. Note that this effectively re-runs your query |
| peco.SelectPreviousPage | (DEPRECATED) Alias to ScrollPageUp |
| peco.SelectNextPage | (DEPRECATED) Alias to ScrollPageDown |
| peco.ScrollPageDown | Moves the selected line cursor for an entire page, downwards |
| peco.ScrollPageUp | Moves the selected line cursor for an entire page, upwards |
| peco.SelectUp | Moves the selected line cursor to one line above |
| peco.SelectDown | Moves the selected line cursor to one line below |
| peco.SelectPrevious | (DEPRECATED) Alias to SelectUp |
| peco.SelectNext | (DEPRECATED) Alias to SelectDown |
| peco.ToggleSelection | Selects the current line, and saves it |
| peco.ToggleSelectionAndSelectNext | Selects the current line, saves it, and proceeds to the next line |
| peco.SelectNone | Remove all saved selections |
| peco.SelectAll | Selects the all line, and save it |
| peco.SelectVisible | Selects the all visible line, and save it |
| peco.ToggleSelectMode | (DEPRECATED) Alias to ToggleRangeMode |
| peco.CancelSelectMode | (DEPRECATED) Alias to CancelRangeMode |
| peco.ToggleQuery | Toggle list between filterd by query and not filterd. |
| peco.ToggleRangeMode | Start selecting by range, or append selecting range to selections |
| peco.CancelRangeMode | Finish selecting by range and cancel range selection |
| peco.RotateMatcher | (DEPRECATED) Use peco.RotateFilter |
| peco.RotateFilter | Rotate between filters (by default, ignore-case/no-ignore-case) |
| peco.Finish | Exits from peco with success status |
| peco.Cancel | Exits from peco with failure status, or cancel select mode |
Default Keymap
Note: If in case below keymap seems wrong, check the source code in keymap.go (look for NewKeymap).
| Key | Action |
|---|---|
| Esc | peco.Cancel |
| C-c | peco.Cancel |
| Enter | peco.Finish |
| C-f | peco.ForwardChar |
| C-a | peco.BeginningOfLine |
| C-b | peco.BackwardChar |
| C-d | peco.DeleteForwardChar |
| C-e | peco.EndOfLine |
| C-k | peco.KillEndOfLine |
| C-u | peco.KillBeginningOfLine |
| BS | peco.DeleteBackwardChar |
| C-8 | peco.DeleteBackwardChar |
| C-w | peco.DeleteBackwardWord |
| C-g | peco.SelectNone |
| C-n | peco.SelectDown |
| C-p | peco.SelectUp |
| C-r | peco.RotateMatcher |
| C-t | peco.ToggleQuery |
| C-Space | peco.ToggleSelectionAndSelectNext |
| ArrowUp | peco.SelectUp |
| ArrowDown | peco.SelectDown |
| ArrowLeft | peco.ScrollPageUp |
| ArrowRight | peco.ScrollPageDown |
Styles
For now, styles of following 5 items can be customized in config.json
.
{
"Style": {
"Basic": ["on_default", "default"],
"SavedSelection": ["bold", "on_yellow", "white"],
"Selected": ["underline", "on_cyan", "black"],
"Query": ["yellow", "bold"],
"Matched": ["red", "on_blue"]
}
}
-
Basic
for not selected lines -
SavedSelection
for lines of saved selection -
Selected
for a currently selecting line -
Query
for a query line -
Matched
for a query matched word
Foreground Colors
-
"black"
fortermbox.ColorBlack
-
"red"
fortermbox.ColorRed
-
"green"
fortermbox.ColorGreen
-
"yellow"
fortermbox.ColorYellow
-
"blue"
fortermbox.ColorBlue
-
"magenta"
fortermbox.ColorMagenta
-
"cyan"
fortermbox.ColorCyan
-
"white"
fortermbox.ColorWhite
Background Colors
-
"on_black"
fortermbox.ColorBlack
-
"on_red"
fortermbox.ColorRed
-
"on_green"
fortermbox.ColorGreen
-
"on_yellow"
fortermbox.ColorYellow
-
"on_blue"
fortermbox.ColorBlue
-
"on_magenta"
fortermbox.ColorMagenta
-
"on_cyan"
fortermbox.ColorCyan
-
"on_white"
fortermbox.ColorWhite
Attributes
-
"bold"
for fg:termbox.AttrBold
-
"underline"
for fg:termbox.AttrUnderline
-
"reverse"
for fg:termbox.AttrReverse
-
"on_bold"
for bg:termbox.AttrBold
(this attribute actually makes the background blink on some platforms/environments, e.g. linux console, xterm...)
CustomFilter
This is an experimental feature. Please note that some details of this specification may change
By default peco
comes with IgnoreCase
, CaseSensitive
, SmartCase
and Regexp
filters, but since v0.1.3, it is possible to create your own custom filter.
The filter will be executed via Command.Run()
as an external process, and it will be passed the query values in the command line, and the original unaltered buffer is passed via os.Stdin
. Your filter must perform the matching, and print out to os.Stdout
matched lines. You filter MAY be called multiple times if the buffer
given to peco is big enough. See BufferThreshold
below.
Note that currently there is no way for the custom filter to specify where in the line the match occurred, so matched portions in the string WILL NOT BE HIGHLITED.
The filter does not need to be a go program. It can be a perl/ruby/python/bash script, or anything else that is executable.
Once you have a filter, you must specify how the matcher is spawned:
{
"CustomFilter": {
"MyFilter": {
"Cmd": "/path/to/my-matcher",
"Args": [ "$QUERY" ],
"BufferThreshold": 100
}
}
}
Cmd
specifies the command name. This must be searcheable via exec.LookPath
.
Elements in the Args
section are string keys to array of program arguments. The special token $QUERY
will be replaced with the unaltered query as the user typed in (i.e. multiple-word queries will be passed as a single string). You may pass in any other arguments in this array. If you omit this in your config, a default value of []string{"$QUERY"}
will be used
BufferThreshold
specifies that the filter command should be invoked when peco has this many lines to process
in the buffer. For example, if you are using peco against a 1000-line input, and your BufferThreshold
is 100 (which is the default), then your filter will be invoked 10 times. For obvious reasons, the larger this threshold is, the faster the overall performance will be, but the longer you will have to wait to see the filter results.
You may specify as many filters as you like in the CustomFilter
section.
Examples
- An example of a simple perl regexp matcher
- An example using migemogrep Japanese grep using latin-1 chars
Layout
See --layout.
Hacking
First, fork this repo, and get your clone locally.
- Make sure you have go 1.x, with GOPATH appropriately set
- Run
go get github.com/jessevdk/go-flags
- Run
go get github.com/mattn/go-runewidth
- Run
go get github.com/nsf/termbox-go
Then from the root of this repository run:
go build cmd/peco/peco.go
This will create a peco
binary in the local directory.
TODO
Test it. In doing so, we may change the repo structure
Implement all(?) of the original percol options
AUTHORS
- Daisuke Maki (lestrrat)
- mattn
- syohex
CONTRIBUTORS
- HIROSE Masaaki
- Joel Segerlind
- Lukas Lueg
- Mitsuoka Mimura
- Ryota Arai
- Shinya Ohyanagi
- Takashi Kokubun
- Yuya Takeyama
- cho45
- cubicdaiya
- kei_q
- negipo
- sona_tar
- sugyan
- swdyh
- MURAOKA Taro (kaoriya/koron), for aho-corasick search
- taichi, for the gif working on Windows
- uobikiemukot
- Samuel Lemaitre
- Yousuke Ushiki
- Linda_pp
- Tomohiro Nishimura (Sixeight)
Notes
Obviously, kudos to the original percol: https://github.com/mooz/percol Much code stolen from https://github.com/mattn/gof


Cookbook
Links to all individual pages of the app
Homepage - Logged out
Homepage - Logged in
Create Recipe
View Recipe


10 gifts that your rude cat may or may not ignore
by Morgan SungWe can all agree that regardless of how cute they may be, cats are real assholes.
It's just evolution — they're predators who domesticated themselves, and they'll just never be man's best friend. No matter how much love you shower on them, they may or may not return the affection. They're notorious for being ungrateful gift receivers — if you grace them with a new toy, they'll probably ignore it for weeks before showing any interest.
As the holiday season approaches, here are 10 gifts you can get your beloved fur baby. They may or may not appreciate it.
1. A grass planter
Maybe keeping fresh grass for your cat to gnaw on will prevent them from chewing your phone chargers. Maybe.
Plus, who doesn't love a good houseplant?
Price: $9.95 at Chewy
2. A fresh water fountain
Your cat probably hates stale water as much as you do — and if they're curious, will probably resort to whatever they can find in human cups or worse, in the toilet. Nip it in the bud with a fresh water fountain.
Price: $26.99 on Amazon
3. A comfortable bed
OK, these beds are technically marketed to dogs. But your cats will probably love Casper's pet bed line, too — they're luxuriously soft.
Price: Casper pet beds start at $125.
4. A self grooming toy
If you're not home often and your cat is starved for some sweet, sweet brushing, get them a self grooming toy. It'll get all the good spots and even includes a fun hanging toy for them to swat at.
Price: $10.99 from Chewy
5.  Maybe it's time to give them a vertical scratcher to focus on instead.
Price: Wall scratchers start at $64.95 at ModernishShop on Etsy.
6. An automatic laser toy
Keep your cat entertained for hours with an automatic laser toy. It appeals to their natural hunting instinct and will keep them in active. We love to see it!
Price: $21.99 on Amazon
7. Tasty snacks
According to Reviews, Tundra's freeze-dried cat treats are one of the healthiest cat treat option on the market. With pure protein and a variety of flavors, your cat won't get any nasty fillers.
Price: $8.99 on Amazon
8. Some catnip joints
The "Meowijuana Catnibas" joints will give your cat a lit night in. The pre-roll joints are packed with catnip that'll keep the 'nip contained for an easy clean up.
Price: $9.99 from Chewy
9. An elaborate cat tree
Now this is the height of luxury. How far are you willing to go to make your cat happy? Give your prince everything he deserves and more with this palatial perch. Will he actually use it? Who knows.
Price: $1,199.00 from PetTreeHouses on Etsy.
10.  If they fits, they sits.
Price: $0.78 at Home Depot
These gifts are purr-fect to treat the bane of your existence your sweet fur baby to something nice this holiday season.


Home
Merchandise
About
Admin panel
Salmon Cookie Sales
Add A New Store To The Table
Shop Location
Customer Minimum
Customer Maximum
Customer Average
Submit Form


{% extends "base_generic.html" %} {% block content %}
Alarms are send to emails specified here 5 different emails can be provided


+++ title = "Huacachina" lat = -14.087500 lon = -75.763333 +++
Huacachina has to be the most bizarre resort town I've ever seen. Resorts are usually situated on tropical beaches: but Huacachina — just outside the city of Ica on the coast of Peru — is a tiny collection of resorts that hug a little lagoon oasis, and that is otherwise completely surrounded by massive sand dunes. Anyway, very pleasant and very relaxing place to hang out, after a hectic trip along the gringo trail.


django-staff 1.0 documentation
Required ForeignKey User
The User to which this profile relates. Choices are limited to active users.
CharField(150)
The first name of the user. It is automatically synced with the user object and is provided in this model for convenience.
CharField(150)
The last name of the user. It is automatically synced with the user object and is provided in this model for convenience.
Required SlugField
A URL-friendly version of the first and last name.
EmailField
The email address of the user. It is automatically synced with the user object and is provided in this model for convenience.
TextField
An in-depth, riveting account of the user’s life.
Required BooleanField Default: True
True indicates a current staff member. False indicates a former staff member.
PhoneNumberField
A series of digits which, when typed into telephonic devices, might establish a vocal connection to the user.
RemovableImageField
A visual, digital representation of the user. The image is stored based on the PHOTO_STORAGE setting.
IntegerField
An automatically-managed reference to the height of the uploaded photo.
IntegerField
An automatically-managed reference to the width of the uploaded photo.
CharField(100)
The staff member’s Twitter ID
CharField(100)
The staff member’s Facebook ID
CharField(100)
The staff member’s Google Plus account
URLField
A custom web site for the staff member.
ManyToManyField Site
The sites that the staff member works on.
A convenient way to concatenate the first and last name.
| Returns: | unicode |
|---|


Checked/Enabled
Checked/Disabled
Unchecked/Enabled
Unchecked/Disabled
Custom checkbox toggles by class
This message's visibility toggles by class with a checkbox above.