/**
A **GameObject** is an GameObject within a xeoEngine {{#crossLink "Scene"}}Scene{{/crossLink}}.
## Overview
See the {{#crossLink "Scene"}}Scene{{/crossLink}} class documentation for more information on GameObjects.

## Boundaries
#### Local-space
A GameObject provides its Local-space boundary as a {{#crossLink "Boundary3D"}}{{/crossLink}} that encloses
the {{#crossLink "Geometry"}}{{/crossLink}} {{#crossLink "Geometry/positions:property"}}{{/crossLink}}.

```` javascript
var scene = new XEO.Scene();
var geometry = new XEO.Geometry(myScene, {
//...
});
var object = new XEO.GameObject(myScene, {
geometry: myGeometry,
transform: translate
});
// Get the Local-space Boundary3D
var localBoundary = object.localBoundary;
// Get Local-space object-aligned bounding box (OBB),
// which is an array of eight vertices that describes
// the box that is aligned with the GameObject's Geometry
var obb = localBoundary.obb;
// Get the Local-space axis-aligned bounding box (ABB),
// which contains the extents of the boundary on each axis
var aabb = localBoundary.aabb;
// get the Local-space center of the GameObject:
var center = localBoundary.center;
````
#### World-space
A GameObject provides its World-space boundary as a {{#crossLink "Boundary3D"}}{{/crossLink}} that encloses
the {{#crossLink "Geometry"}}{{/crossLink}} {{#crossLink "Geometry/positions:property"}}{{/crossLink}} after
transformation by the GameObject's {{#crossLink "GameObject/transform:property"}}Modelling transform{{/crossLink}}.

```` javascript
var scene = new XEO.Scene();
var geometry = new XEO.Geometry(myScene, {
//...
});
var translate = new XEO.Translate(scene, {
xyz: [-5, 0, 0] // Translate along -X axis
});
var object = new XEO.GameObject(myScene, {
geometry: myGeometry,
transform: translate
});
// Get the World-space Boundary3D
var worldBoundary = object.worldBoundary;
// Get World-space object-aligned bounding box (OBB),
// which is an array of eight vertices that describes
// the box that is aligned with the GameObject
var obb = worldBoundary.obb;
// Get the World-space axis-aligned bounding box (ABB),
// which contains the extents of the boundary on each axis
var aabb = worldBoundary.aabb;
// get the World-space center of the GameObject:
var center = worldBoundary.center;
````
#### View-space
A GameObject also provides its View-space boundary as a {{#crossLink "Boundary3D"}}{{/crossLink}} that encloses
the {{#crossLink "Geometry/positions:property"}}Geometry positions{{/crossLink}} after
their transformation by the {{#crossLink "Camera/view:property"}}View{{/crossLink}} and
{{#crossLink "GameObject/transform:property"}}Modelling{{/crossLink}} transforms.

```` javascript
// Get the View-space Boundary3D
var viewBoundary = object.viewBoundary;
// Get View-space object-aligned bounding box (OBB),
// which is an array of eight vertices that describes
// the box that is aligned with the GameObject
var obb = viewBoundary.obb;
// Get the View-space axis-aligned bounding box (ABB),
// which contains the extents of the boundary on each axis
var aabb = viewBoundary.aabb;
// get the View-space center of the GameObject:
var center = viewBoundary.center;
````
#### View-space
A GameObject also provides its Canvas-space boundary as a {{#crossLink "Boundary2D"}}{{/crossLink}} that encloses
the {{#crossLink "Geometry/positions:property"}}Geometry positions{{/crossLink}} after
their transformation by the {{#crossLink "GameObject/transform:property"}}Modelling{{/crossLink}},
{{#crossLink "Camera/view:property"}}View{{/crossLink}} and {{#crossLink "Camera/project:property"}}Projection{{/crossLink}} transforms.

```` javascript
// Get the Canvas-space Boundary2D
var canvasBoundary = object.canvasBoundary;
// Get the Canvas-space axis-aligned bounding box (ABB),
// which contains the extents of the boundary on each axis
var aabb = canvasBoundary.aabb;
// get the Canvas-space center of the GameObject:
var center = canvasBoundary.center;
````
@class GameObject
@module XEO
@submodule objects
@constructor
@param [scene] {Scene} Parent {{#crossLink "Scene"}}Scene{{/crossLink}} - creates this GameObject within xeoEngine's default {{#crossLink "XEO/scene:property"}}scene{{/crossLink}} by default.
@param [cfg] {*} Configs
@param [cfg.id] {String} Optional ID, unique among all components in the parent {{#crossLink "Scene"}}Scene{{/crossLink}}, generated automatically when omitted.
@param [cfg.meta] {String:Object} Optional map of user-defined metadata to attach to this GameObject.
@param [cfg.camera] {String|Camera} ID or instance of a {{#crossLink "Camera"}}Camera{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the
parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance, {{#crossLink "Scene/camera:property"}}camera{{/crossLink}}.
@param [cfg.clips] {String|Clips} ID or instance of a {{#crossLink "Clips"}}Clips{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the
parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance, {{#crossLink "Scene/clips:property"}}clips{{/crossLink}}.
@param [cfg.colorTarget] {String|ColorTarget} ID or instance of a {{#crossLink "ColorTarget"}}ColorTarget{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the
parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance, {{#crossLink "Scene/colorTarget:property"}}colorTarget{{/crossLink}}.
@param [cfg.depthTarget] {String|DepthTarget} ID or instance of a {{#crossLink "DepthTarget"}}DepthTarget{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the
parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance, {{#crossLink "Scene/depthTarget:property"}}depthTarget{{/crossLink}}.
@param [cfg.depthBuf] {String|DepthBuf} ID or instance of a {{#crossLink "DepthBuf"}}DepthBuf{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the
parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance, depth {{#crossLink "Scene/depthBuf:property"}}depthBuf{{/crossLink}}.
@param [cfg.visibility] {String|Visibility} ID or instance of a {{#crossLink "Visibility"}}Visibility{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the
parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance, {{#crossLink "Scene/visibility:property"}}visibility{{/crossLink}}.
@param [cfg.modes] {String|Modes} ID or instance of a {{#crossLink "Modes"}}Modes{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the
parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance, {{#crossLink "Scene/modes:property"}}modes{{/crossLink}}.
@param [cfg.geometry] {String|Geometry} ID or instance of a {{#crossLink "Geometry"}}Geometry{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the
parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance, {{#crossLink "Scene/geometry:property"}}geometry{{/crossLink}}, which is a 2x2x2 box.
@param [cfg.layer] {String|Layer} ID or instance of a {{#crossLink "Layer"}}Layer{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the
parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance, {{#crossLink "Scene/layer:property"}}layer{{/crossLink}}.
@param [cfg.lights] {String|Lights} ID or instance of a {{#crossLink "Lights"}}Lights{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the
parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance, {{#crossLink "Scene/lights:property"}}lights{{/crossLink}}.
@param [cfg.material] {String|Material} ID or instance of a {{#crossLink "Material"}}Material{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the
parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance, {{#crossLink "Scene/material:property"}}material{{/crossLink}}.
@param [cfg.morphTargets] {String|MorphTargets} ID or instance of a {{#crossLink "MorphTargets"}}MorphTargets{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s
default instance, {{#crossLink "Scene/morphTargets:property"}}morphTargets{{/crossLink}}.
@param [cfg.reflect] {String|Reflect} ID or instance of a {{#crossLink "CubeMap"}}CubeMap{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance,
{{#crossLink "Scene/reflect:property"}}reflection{{/crossLink}}.
@param [cfg.shader] {String|Shader} ID or instance of a {{#crossLink "Shader"}}Shader{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance,
{{#crossLink "Scene/shader:property"}}shader{{/crossLink}}.
@param [cfg.shaderParams] {String|ShaderParams} ID or instance of a {{#crossLink "ShaderParams"}}ShaderParams{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance,
{{#crossLink "Scene/shaderParams:property"}}shaderParams{{/crossLink}}.
@param [cfg.stage] {String|Stage} ID or instance of of a {{#crossLink "Stage"}}Stage{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance,
{{#crossLink "Scene/stage:property"}}stage{{/crossLink}}.
@param [cfg.transform] {String|Transform} ID or instance of a modelling transform to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance,
{{#crossLink "Scene/transform:property"}}transform{{/crossLink}} (which is an identity matrix which performs no transformation).
@param [cfg.decal] {String|Texture} ID or instance of a {{#crossLink "Scene/Decal"}}{{/crossLink}} to attach to this GameObject. Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default instance,
{{#crossLink "Scene/decal:property"}}decal{{/crossLink}} (which is an identity matrix which performs no decalation).
@extends Component
*/
/**
* Fired when this GameObject is *picked* via a call to the {{#crossLink "Canvas/pick:method"}}{{/crossLink}} method
* on the parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s {{#crossLink "Canvas"}}Canvas {{/crossLink}}.
* @event picked
* @param {String} objectId The ID of this GameObject.
* @param {Number} canvasX The X-axis Canvas coordinate that was picked.
* @param {Number} canvasY The Y-axis Canvas coordinate that was picked.
*/
(function () {
"use strict";
XEO.GameObject = XEO.Component.extend({
type: "XEO.GameObject",
_init: function (cfg) {
this.camera = cfg.camera;
this.clips = cfg.clips;
this.colorTarget = cfg.colorTarget;
this.colorBuf = cfg.colorBuf;
this.depthTarget = cfg.depthTarget;
this.depthBuf = cfg.depthBuf;
this.visibility = cfg.visibility;
this.modes = cfg.modes;
this.geometry = cfg.geometry;
this.layer = cfg.layer;
this.lights = cfg.lights;
this.material = cfg.material;
this.morphTargets = cfg.morphTargets;
this.reflect = cfg.reflect;
this.shader = cfg.shader;
this.shaderParams = cfg.shaderParams;
this.stage = cfg.stage;
this.transform = cfg.transform;
this.billboard = cfg.billboard;
this.decal = cfg.decal;
// Cached boundary for each coordinate space
// The GameObject's Geometry component caches the Local-space boundary
this._worldBoundary = null;
this._viewBoundary = null;
this._canvasBoundary = null;
this._worldBoundaryDirty = true;
this._viewBoundaryDirty = true;
this._canvasBoundaryDirty = true;
},
_props: {
/**
* The {{#crossLink "Camera"}}Camera{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/camera:property"}}camera{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/camera:event"}}{{/crossLink}} event on change.
*
* @property camera
* @type Camera
*/
camera: {
set: function (value) {
// Invalidate cached World-space bounding boxes
this._setViewBoundaryDirty();
// Unsubscribe from old Cameras's events
var oldCamera = this._children.camera;
if (oldCamera) {
oldCamera.off(this._onCameraViewMatrix);
oldCamera.off(this._onCameraProjMatrix);
}
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/camera:property"}}{{/crossLink}} property changes.
*
* @event camera
* @param value The property's new value
*/
this._setChild("camera", value);
var newCamera = this._children.camera;
if (newCamera) {
// Subscribe to new Camera's events
var self = this;
this._onCameraViewMatrix = newCamera.on("viewMatrix",
function () {
self._setViewBoundaryDirty();
});
this._onCameraProjMatrix = newCamera.on("projMatrix",
function () {
self._setCanvasBoundaryDirty();
});
}
},
get: function () {
return this._children.camera;
}
},
/**
* The {{#crossLink "Clips"}}Clips{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/clips:property"}}clips{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/clips:event"}}{{/crossLink}} event on change.
*
* @property clips
* @type Clips
*/
clips: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/clips:property"}}{{/crossLink}} property changes.
* @event clips
* @param value The property's new value
*/
this._setChild("clips", value);
},
get: function () {
return this._children.clips;
}
},
/**
* The {{#crossLink "ColorTarget"}}ColorTarget{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/colorTarget:property"}}colorTarget{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/colorTarget:event"}}{{/crossLink}} event on change.
*
* @property colorTarget
* @type ColorTarget
*/
colorTarget: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/colorTarget:property"}}{{/crossLink}} property changes.
* @event colorTarget
* @param value The property's new value
*/
this._setChild("colorTarget", value);
},
get: function () {
return this._children.colorTarget;
}
},
/**
* The {{#crossLink "ColorBuf"}}ColorBuf{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/colorBuf:property"}}colorBuf{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/colorBuf:event"}}{{/crossLink}} event on change.
*
* @property colorBuf
* @type ColorBuf
*/
colorBuf: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/colorBuf:property"}}{{/crossLink}} property changes.
*
* @event colorBuf
* @param value The property's new value
*/
this._setChild("colorBuf", value);
},
get: function () {
return this._children.colorBuf;
}
},
/**
* The {{#crossLink "DepthTarget"}}DepthTarget{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/depthTarget:property"}}depthTarget{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/depthTarget:event"}}{{/crossLink}} event on change.
*
* @property depthTarget
* @type DepthTarget
*/
depthTarget: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/depthTarget:property"}}{{/crossLink}} property changes.
*
* @event depthTarget
* @param value The property's new value
*/
this._setChild("depthTarget", value);
},
get: function () {
return this._children.depthTarget;
}
},
/**
* The {{#crossLink "DepthBuf"}}DepthBuf{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the
* parent {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/depthBuf:property"}}depthBuf{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/depthBuf:event"}}{{/crossLink}} event on change.
*
* @property depthBuf
* @type DepthBuf
*/
depthBuf: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/depthBuf:property"}}{{/crossLink}} property changes.
*
* @event depthBuf
* @param value The property's new value
*/
this._setChild("depthBuf", value);
},
get: function () {
return this._children.depthBuf;
}
},
/**
* The {{#crossLink "Visibility"}}Visibility{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/visibility:property"}}visibility{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/visibility:event"}}{{/crossLink}} event on change.
*
* @property visibility
* @type Visibility
*/
visibility: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/visibility:property"}}{{/crossLink}} property changes.
*
* @event visibility
* @param value The property's new value
*/
this._setChild("visibility", value);
},
get: function () {
return this._children.visibility;
}
},
/**
* The {{#crossLink "Modes"}}Modes{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/modes:property"}}modes{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/modes:event"}}{{/crossLink}} event on change.
*
* @property modes
* @type Modes
*/
modes: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/modes:property"}}{{/crossLink}} property changes.
*
* @event modes
* @param value The property's new value
*/
this._setChild("modes", value);
},
get: function () {
return this._children.modes;
}
},
/**
* The {{#crossLink "Geometry"}}Geometry{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/geometry:property"}}camera{{/crossLink}}
* (a simple box) when set to a null or undefined value.
*
* Fires a {{#crossLink "GameObject/geometry:event"}}{{/crossLink}} event on change.
*
* Updates {{#crossLink "GameObject/boundary"}}{{/crossLink}},
* {{#crossLink "GameObject/worldObb"}}{{/crossLink}} and
* {{#crossLink "GameObject/center"}}{{/crossLink}}
*
* @property geometry
* @type Geometry
*/
geometry: {
set: function (value) {
// Invalidate cached World-space bounding boxes
this._setWorldBoundaryDirty();
// Unsubscribe from old Geometry's events
var oldGeometry = this._children.geometry;
if (oldGeometry) {
if (!value || (value.id !== undefined ? value.id : value) != oldGeometry.id) {
oldGeometry.off(this._onGeometryPositions);
oldGeometry.off(this._onGeometryDestroyed);
}
}
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/geometry:property"}}{{/crossLink}} property changes.
*
* @event geometry
* @param value The property's new value
*/
this._setChild("geometry", value);
var newGeometry = this._children.geometry;
if (newGeometry) {
// Subscribe to new Geometry's events
// World-space boundary is dirty when new Geometry's
// positions are updated or Geometry is destroyed.
var self = this;
this._onGeometryPositions = newGeometry.on("positions",
function () {
self._setWorldBoundaryDirty();
});
this._onGeometryDestroyed = newGeometry.on("destroyed",
function () {
self._setWorldBoundaryDirty();
});
}
},
get: function () {
return this._children.geometry;
}
},
/**
* The {{#crossLink "Layer"}}Layer{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/layer:property"}}layer{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/layer:event"}}{{/crossLink}} event on change.
*
* @property layer
* @type Layer
*/
layer: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/layer:property"}}{{/crossLink}} property changes.
*
* @event layer
* @param value The property's new value
*/
this._setChild("layer", value);
},
get: function () {
return this._children.layer;
}
},
/**
* The {{#crossLink "Lights"}}Lights{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/lights:property"}}lights{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/lights:event"}}{{/crossLink}} event on change.
*
* @property lights
* @type Lights
*/
lights: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/lights:property"}}{{/crossLink}} property changes.
*
* @event lights
* @param value The property's new value
*/
this._setChild("lights", value);
},
get: function () {
return this._children.lights;
}
},
/**
* The {{#crossLink "Material"}}Material{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/material:property"}}material{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/material:event"}}{{/crossLink}} event on change.
*
* @property material
* @type Material
*/
material: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/material:property"}}{{/crossLink}} property changes.
*
* @event material
* @param value The property's new value
*/
this._setChild("material", value);
},
get: function () {
return this._children.material;
}
},
/**
* The {{#crossLink "MorphTargets"}}MorphTargets{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/morphTargets:property"}}morphTargets{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/morphTargets:event"}}{{/crossLink}} event on change.
*
* @property morphTargets
* @type MorphTargets
*/
morphTargets: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/morphTargets:property"}}{{/crossLink}} property changes.
* @event morphTargets
* @param value The property's new value
*/
this._setChild("morphTargets", value);
},
get: function () {
return this._children.morphTargets;
}
},
/**
* The {{#crossLink "Reflect"}}Reflect{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/reflect:property"}}reflect{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/reflect:event"}}{{/crossLink}} event on change.
*
* @property reflect
* @type Reflect
*/
reflect: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/reflect:property"}}{{/crossLink}} property changes.
*
* @event reflect
* @param value The property's new value
*/
this._setChild("reflect", value);
},
get: function () {
return this._children.reflect;
}
},
/**
* The {{#crossLink "Shader"}}Shader{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/shader:property"}}shader{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/shader:event"}}{{/crossLink}} event on change.
*
* @property shader
* @type Shader
*/
shader: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/shader:property"}}{{/crossLink}} property changes.
* @event shader
* @param value The property's new value
*/
this._setChild("shader", value);
},
get: function () {
return this._children.shader;
}
},
/**
* The {{#crossLink "ShaderParams"}}ShaderParams{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/shaderParams:property"}}shaderParams{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/shaderParams:event"}}{{/crossLink}} event on change.
*
* @property shaderParams
* @type ShaderParams
*/
shaderParams: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/shaderParams:property"}}{{/crossLink}} property changes.
*
* @event shaderParams
* @param value The property's new value
*/
this._setChild("shaderParams", value);
},
get: function () {
return this._children.shaderParams;
}
},
/**
* The {{#crossLink "Stage"}}Stage{{/crossLink}} attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/stage:property"}}stage{{/crossLink}} when set to
* a null or undefined value.
*
* Fires a {{#crossLink "GameObject/stage:event"}}{{/crossLink}} event on change.
*
* @property stage
* @type Stage
*/
stage: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/stage:property"}}{{/crossLink}} property changes.
*
* @event stage
* @param value The property's new value
*/
this._setChild("stage", value);
},
get: function () {
return this._children.stage;
}
},
/**
* The Local-to-World-space transform attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/transform:property"}}transform{{/crossLink}}
* (an identity matrix) when set to a null or undefined value.
*
* Fires a {{#crossLink "GameObject/transform:event"}}{{/crossLink}} event on change.
*
* Updates {{#crossLink "GameObject/boundary"}}{{/crossLink}},
* {{#crossLink "GameObject/worldObb"}}{{/crossLink}} and
* {{#crossLink "GameObject/center"}}{{/crossLink}}
*
* @property transform
* @type Transform
*/
transform: {
set: function (value) {
// Invalidate cached World-space bounding boxes
this._setWorldBoundaryDirty();
// Unsubscribe from old Transform's events
var oldTransform = this._children.transform;
if (oldTransform && (!value || value.id !== oldTransform.id)) {
oldTransform.off(this._onTransformUpdated);
oldTransform.off(this._onTransformDestroyed);
}
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/transform:property"}}{{/crossLink}}
* property changes.
*
* @event transform
* @param value The property's new value
*/
this._setChild("transform", value);
// Subscribe to new Transform's events
var newTransform = this._children.transform;
if (newTransform) {
// World-space boundary is dirty when Transform's
// matrix is updated or Transform is destroyed.
var self = this;
this._onTransformUpdated = newTransform.on("updated",
function () {
if (self._XXX) {
return;
}
self._XXX = true;
self.scene.once("tick3", function () {
newTransform._buildLeafMatrix();
self._setWorldBoundaryDirty();
self._XXX = false;
});
});
this._onTransformDestroyed = newTransform.on("destroyed",
function () {
self._setWorldBoundaryDirty();
});
}
},
get: function () {
return this._children.transform;
}
},
/**
* The Billboard attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/billboard:property"}}billboard{{/crossLink}}
* (an identity matrix) when set to a null or undefined value.
*
* Fires a {{#crossLink "GameObject/billboard:event"}}{{/crossLink}} event on change.
*
* @property billboard
* @type Billboard
*/
billboard: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/billboard:property"}}{{/crossLink}}
* property changes.
*
* @event billboard
* @param value The property's new value
*/
this._setChild("billboard", value);
},
get: function () {
return this._children.billboard;
}
},
/**
* The Decal attached to this GameObject.
*
* Must be within the same {{#crossLink "Scene"}}Scene{{/crossLink}} as this GameObject. Defaults to the parent
* {{#crossLink "Scene"}}Scene{{/crossLink}}'s default {{#crossLink "Scene/decal:property"}}decal{{/crossLink}}
* (an identity matrix) when set to a null or undefined value.
*
* Fires a {{#crossLink "GameObject/decal:event"}}{{/crossLink}} event on change.
*
* @property decal
* @type Texture
*/
decal: {
set: function (value) {
/**
* Fired whenever this GameObject's {{#crossLink "GameObject/decal:property"}}{{/crossLink}}
* property changes.
*
* @event decal
* @param value The property's new value
*/
this._setChild("decal", value);
},
get: function () {
return this._children.decal;
}
},
/**
* Local-space 3D boundary.
*
* This is a {{#crossLink "Boundary3D"}}{{/crossLink}} that encloses
* the {{#crossLink "Geometry"}}{{/crossLink}} that is attached to this GameObject.
*
* The a {{#crossLink "Boundary3D"}}{{/crossLink}} is lazy-instantiated the first time that this
* property is referenced. If {{#crossLink "Component/destroy:method"}}{{/crossLink}} is then called on it,
* then this property will be assigned to a fresh {{#crossLink "Boundary3D"}}{{/crossLink}} instance next
* time it's referenced.
*
* @property localBoundary
* @type Boundary3D
* @final
*/
localBoundary: {
get: function () {
return this._children.geometry.boundary;
}
},
/**
* World-space 3D boundary.
*
* This is a {{#crossLink "Boundary3D"}}{{/crossLink}} that encloses the {{#crossLink "Geometry"}}{{/crossLink}}
* that is attached to this GameObject after transformation by this GameObject's modelling
* {{#crossLink "Transform"}}{{/crossLink}}.
*
* The a {{#crossLink "Boundary3D"}}{{/crossLink}} is lazy-instantiated the first time that this
* property is referenced. If {{#crossLink "Component/destroy:method"}}{{/crossLink}} is then called on it,
* then this property will be assigned to a fresh {{#crossLink "Boundary3D"}}{{/crossLink}} instance next
* time it's referenced.
*
* @property worldBoundary
* @type Boundary3D
* @final
*/
worldBoundary: {
get: function () {
if (!this._worldBoundary) {
var self = this;
this._worldBoundary = new XEO.Boundary3D(this.scene, {
meta: {
desc: "GameObject " + self.id + " World Boundary"
},
getDirty: function () {
if (self._worldBoundaryDirty) {
self._worldBoundaryDirty = false;
return true;
}
return false;
},
// Faster and less precise than getPositions:
getOBB: function () {
var geometry = self._children.geometry;
if (geometry) {
return geometry.boundary.obb;
}
},
//getPositions: function () {
// return self._children.geometry.positions;
//},
getMatrix: function () {
return self._children.transform.leafMatrix;
}
});
this._worldBoundary.on("destroyed",
function () {
self._worldBoundary = null;
});
this._setWorldBoundaryDirty();
}
return this._worldBoundary;
}
},
/**
* View-space 3D boundary.
*
* This is a {{#crossLink "Boundary3D"}}{{/crossLink}} that encloses the {{#crossLink "Geometry"}}{{/crossLink}}
* that is attached to this GameObject after transformation by this GameObject's modelling
* {{#crossLink "Transform"}}{{/crossLink}} and {{#crossLink "Camera"}}{{/crossLink}}
* {{#crossLink "Camera/view:property"}}view transform{{/crossLink}}.
*
* The a {{#crossLink "Boundary3D"}}{{/crossLink}} is lazy-instantiated the first time that this
* property is referenced. If {{#crossLink "Component/destroy:method"}}{{/crossLink}} is then called on it,
* then this property will be assigned to a fresh {{#crossLink "Boundary3D"}}{{/crossLink}} instance next
* time it's referenced.
*
* @property viewBoundary
* @type Boundary3D
* @final
*/
viewBoundary: {
get: function () {
if (!this._viewBoundary) {
var self = this;
this._viewBoundary = new XEO.Boundary3D(this.scene, {
meta: {
desc: "GameObject " + self.id + " View Boundary"
},
getDirty: function () {
if (self._viewBoundaryDirty) {
self._viewBoundaryDirty = false;
return true;
}
return false;
},
getOBB: function () {
return self.worldBoundary.obb;
},
getMatrix: function () {
return self._children.camera.view.matrix;
}
});
this._viewBoundary.on("destroyed",
function () {
self._viewBoundary = null;
});
this._setViewBoundaryDirty();
}
return this._viewBoundary;
}
},
/**
* Canvas-space 2D boundary.
*
* This is a {{#crossLink "Boundary2D"}}{{/crossLink}} that encloses this GameObject's
* {{#crossLink "Geometry"}}{{/crossLink}} after transformation by this GameObject's modelling
* {{#crossLink "Transform"}}{{/crossLink}} and {{#crossLink "Camera"}}{{/crossLink}}
* {{#crossLink "Camera/view:property"}}view{{/crossLink}} and
* {{#crossLink "Camera/project:property"}}projection{{/crossLink}} transforms.
*
* The a {{#crossLink "Boundary2D"}}{{/crossLink}} is lazy-instantiated the first time that this
* property is referenced. If {{#crossLink "Component/destroy:method"}}{{/crossLink}} is then called on it,
* then this property will be assigned to a fresh {{#crossLink "Boundary2D"}}{{/crossLink}} instance next
* time it's referenced.
*
* @property canvasBoundary
* @type Boundary2D
* @final
*/
canvasBoundary: {
get: function () {
if (!this._canvasBoundary) {
var self = this;
this._canvasBoundary = new XEO.Boundary2D(this.scene, {
meta: {
desc: "GameObject " + self.id + " Canvas Boundary"
},
getDirty: function () {
if (self._canvasBoundaryDirty) {
self._canvasBoundaryDirty = false;
return true;
}
return false;
},
getOBB: function () {
return self.viewBoundary.obb;
},
getMatrix: function () {
return self._children.camera.project.matrix;
}
});
this._canvasBoundary.on("destroyed",
function () {
self._canvasBoundary = null;
});
this._setCanvasBoundaryDirty();
}
return this._canvasBoundary;
}
},
/**
* JSON object containing the (GLSL) source code of the shaders for this GameObject.
*
* This is sometimes useful to have as a reference
* when constructing your own custom {{#crossLink "Shader"}}{{/crossLink}} components.
*
* Will return null if xeoEngine has not yet rendered this GameObject.
*
* @property glsl
* @type JSON
* @final
*/
glsl: {
get: function () {
var rendererObject = this._renderer.objects[this.id];
if (!rendererObject) {
return null;
}
var source = rendererObject.program.program.source;
return {
draw: {
vertex: source.vertexDraw,
fragment: source.fragmentDraw
},
pickObject: {
vertex: source.vertexPickObject,
fragment: source.fragmentPickObject
},
pickPrimitive: {
vertex: source.vertexPickPrimitive,
fragment: source.fragmentPickPrimitive
}
};
}
},
/**
* The (GLSL) source code of the shaders for this GameObject, as a string.
*
* This is sometimes useful to have as a reference
* when constructing your own custom {{#crossLink "Shader"}}{{/crossLink}} components.
*
* Will return null if xeoEngine has not yet rendered this GameObject.
*
* @property glslString
* @type String
* @final
*/
glslString: {
get: function () {
var glsl = this.glsl;
if (glsl) {
return JSON.stringify(glsl, "\n", 4);
}
}
}
},
_setWorldBoundaryDirty: function () {
this._worldBoundaryDirty = true;
if (this._worldBoundary) {
this._worldBoundary.fire("updated", true);
}
this._setViewBoundaryDirty();
},
_setViewBoundaryDirty: function () {
this._viewBoundaryDirty = true;
if (this._viewBoundary) {
this._viewBoundary.fire("updated", true);
}
this._setCanvasBoundaryDirty();
},
_setCanvasBoundaryDirty: function () {
this._canvasBoundaryDirty = true;
if (this._canvasBoundary) {
this._canvasBoundary.fire("updated", true);
}
},
_compile: function () {
var children = this._children;
children.camera._compile();
children.clips._compile();
children.colorTarget._compile();
children.colorBuf._compile();
children.depthTarget._compile();
children.depthBuf._compile();
children.visibility._compile();
children.modes._compile();
children.geometry._compile();
children.layer._compile();
children.lights._compile();
children.material._compile();
//children.morphTargets._compile();
children.reflect._compile();
children.shader._compile();
children.shaderParams._compile();
children.stage._compile();
children.transform._compile();
children.billboard._compile();
// (Re)build this GameObject in the renderer
var result = this._renderer.buildObject(this.id);
if (result && result.error) {
// Object has errors, probably due to
// shader not allocating/compiling/linking.
this.error(result.errorLog.join("\n"));
}
},
_getJSON: function () {
var children = this._children;
return {
camera: children.camera.id,
clips: children.clips.id,
colorTarget: children.colorTarget.id,
colorBuf: children.colorBuf.id,
depthTarget: children.depthTarget.id,
depthBuf: children.depthBuf.id,
visibility: children.visibility.id,
modes: children.modes.id,
geometry: children.geometry.id,
layer: children.layer.id,
lights: children.lights.id,
material: children.material.id,
reflect: children.reflect.id,
shader: children.shader.id,
shaderParams: children.shaderParams.id,
stage: children.stage.id,
transform: children.transform.id,
billboard: children.billboard.id
};
},
_destroy: function () {
if (this._children.transform) {
this._children.transform.off(this._onTransformUpdated);
this._children.transform.off(this._onTransformDestroyed);
}
if (this._children.geometry) {
this._children.geometry.off(this._onGeometryDirty);
this._children.geometry.off(this._onGeometryPositions);
this._children.geometry.off(this._onGeometryDestroyed);
}
if (this._worldBoundary) {
this._worldBoundary.destroy();
}
if (this._viewBoundary) {
this._viewBoundary.destroy();
}
if (this._canvasBoundary) {
this._canvasBoundary.destroy();
}
this._renderer.removeObject(this.id);
}
});
})();


public abstract class BaseGestureDetector
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
protected android.content.Context |
mContext |
protected android.view.MotionEvent |
mCurrEvent |
protected float |
mCurrPressure |
protected boolean |
mGestureInProgress |
protected android.view.MotionEvent |
mPrevEvent |
protected float |
mPrevPressure |
protected long |
mTimeDelta |
protected static float |
PRESSURE_THRESHOLD
This value is the threshold ratio between the previous combined pressure
and the current combined pressure.
|
| Constructor and Description |
|---|
BaseGestureDetector(android.content.Context context) |
| Modifier and Type | Method and Description |
|---|---|
long |
getEventTime()
Return the event time of the current GestureDetector event being
processed.
|
long |
getTimeDelta()
Return the time difference in milliseconds between the previous accepted
GestureDetector event and the current GestureDetector event.
|
protected abstract void |
handleInProgressEvent(int actionCode,
android.view.MotionEvent event)
Called when the current event occurred when a gesture IS in progress.
|
protected abstract void |
handleStartProgressEvent(int actionCode,
android.view.MotionEvent event)
Called when the current event occurred when NO gesture is in progress
yet.
|
boolean |
isInProgress()
Returns
true if a gesture is currently in progress. |
boolean |
onTouchEvent(android.view.MotionEvent event)
All gesture detectors need to be called through this method to be able to
detect gestures.
|
protected void |
resetState() |
protected void |
updateStateByEvent(android.view.MotionEvent curr) |
protected final android.content.Context mContext
protected boolean mGestureInProgress
protected android.view.MotionEvent mPrevEvent
protected android.view.MotionEvent mCurrEvent
protected float mCurrPressure
protected float mPrevPressure
protected long mTimeDelta
protected static final float PRESSURE_THRESHOLD
public boolean onTouchEvent(android.view.MotionEvent event)
event
- protected abstract void handleStartProgressEvent(int actionCode, android.view.MotionEvent event)
actionCode
- event
- protected abstract void handleInProgressEvent(int actionCode, android.view.MotionEvent event)
actionCode
- event
- protected void updateStateByEvent(android.view.MotionEvent curr)
protected void resetState()
public boolean isInProgress()
true
if a gesture is currently in progress.true
if a gesture is currently in progress, false
otherwise.public long getTimeDelta()
public long getEventTime()


@import model.Question @import controllers.QuestionAnswerForm @import controllers.QuestionAnswerForm @(question: Question, form: Form[QuestionAnswerForm])


Home
Blog
Design Practices
I'm Albert Condino and this is my portfolio website running on a self-maintained web server running on node. This website is as much of a project as it is a portfolio, so you may see this webpage change drastically from time to time.


nfsd
Section: Environments, Tables, and Troff Macros (7)Updated: 3 July 2003
Index Return to Main Contents
NAME
nfsd - special filesystem for controlling Linux NFS serverSYNPOSIS
mount -t nfsd nfsd /proc/fs/nfsdDESCRIPTION
The nfsd filesytem is a special filesystem which provides access to the Linux NFS server. The filesystem consists of a single directory which contains a number of files. These files are actually gateways into the NFS server. Writing to them can affect the server. Reading from them can provide information about the server. This file system is only available in Linux 2.6 and later series kernels (and in the later parts of the 2.5 development series leading up to 2.6). This man page does not apply to 2.4 and earlier. As well as this filesystem, there are a collection of files in the procfs filesystem (normally mounted at /proc) which are used to control the NFS server. This manual page describes all of these files. The exportfs and mountd programs (part of the nfs-utils package) expect to find this filesystem mounted at /proc/fs/nfsd or /proc/fs/nfs. If it is not mounted, they will fall-back on 2.4 style functionality. This involves accessing the NFS server via a systemcall. This systemcall is scheduled to be removed after the 2.6 kernel series.DETAILS
The three files in the nfsd filesystem are:- exports
-
This file contains a list of filesystems that are currently exported
and clients that each filesystem is exported to, together with a list
of export options for that client/filesystem pair. This is similar
to the
/proc/fs/nfs/exports
file in 2.4.
One difference is that a client doesn't necessarily correspond to just
one host. It can respond to a large collection of hosts that are
being treated identically.
Each line of the file contains a path name, a client name, and a number of options in parentheses. Any space, tab, newline or back-slash character in the path name or client name will be replaced by a backslash followed by the octal ASCII code for that character.
- threads
-
This file represents the number of
nfsd
thread currently running. Reading it will show the number of
threads. Writing an ASCII decimal number will cause the number of
threads to be changed (increased or decreased as necessary) to achieve
that number.
- filehandle
-
This is a somewhat unusual file in that what is read from it depends
on what was just written to it. It provides a transactional interface
where a program can open the file, write a request, and read a
response. If two separate programs open, write, and read at the same
time, their requests will not be mixed up.
The request written to filehandle should be a client name, a path name, and a number of bytes. This should be followed by a newline, with white-space separating the fields, and octal quoting of special characters.
On writing this, the program will be able to read back a filehandle for that path as exported to the given client. The filehandles length will be at most the number of bytes given.
The filehandle will be represented in hex with a leading '\x'.
The directory /proc/net/rpc in the procfs filesystem contains a number of files and directories. The files contain statistics that can be display using the nfsstat program. The directories contain information about various caches that the NFS server maintains to keep track of access permissions that different clients have for different filesystems. The caches are:
- auth.domain
-
This cache maps the name of a client (or domain) to an internal data
structure. The only access that is possible is to flush the cache.
- auth.unix.ip
-
This cache contains a mapping from IP address to the name of the
authentication domain that the ipaddress should be treated as part of.
- nfsd.export
-
This cache contains a mapping from directory and domain to export
options.
- nfsd.fh
-
This cache contains a mapping from domain and a filesystem identifier
to a directory. The filesystem identifier is stored in the
filehandles and consists of a number indicating the type of identifier
and a number of hex bytes indicating the content of the identifier.
Each directory representing a cache can hold from 1 to 3 files. They are:
- flush
-
When a number of seconds since epoch (1 Jan 1970) is written to this
file, all entries in the cache that were last updated before that file
become invalidated and will be flushed out. Writing 1 will flush
everything. This is the only file that will always be present.
- content
-
This file, if present, contains a textual representation of ever entry
in the cache, one per line. If an entry is still in the cache
(because it is actively being used) but has expired or is otherwise
invalid, it will be presented as a comment (with a leading hash
character).
- channel
-
This file, if present, acts a channel for request from the kernel-based
nfs server to be passed to a user-space program for handling.
When the kernel needs some information which isn't in the cache, it makes a line appear in the channel file giving the key for the information. A user-space program should read this, find the answer, and write a line containing the key, an expiry time, and the content. For example the kernel might make
nfsd <IP_ADDRESS>
appear in the auth.unix.ip/content file. The user-space program might then write
nfsd <IP_ADDRESS><PHONE_NUMBER> localhost
to indicate that <IP_ADDRESS> should map to localhost, atleast for now.If the program uses select(2) or poll(2) to discover if it can read from the channel then it will never see and end-of-file but when all requests have been answered, it will block until another request appears.
In the
/proc
filesystem there are 4 files that can be used to enabled extra tracing
of nfsd and related code. They are:
/proc/sys/sunrpc/nfs_debug
/proc/sys/sunrpc/nfsd_debug
/proc/sys/sunrpc/nlm_debug
/proc/sys/sunrpc/rpc_debug
They control tracing for the NFS client, the NFS server, the Network
Lock Manager (lockd) and the underlying RPC layer respectively.
Decimal numbers can be read from or written to these files. Each
number represents a bit-pattern where bits that are set cause certain
classes of tracing to be enabled. Consult the kernel header files to
find out what number correspond to what tracing.
SEE ALSO
rpc.nfsd(8), exports(5), nfsstat(8), mountd(8) exportfs(8).AUTHOR
NeilBrown
Index
This document was created by man2html, using the manual pages.
Time: 05:34:15 GMT, December 24, 2015


Class Flash
Flash Message Storage
public static
null
|
|
protected static
boolean
|
|
public static
null
|
|
public static
null
|
|
public static
mixed
|
|
public static
boolean
|
|
public static
boolean
|
protected static
string
|
$_sessionKey
Simpletools\Store\Flash Session key internal namespace to prevent direct session overwrite |
#
'ST_FLASH_32896hdiuqwgd6723gdy23g.'
|
protected static
integer
|
$_cleanedPrev
Cleaning process controller |
#
0
|
protected static
boolean
|
$_readOnce
Setting clearing message, when set to true clears the message straight after 1st get, useful when flash message is accessed within same request that it was set, defaults to false |
#
false
|
protected static
string
|
$_defaultReturn
Setting what to return if get can't find a message with a key, ST__EXCEPTION will throw an exception; |
#
'ST__EXCEPTION'
|


Showing {{ results | count }} results for "{{ get:q }}".
{{ search:results supplement_data="true" collection:is="press" }} {{ if no_results }}We didn't find anything for "{{ get:q }}".
Try searching with another term.
{{ else }}Try searching with another term.
{{ else }}


Shinpuru
John doe
Setting
Another action
Something else here
Logout
Setting
Logout
Dashboard
List User
List Theme
Setting Sent Mail
Create list user
Dashboard
List User
Create List User
Well done!
You successfully create list user.
Go back list user?
Name list user
Customers
Example: name;email;age quoc;quocnguyen@clgt.vn;29
Create list user


This will trigger the hook with the latest push to the current
repository if the hook is subscribed to push
events. If the
hook is not subscribed to push
events, the server will respond
with 204 but no test POST will be generated.
POST /repos/:owner/:repo/hooks/:hook_id/tests
Note: Previously /repos/:owner/:repo/hooks/:hook_id/test
Status: 204 No Content


Platforms
New platform
New Hardware Platform
Add a new hardware platform
General Settings
Platform Name
The unique platform name.
Vendor Name
The name of the platform vendor
Model Name
The name of the platform model
Platform Chipset
The name of the platform chipset.
Description
A description of the platform.
Dimensions
Height
The chassis height in rack units
1 RU
2 RU
3 RU
4 RU
5 RU
Save platform
Cancel


Find out what Australian investors are saying right now
Austwits has market information that you can't afford to miss.


`The Talented Mr. Ripley' Shows Promise but Ultimately Disappoints by Homer Yen (c) 1999
If you've seen or heard some of the nominations from various film critic societies around the country, then you probably know that this movie has been mentioned for a couple of reasons. Many applaud the gorgeous cinematography and the strong performances of the cast. Even within my esteemed group of online film critics (The Online Film Critics Society), there is general agreement that `Mr. Ripley' should be remembered when Oscar nominations are announced. Yet, while the buzz surrounding this film is generally good, I'm actually puzzled as to why this film is getting so much praise. My feelings for this film are decidedly mixed, although it's one of the best-looking average movies I've seen this year.
Mr. Ripley of the title is Thomas Ripley (Damon), a person who seems to be skilled in many areas although he works as a bathroom attendant. For example, he can speak in other people's voices with alarming accuracy. And, he's a pretty good pianist. After a particular recital, a man approaches him. The man sees that Ripley is wearing a Princeton-emblazoned jacket. He asks if he graduated from Princeton and if he knows his son, Dickie Greenleaf (Jude Law), since they are the same age. Of course he is just a lowly attendant and the jacket is borrowed, but to hide his true identity, he says yes. The man, who is a shipping magnate, hires Ripley to travel to Italy where Dickie currently lives. His task is to convince him to come home.
Dickie is quite a character. He has tons of charisma, which is in part to his good looks, his elite taste, and his wealth as the son of a shipping magnate. Dickie's world is tremendously lavish. He has a terrific, hilltop bungalow. He spends his afternoons on his sailboat. And he frequents the best clubs in town. Ripley arrives and manages to successfully blend into Dickie's life and meet some of Dickie's friends. These include fiancée Marge (Gwyneth Paltrow) and, a well-connected partygoer (Phillip Seymour Hoffman). Up this point, which is about 45 minutes into the movie, I am really enjoying how Dickie's and Ripley's friendship are evolving. But all of a sudden, Dickie and Ripley don't see eye-to-eye anymore. Dickie becomes bored with Ripley. And Ripley doesn't want to give up this newly acquired lifestyle. At about this point, the film moves away from being a glossy drama, and becomes decidedly dark and inexplicably bloody. It was as if the film started out in one direction, and then made a sharp right turn.
Any praise for this film should be directed at Damon's nice performance and the terrific cinematography. The film takes place in wonderful locations throughout Italy. The camera skillfully catches the romance and beauty of beach towns, the awesome architecture of Rome, and the quaintness of other small villages. It was certainly enough to make me want to visit Italy sometime in the future. Every scene is handsomely shot while the sets are opulent, and certainly would make many of us envy the Dickie Greenleaf lifestyle. But despite all that it strives to be, the beauty of the film was only skin deep.
As I left the theatre, I was reminded of a recent film called `A Perfect Murder.' Ironically, it also starred Gwyneth Paltrow as a distressed woman who suspects that foul play is in the air. That production was undeniably glossy, and the performances were solid. But, it felt oddly empty. `Mr. Ripley' is slightly glossier and has slightly better all-around performances. Yet, it still felt oddly unsatisfying. I think that the problem is that once the film abruptly changes direction, the audience's expectations have been ruined. And that's too bad, because the outset of the film oozed with potential.
Grade: C+
Do You Yahoo!? Talk to your friends online with Yahoo! Messenger. http://messenger.yahoo.com
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


|
Artifact ID
|
Name
|
Type
|
Tags
|
Short Description
|
Change Log
|
Page URL
|
Author
|
Licenses
|
| wol-hook | World of Liferay | hook | | This hook contains custom configuration used for Liferay's public website. | | http://www.liferay.com | Liferay, Inc. | MIT |
| 1-2-1-columns-layouttpl | 1-2-1 Columns Templates | layouttpl | |
This plugin is a 1-2-1 columns layout template.
| | http://www.liferay.com | Liferay, Inc. | MIT |
| 1-3-1-columns-layouttpl | 1-3-1 Columns Templates | layouttpl | |
This plugin is a 1-3-1 columns layout template.
| | http://www.liferay.com | Liferay, Inc. | MIT |
| 2-1-2-columns-layouttpl | 2-1-2 Columns Templates | layouttpl | |
This plugin is a 2-1-2 columns layout template.
| | http://www.liferay.com | Liferay, Inc. | MIT |
| 3-2-3-columns-layouttpl | 3-2-3 Columns Templates | layouttpl | |
This plugin is a 3-2-3 columns layout template.
| | http://www.liferay.com | Liferay, Inc. | MIT |
| alfresco-content-portlet | Alfresco Content | portlet | alfresco | This plugin displays content from Alfresco's repository. | | http://www.liferay.com | Liferay, Inc. | MIT |
| alfresco-portlet | Alfresco Client | portlet | alfresco | This plugin accesses the Alfresco 2.0 UI. | | http://www.liferay.com | Alfresco Software, Inc. | GPL |
| analog-clock-portlet | Analog Clock | portlet | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| application-builder-portlet | Ruby Console | portlet | sample | This plugin provides a console for executing arbitrary Ruby code. Use this portlet should only be used for development. | | http://www.liferay.com | Liferay, Inc. | MIT |
| chat-portlet | Chat | portlet | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| flash-portlet | Flash | portlet | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| google-adsense-portlet | Google AdSense | portlet | google | This plugin allows easy integration with Google AdSense. | | http://www.liferay.com | Liferay, Inc. | MIT |
| google-gadget-portlet | Google Gadget | portlet | google | This plugin allows easy integration with Google Gadget. | | http://www.liferay.com | Liferay, Inc. | MIT |
| google-maps-portlet | Google Maps | portlet | google | This plugin allows easy integration with Google Maps. | | http://www.liferay.com | Liferay, Inc. | MIT |
| google-search-portlet | Google Search | portlet | google | This plugin allows easy integration with Google Search. | | http://www.liferay.com | Liferay, Inc. | MIT |
| ip-geocoder-portlet | IP Geocoder | portlet | | This plugin shows geocode IPs. | | http://www.liferay.com | Liferay, Inc. | MIT |
| knowledge-base-portlet | Knowledge Base | portlet | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| mail-portlet | Mail | portlet | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| novell-collaboration-portlet | Novell | portlet | novell | | | http://developer.novell.com/wiki/index.php/Novell_Collaboration_Portlets | Novell, Inc. | LGPL |
| release-tools-portlet | Release Tools | portlet | sample | This plugin is used by Liferay release managers to track packages among the Liferay public site, the SourceForge downloads page, and the SourceForge SVN repository. | | http://www.liferay.com | Liferay, Inc. | MIT |
| ruby-console-portlet | Ruby Console | portlet | sample | This plugin provides a console for executing arbitrary Ruby code. Use this portlet should only be used for development. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-dao-portlet | Sample DAO | portlet | sample | This plugin shows how to use DAO in Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-groovy-portlet | Sample Groovy | portlet | sample | This plugin shows how to create Groovy portlets in Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-hibernate-portlet | Sample Hibernate | portlet | sample | This plugin shows how to use Hibernate in Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-icefaces-ipc-ajax-push-portlet | Sample ICEfaces IPC Ajax Push | portlet | sample | This plugin shows how to use ICEfaces Ajax Push to do Interportlet Communication within Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-icefaces-jsf-1.1-myfaces-jsp-portlet | Sample ICEfaces JSF 1.1 MyFaces JSP | portlet | sample | This plugin shows how to use ICEfaces and the JSF 1.1 MyFaces RI and the JSP view-handler within Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-icefaces-jsf-1.1-sun-facelets-portlet | Sample ICEfaces JSF 1.1 Sun Facelets | portlet | sample | This plugin shows how to use ICEfaces and the JSF 1.1 Sun RI and the Facelets view-handler within Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-icefaces-jsf-1.1-sun-jsp-portlet | Sample ICEfaces JSF 1.1 Sun JSP | portlet | sample | This plugin shows how to use ICEfaces and the JSF 1.1 Sun RI and the JSP view-handler within Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-icefaces-jsf-1.2-sun-facelets-portlet | Sample ICEfaces JSF 1.2 Sun Facelets | portlet | sample | This plugin shows how to use ICEfaces and the JSF 1.2 Sun RI and the Facelets view-handler within Liferay. Requires Tomcat 6.x, GlassFish 2.0.x, or JBoss AS 4.2.x since JSF 1.2 has a JRE5 dependency. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-javascript-portlet | Sample Javascript | portlet | sample | This plugin shows how to create Javascript portlets in Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-jsf-1.1-myfaces-facelets-portlet | Sample JSF 1.1 MyFaces Facelets | portlet | sample | This plugin shows how to use the JSF 1.1 MyFaces RI and the Facelets view-handler within Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-jsf-1.1-myfaces-jsp-portlet | Sample JSF 1.1 MyFaces JSP | portlet | sample | This plugin shows how to use the JSF 1.1 MyFaces RI and the JSP view-handler within Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-jsf-1.1-sun-facelets-portlet | Sample JSF 1.1 Sun Facelets | portlet | sample | This plugin shows the Sun OpenPortal JSF Portlet Bridge and shows how to use the JSF 1.1 Sun RI and the Facelets view-handler within Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-jsf-1.1-sun-jsp-portlet | Sample JSF 1.1 Sun JSP | portlet | sample | This plugin leverages the Sun OpenPortal JSF Portlet Bridge and shows how to use the JSF 1.1 Sun RI and the JSP view-handler within Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-jsf-1.2-sun-facelets-portlet | Sample JSF 1.2 Sun Facelets | portlet | sample | This plugin leverages the Sun OpenPortal JSF Portlet Bridge and shows how to use the JSF 1.2 Sun RI and the Facelets view-handler within Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-jsf-1.2-sun-jsp-portlet | Sample JSF 1.2 Sun JSP | portlet | sample | This plugin leverages the Sun OpenPortal JSF Portlet Bridge and shows how to use the JSF 1.2 Sun RI and the JSP view-handler within Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-json-portlet | Sample JSON | portlet | sample | This plugin shows how to use JSON in Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-jsp-portlet | Sample JSP | portlet | sample | This plugin shows how to create JSP portlets in Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-lar-portlet | Sample LAR | portlet | sample | This plugin shows how to use the LAR (Liferay Archive) service from a portlet. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-laszlo-portlet | Sample Laszlo | portlet | sample | This plugin shows how to create Laszlo portlets in Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-laszlo-portlet | Sample Laszlo | portlet | sample | This plugin shows how to create Laszlo portlets in Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-localized-portlet | Sample Localized | portlet | sample | This plugin shows how to localize a portlet. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-orbeon-forms-portlet | Sample Orbeon Forms | portlet | | This plugin allows users to easily build web forms. | | http://www.liferay.com | Orbeon, Inc. | LGPL |
| sample-orbeon-forms-portlet | Sample Orbeon Forms | portlet | | This plugin allows users to easily build web forms. | | http://www.liferay.com | Orbeon, Inc. | LGPL |
| sample-permissions-portlet | Sample Permissions | portlet | sample | This plugin shows how to use the permission service from a portlet. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-php-portlet | Sample PHP | portlet | sample | This plugin shows how to create PHP portlets in Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-portal-client-portlet | Sample Portal Client | portlet | sample | This plugin shows how to use the portal-client.jar to access Liferay's services using SOAP. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-portal-service-portlet | Sample Portal Service | portlet | sample | This plugin shows how to use Liferay's services throught regular Java calls. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-python-portlet | Sample Python | portlet | sample | This plugin shows how to create Python portlets in Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-ruby-portlet | Sample Ruby | portlet | sample | This plugin portlet shows how to create Ruby portlets in Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-seam-portlet | Sample Seam | portlet | sample | This plugin shows how to use JBoss Seam within Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-search-container-portlet | Sample Search Container | portlet | sample | This plugin demonstrates how to use the liferay-ui:search-container JSP tags in Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-service-builder-portlet | Sample Service Builder | portlet | sample | This plugin shows how to use Liferay's Service Builder in a hot deployable portlet. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-sign-in-portlet | Sample Sign In | portlet | sample | This plugin shows how to create a sign in portlet in Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-spring-portlet | Sample Spring | portlet | sample | This plugin shows how to use Spring in Liferay. | | http://www.liferay.com | SpringSource, Inc. | Apache |
| sample-spring-portlet | Sample Spring | portlet | sample | This plugin shows how to use Spring in Liferay. | | http://www.liferay.com | SpringSource, Inc. | Apache |
| sample-struts-liferay-portlet | Sample Struts Liferay | portlet | sample | This plugin shows how to use Liferay's Struts Bridge. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-struts-portlet | Sample Struts | portlet | sample | This plugin shows how to use the Apache Struts Bridge with Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-tapestry-portlet | Sample Tapestry | portlet | sample | This plugin shows how to use Tapestry in Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-test-portlet | Sample Test | portlet | sample | This plugin shows how to develop a simple portlet in Liferay. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-ui-taglibs-portlet | Sample UI Taglibs | portlet | sample | This plugin shows how to use Liferay's UI taglibs in a portlet. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-wap-portlet | Sample WAP | portlet | sample | This plugin contains several portlets for WAP clients. | | http://www.liferay.com | Liferay, Inc. | MIT |
| shindig-portlet | Shindig Gadget Portlet | portlet | gadget opensocial shindig | This is a Gadget portlet build on the Shindig platform. | | http://www.liferay.com | Liferay, Inc. | MIT |
| sshterm-portlet | SSHTerm | portlet | | | | http://www.sshtools.com | 3SP, Ltd. | GPL |
| sshvnc-portlet | SSHVnc | portlet | | | | http://www.sshtools.com | 3SP, Ltd. | GPL |
| sun-bookmark-portlet | Bookmark | portlet | sun | This is the Sun Bookmark plugin. Released April 22, 2008. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-bookmark-portlet | Bookmark | portlet | sun | This is the Sun Bookmark plugin. Released April 22, 2008. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-elluminate-portlet | Elluminate | portlet | sun | This is the Sun Elluminate plugin. Released May 21, 2007. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-elluminate-portlet | Elluminate | portlet | sun | This is the Sun Elluminate plugin. Released May 21, 2007. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-flickr-portlet | Flickr | portlet | sun | This is the Sun Flickr plugin. Released April 22, 2008. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-flickr-portlet | Flickr | portlet | sun | This is the Sun Flickr plugin. Released April 22, 2008. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-iframe-portlet | IFrame | portlet | sun | This is the Sun IFrame plugin. Released May 14, 2007. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-iframe-portlet | IFrame | portlet | sun | This is the Sun IFrame plugin. Released May 14, 2007. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-jsr286test1-portlet | jsr286test1portlet | portlet | sun | This portlet is used to test jsr-286 api that are not covered in TCK | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-jsr286test2-portlet | jsr286test2portlet | portlet | sun | This portlet is used to test jsr-286 api that are not covered in TCK | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-mashup-portlet | MashUp | portlet | sun | This is the Sun MashUp plugin. Released May 14, 2007. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-mashup-portlet | MashUp | portlet | sun | This is the Sun MashUp plugin. Released May 14, 2007. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-notepad-portlet | Notepad | portlet | sun | This is the Sun Notepad plugin. Released April 22, 2008. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-notepad-portlet | Notepad | portlet | sun | This is the Sun Notepad plugin. Released April 22, 2008. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-photoshow-ajax-portlet | PhotoShow Ajax | portlet | sun | This is the Sun PhotoShow Ajax plugin. Released May 14, 2007. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-photoshow-ajax-portlet | PhotoShow Ajax | portlet | sun | This is the Sun PhotoShow Ajax plugin. Released May 14, 2007. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-privacy-guard-portlet | Privacy Guard | portlet | sun | This is the Sun Privacy Guard plugin. Released Sep 24, 2007. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-privacy-guard-portlet | Privacy Guard | portlet | sun | This is the Sun Privacy Guard plugin. Released Sep 24, 2007. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-rss-portlet | RSS | portlet | sun | This is the Sun RSS plugin. Released April 22, 2008. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-rss-portlet | RSS | portlet | sun | This is the Sun RSS plugin. Released April 22, 2008. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-showtime-portlet | ShowTime Portlet | portlet | sun | This is the Sun ShowTime plugin. Released April 22, 2008. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-showtime-portlet | ShowTime Portlet | portlet | sun | This is the Sun ShowTime plugin. Released April 22, 2008. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-tour-ipc-portlet | Tour IPC Portlet | portlet | sun | This is the Sun Tour IPC plugin. Released April 22, 2008 | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-tour-ipc-portlet | Tour IPC Portlet | portlet | sun | This is the Sun Tour IPC plugin. Released April 22, 2008 | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-video-portlet | Video | portlet | sun | This is the Sun Video plugin. Released May 14, 2007. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-video-portlet | Video | portlet | sun | This is the Sun Video plugin. Released May 14, 2007. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-weather-portlet | Weather | portlet | sun | This is the Sun Weather plugin. Released May 14, 2007. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| sun-weather-portlet | Weather | portlet | sun | This is the Sun Weather plugin. Released May 14, 2007. | | https://portlet-repository.dev.java.net/public/Download.html | Sun Microsystems, Inc. | CDDL |
| tich-portlet | Today in Christian History | portlet | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| twitter-portlet | IP Geocoder | portlet | | This plugin provides integration with Twitter. Every tweet is logged as an activity. | | http://www.liferay.com | Liferay, Inc. | MIT |
| weather-portlet | Weather | portlet | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| webcam-portlet | Webcam | portlet | | | | http://www.liferay.com | Liferay, Inc. | GPL |
| westminstercatechism-portlet | Westminster Catechism | portlet | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| widget-consumer-portlet | Widget Consumer | portlet | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| wol-portlet | World of Liferay | portlet | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| workflow-portlet | Workflow | portlet | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| 08-gulona-theme | 08 Gulona | theme | | | | http://opensourcetemplates.org/template_info.php?id=104 | Studio7Designs | CCA |
| beautiful-day-theme | Beautiful Day | theme | | | | http://templates.arcsin.se | Viktor Persson | CCA |
| bitter-sweet-theme | Bitter Sweet | theme | | | | http://templates.arcsin.se | Arcsin | CCA |
| blue-leaves-theme | Blue Leaves | theme | | | | http://www.oswd.org/design/information/id/2527 | GrowlDesign | Public Domain |
| blue-pigment-theme | Blue Pigment | theme | | | | http://www.styleshout.com/free-templates.php | Styleshout | CCA |
| bright-pixel-theme | Bright Pixel | theme | | | | http://templates.arcsin.se | Arcsin | CCA |
| brochure-theme | Brochure | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| casino-theme | Casino | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| classic-padawan-theme | Classic Padawan | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| coffee-n-cream-theme | Coffee N Cream | theme | | | | http://templates.arcsin.se | Arcsin | CCA |
| colorus-theme | Colorus | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| crystalx-theme | Crystal X | theme | | | | http://www.oswd.org/design/information/id/3465 | Vit Dlouhy | Unknown |
| desktop-theme | Desktop | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| dirtylicious-theme | Dirtylicious | theme | | | | http://templates.arcsin.se | Viktor Persson | CCA |
| envision-theme | Envision | theme | | | | http://www.styleshout.com | Styleshout | CCA |
| facebook-theme | Facebook | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| foliage-theme | Foliage | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| highway-theme | Highway | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| igoogle-theme | iGoogle | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| indigo-theme | Indigo | theme | | | | http://templates.arcsin.se/ | Arcsin | CCA |
| liferay-jedi-theme | Liferay Jedi | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| liferay-noir-theme | Liferay Noir | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| murali-theme | Murali | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| natural-essence-theme | Natural Essence | theme | | | | http://templates.arcsin.se | Viktor Persson | CCA |
| nautica-05-theme | Nautica 05 | theme | | | | http://www.oswd.org/design/information/id/3126 | Studio7Designs | Public Domain |
| rock-blog-theme | Rock Blog | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| salome-art-theme | Salome Art | theme | | | | http://www.osskins.com/main/wordpress/free-wordpress-theme-salome-art/2008/06/16 | Mariah K.L | CCA |
| sample-div-based-theme | Sample Div Based | theme | | | | http://www.liferay.com | Mika Koivisto | MIT |
| sample-styled-advanced-theme | Sample Styled Advanced | theme | |
This is a sample styled theme with advanced configuration set in
liferay-look-and-feel.xml.
| | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-styled-minimal-theme | Sample Styled Minimal | theme | |
This is a sample styled theme with minimal configuration set in
liferay-look-and-feel.xml.
| | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-unstyled-theme | Sample Unstyled | theme | |
This is a sample unstyled theme with configuration set in
liferay-look-and-feel.xml.
| | http://www.liferay.com | Liferay, Inc. | MIT |
| sample-wap-theme | Sample WAP | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| section-508-theme | Section 508 | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| speedy-theme | Speedy | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| spirit-of-nature-theme | Spirit Of Nature | theme | | | | http://www.osskins.com/main/joomla-mambo/free-joomla-15-template-spirit-of-nature/2008/06/08 | ThemZa | Public Domain |
| street-style-theme | Street Style | theme | | | | http://templates.arcsin.se | Arcsin | CCA |
| summer-breeze-theme | Summer Breeze | theme | | | | http://templates.arcsin.se | Arcsin | CCA |
| supastar-theme | SupaStar | theme | | | | http://www.wpthemesfree.com/view.php?theme_id=2340 | Conquerer LLC | Public Domain |
| super-mario-bros-1-theme | Super Mario Bros 1 | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| super-mario-bros-2-theme | Super Mario Bros 2 | theme | | | | http://www.liferay.com | Liferay, Inc. | MIT |
| synergy-theme | WebSynergy | theme | | | | http://www.sun.com | Sun Microsystems, Inc. | CDDL |
| terrafirma-theme | TerraFirma | theme | | | | http://www.oswd.org/design/information/id/3557 | NodeThirtyThree | Public Domain |
| transparentia-theme | Transparentia | theme | | | | http://templates.arcsin.se | Arcsin | CCA |
| under-the-bridge-theme | Under the Bridge | theme | | | | http://www.csstemplateheaven.com | Dieter Schneider | Public Domain |
| zenlike-theme | ZenLike | theme | | | | http://www.oswd.org/design/information/id/3559 | NodeThirtyThree | CCA |
| cas-web | Central Authentication Service | web | | This is the Central Authentication Service plugin. | | http://www.liferay.com | Liferay, Inc. | BSD |
| iweb-web | iweb | web | | This is IWEB plugin. This plugin provides semantic capabilities for the communities. | | http://www.liferay.com | Liferay, Inc. | MIT |
| jbpm-web | jBPM | web | | This is the Business Process Management plugin. | | http://www.liferay.com | Liferay, Inc. | MIT |
| mule-web | Mule | web | | This is the Mule Enterprise Service Bus plugin. | | http://www.liferay.com | Liferay, Inc. | MIT |
| ruon-web | ruon | web | | This is RUON plugin. This provides presence and unified communication layer. | | http://www.liferay.com | Liferay, Inc. | MIT |
| saw-web | saw | web | | This is SAW plugin. This provides ability to switch to any workflow engine. | | http://www.liferay.com | Liferay, Inc. | MIT |
| servicemix-web | ServiceMix | web | | This is the Service Mix plugin. | | http://www.liferay.com | Liferay, Inc. | MIT |
| solr-web | Solr Search Engine | web | | This is the Solr Search Engine implementation. | | http://www.liferay.com | Liferay, Inc. | MIT |
| theme-loader-web | Theme Loader | web | | This is the Theme Loader plugin. | | http://www.liferay.com | Liferay, Inc. | MIT |


This is a Haskell test module file template. You can refer to the module under test with ${SUT_NAME}.


de.fhpotsdam.unfolding.data
Classes
Feature
GeoDataReader
GeoJSONReader
GeoRSSReader
GPXReader
MarkerFactory
MultiFeature
PointFeature
ShapeFeature
Enums
Feature.FeatureType


Singer Iggy Azalea reports jewellery worth US$366,000 stolen in burglary
NEW YORK, Nov 25 — Fancy singer Iggy Azalea and her rapper boyfriend Playboi Carti reported a burglar stole over US$366,000 (RM1.5 million) in jewellery from their Atlanta home, police said on Friday.
Iggy, 29, whose legal name is Amethyst Kelly, told police a thief carried off items ranging from diamond eternity band rings valued at US$70,000 to a US$57,000 Audemars Piquet diamond-encrusted gold watch and a diamond engagement ring, a police report said.
Kelly, who grew up in Australia and rose to fame after moving to the United States at age 16, told police she was alone in the basement of the rented Atlanta home on November 15 when she heard footsteps in the second-floor dining room.
It was a rainy night and she thought it was Playboi, 23, whose legal name is Jordan Carter, after she left the back door unlocked for him to come in.
On November 17 she and Carter called police after they realised a blue Goyard bag where they kept all their jewellery was gone.
Kelly told officers they reviewed video surveillance footage and saw a man came into the house through the back door two nights earlier at 9.51pm and leave eight minutes later with a bag in his hand.
Carter told police he thought the suspect had a gun and said he was wearing a dark mask and gloves, based on the video.
Carter said his stolen chains, bracelets, rings and watches were custom made and he was in touch with his insurance company to try to put a value on them. — Reuters


1.1. Install¶
1.1.1. Installation¶
We use Anaconda to install PySLGR.
If you do not have Anaconda installed, you can download it here
Download PySLGR from https://g62code.llan.ll.mit.edu/nmec/slgr.git (put external link here when I have it)
Copy the provided conda package (pyslgr<version>.tar.bz2) to your local system. Make sure you have the correct version for your operating system. We will refer to the location of this file as <pyslgr-pkg dir>.
Open the terminal and run:
conda install <pyslgr-pkg dir>/<pkg-name.tar.bz2>
where <pkg-name.tar.bz2> is the name of the file provided.
Warning
For windows users, if you are using command prompt the command will look like this:
conda install <pyslgr-pkg dir>\<pkg-name.tar.bz2>
See also
For details on how to build the package from the source code, see How to Build PySLGR.
1.1.2. Check Installation¶
Locate a sample script in the examples directory.
Run:
python <sample_script>
1.1.3. To Remove¶
Run:
conda remove --name <env-name> pyslgr
where <env-name> is the name of an existing environment.
To list all environments use:
conda info -env$


>
React-based Rendition Search
Query and Display Articles
Search
Topic
Start Year
End Year
Search
Results
Obama Gives Commencement
Save
Aliens Invade Paris
Save
Trump Steals Nuclear Codes
Save
Saved Articles
Giant Panda Rampages through NYC
Remove
Global Warming Is a Hoax
Remove


This website is designed to show key user groups the current design for teaching labs in the upcoming LSU Building.
How to use
Double-click to leave a note
Click and drag to move the camera
Use circles on the floor to move camera
Settings
Filter other visitors comments
Cycle through cameras
View/Delete your comments
Detailed Instructions:
You can explore the room by clicking/dragging your mouse around the screen.
This will allow you to view a 360 degree view of a single camera view.
To see the room from a different vantage point, either click on the circle on the floor, or press "View Next Camera" in the settings bar to cycle through the different preset views.
As you are looking around the room you may see something that you want to leave us a comment about.
This could be a positive aspect you like, a question you have, or something you think we should change/remove.
To leave us this note - double click on any element in the room.
A text box will appear, and you will be prompted to provide additional information about why you left that note for us.
At any point you can view a list of all of your notes, and the option to delete them in the Settings sidebar.
Finally, you can also view all of the previous notes provided by earlier visitors to the site, and filter by sentiment (positive, neutral, negative) or department.
Sign In
*required field
YOU CLICKED ON:
Rating:
Please elaborate on the rating you provided:
max comment length: 240 characters. To leave a more detailed comment, please contact<EMAIL_ADDRESS>Instructions:
Look around the room by clicking and dragging anywhere in the 3D scene.


any_image_view Class Template Reference
[Models]
#include <any_image_view.hpp>
Inheritance diagram for any_image_view:
List of all members.
Detailed Description
template<typename ImageViewTypes>
class boost::gil::any_image_view< ImageViewTypes >
Represents a run-time specified image view. Models HasDynamicXStepTypeConcept, HasDynamicYStepTypeConcept, Note that this class does NOT model ImageViewConcept.
CLASS any_image_view
Represents a view whose type (color space, layout, planar/interleaved organization, etc) can be specified at run time. It is the runtime equivalent of image_view . Some of the requirements of ImageViewConcept, such as the value_type typedef cannot be fulfilled, since the language does not allow runtime type specification. Other requirements, such as access to the pixels, would be inefficient to provide. Thus any_image_view does not fully model ImageViewConcept. However, many algorithms provide overloads taking runtime specified views and thus in many cases any_image_view can be used in places taking a view.
To perform an algorithm on any_image_view, put the algorithm in a function object and invoke it by calling apply_operation(runtime_view, algorithm_fn) ;
|
Public Types |
typedef any_image_view< typename
detail::views_get_const_t<
ImageViewTypes >::type > | const_t |
|
typedef std::ptrdiff_t | x_coord_t |
|
typedef std::ptrdiff_t | y_coord_t |
|
typedef point2< std::ptrdiff_t > | point_t |
Public Member Functions |
|
template<typename T> |
| | any_image_view (const T &obj) |
|
| any_image_view (const any_image_view &v) |
|
template<typename T> |
| any_image_view & | operator= (const T &obj) |
|
any_image_view & | operator= (const any_image_view &v) |
|
std::size_t | num_channels () const |
|
point_t | dimensions () const |
|
x_coord_t | width () const |
|
y_coord_t | height () const |
The documentation for this class was generated from the following file:
Generated on Thu Nov 8 21:53:24 2007 for Generic Image Library by
1.4.4
|


Talien:
Like I told you last time, go meet Stedmiel in Hunters Village, and ask him about the records of the story about soldiers who fought against Devil Beleth.


For this web application you should create a new folder within this project.
If you want you can use any js framework you feel comfortable to implement this task but its not required to use any.
The end result should be a finished webapplication.
Your job is to implement a web application which displays a list of todos.
Those todos should be loaded from following endpoint https://jsonplaceholder.typicode.com/todos
This Endpoint gives you a total of 200 Todo objects.
When your index.html is loaded the first 10 Todos should be displayed automatically.
There should be a element which enables the user to display more Todos (the next 10 Objects).
Every todo you get from this endpoint has an attribute "completed:"
, if this attribute is true this todo element should be marked as done
You could for example color completed Todos green or show an checkmark within those elements. Be creative ^^.
TIP: you can load all 200 todos on load and fill in the first 10. Its not a requirement to load only 10 todos at a time.
How you display the list of todos is completely up to you. It should definitely be user friendly as well as good designed.
Try to embed all common SEO (Search Engine Optimization) features you are familiar with.
Don't forget to comment your code.


Loading...
x
Server Selector:
Featured YouTuber:
Latest Update - 1.3.0: > Added Fall Theme > Added Heavy Sniper


Uses confirm_distinct
in an iterative fashion to determine the primary keys.
determine_distinct(df, ..., listviewer = TRUE)
| df | a data frame |
|---|---|
| ... | columns or a tidyselect specification. defaults to everything |
| listviewer | logical. defaults to TRUE to view output using the listviewer package |
list
The goal of this function is to automatically determine which columns uniquely identify the rows of a dataframe. The output is a printed description of the combination of columns that form unique identifiers at each level. At level 1, the function tests if individual columns are primary keys At level 2, the function tests n C 2 combinations of columns to see if they form primary keys. The final level is testing all columns at once.
For completely unique columns, they are recorded in level 1, but then dropped from the data frame to facilitate the determination of multi-column primary keys.
If the dataset contains duplicated rows, they are eliminated before proceeding.
sample_data1 %>% head#> # A tibble: 6 x 6 #> ID_COL1 ID_COL2 ID_COL3 VAL1 VAL2 VAL3 #> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> #> 1 2413 1034 1014 -0.0639 -1.16 -0.302 #> 2 2413 1034 1322 0.363 1.62 0.165 #> 3 2413 1034 2999 -0.00466 1.23 0.819 #> 4 2413 1034 3544 1.83 -2.58 -0.525 #> 5 2413 1034 9901 0.837 -0.442 -0.341 #> 6 2413 1122 1014 -0.894 -1.11 0.768## on level 1, each column is tested as a unique identifier. the VAL columns have no ## duplicates and hence qualify, even though they normally would be considered as IDs ## on level 3, combinations of 3 columns are tested. implying that ID_COL 1,2,3 form a unique key ## level 2 does not appear, implying that combinations of any 2 ID_COLs do not form a unique key sample_data1 %>% determine_distinct(listviewer = FALSE)#> $`LEVEL 3` #> [1] "ID_COL1, ID_COL2, ID_COL3" #> #> $`LEVEL 1` #> $`LEVEL 1`[[1]] #> [1] "VAL1" #> #> $`LEVEL 1`[[2]] #> [1] "VAL2" #> #> $`LEVEL 1`[[3]] #> [1] "VAL3" #> #>


[PyLadies Talk] Introduction to Machine Learning
This post is about the talk I gave in PyLadies Melbourne meetup on 20th Nov’17.
I gave a beginner introduction to Machine Learning, the common methods and evaluation metrics. Here is the PDF.
I have attached below the pdfs of ‘Knowledge Technologies’ subject lectures, projects and sample exam papers, which introduces the concepts of information retrieval, machine learning and data mining.
Lecture set 1- Subject Overview
Lecture set 2- String Search
Lecture set 3- Approximate String Search and Matching
Lecture set 4- Text Search
Lecture set 5- Web Search
Project 1- Back-transliteration of Persian names to English names: github
Lecture set 6- Introduction to Machine Learning
Lecture set 7- Introduction to Basic Probability
Lecture set 8- Data Mining
Lecture set 9- Classification
Lecture set 10- Decision Trees
Lecture set 11- Rule Based Classification and Random Forests
Lecture set 12- KNN and Support Vector Machines
Lecture set 13- Association Analysis
Lecture set 14- Clustering
Project 2- Sentiment Analysis on Tweets
I cannot provide the datasets for the projects, but the project specifications will give a brief idea and you can find similar datasets online :)