The app store specification is what provides HAX with it's raw data integration capabilities. It's a block of JSON that tells HAXeditor the rules by which it is to play by. A complete example is available in the h-a-x tag's demo
but we'll outline what the different parts of this JSON supports as well as one app in detail.
Keys and what they mean
- Apps
- A source of data either to upload or search. Apps supply the definition of how to connect to the remote data, search it, upload things to it.
- Blox
- A block of elements. Blox are a series of elements wrapped inside of a plate element. Blox can be modified in pieces but fundamentally the entire thing is one piece. A block can be moved up and down as an entire group.
- Stax
- A stack of elements is a series of HTML elements that are added into the DOM all at once. Think of these like a
- Autoloader
- A series of elements that are automatically to be loaded when HAX is setup.


Hello, bonjour! Code for Canada, in collaboration with the Canada Energy Regulator, are looking for participants to give us feedback and join workshops which will explore uses of a regulatory documents database, REGDOCS. Each workshop will take approximately 1 hour. You do not need to be familiar with this database to participate, we welcome anyone within Canada to apply!
These workshops will guide direction for increasing accessibility, discoverability, and participation within a publicly available database so that all residents, including landowners, scientists, students, and Indigenous communities, can fully participate in the national energy dialogue.
Workshops will be conducted remotely and in person based on your preferred method of communication. We are also seeking participants to test ideas. Please indicate what you prefer below, by clicking "I want to participate".
Compensation will be provided. The deadline to apply is October 7, 2019 at 1:00pm.
Code for Canada is a national nonprofit that connects government innovators with the tech and design community. Our programs enable governments to deliver better digital public services and empower communities to solve civic challenges using technology and design.
The Canada Energy Regulator is committed to protecting the privacy
rights of individuals.
Expand
The Canada Energy Regulator is committed to protecting the privacy rights of individuals.
The definition of “personal information” is any information, in any form, about an identifiable individual. Refer to section 3 of the Privacy Act for further details regarding personal information.
The personal information you provide will be used by the National Energy Board for research and development purposes; and is collected under the authority of the Financial Administration Act, and in accordance with the Communications Policy of the Government of Canada and is described in the Standard personal information banks (PSU 914 - Public Communications). Provision of your information is voluntary, and will not be used to make any administrative decisions about you.
Personal information is collected and used as described in the Treasury Board Secretariat’s Standard Personal Information Bank Outreach Activities (PSU 938)
Individuals have the right to file a complaint with the Privacy Commissioner of Canada regarding the department’s handling of their personal information.


S4 classes around infrastructure provided by the 'coda' and 'dclone' packages to make package development easy as a breeze with data cloning for hierarchical models.
| Version: | 0.3-1 |
| Depends: | R (≥ 2.15.0), dclone (≥ 2.0-0) |
| Imports: | coda, methods, stats4, lattice |
| Suggests: | MASS, parallel, rjags |
| Published: | 2016-03-12 |
| Author: | Peter Solymos |
| Maintainer: | Peter Solymos <solymos at ualberta.ca> |
| License: | GPL-2 |
| URL: | https://groups.google.com/forum/#!forum/dclone-users, http://datacloning.org |
| NeedsCompilation: | no |
| SystemRequirements: | JAGS (>= 3.0.0) |
| Materials: | ChangeLog |
| CRAN checks: | dcmle results |
| Reference manual: | dcmle.pdf |
| Package source: | dcmle_0.3-1.tar.gz |
| Windows binaries: | r-devel: dcmle_0.3-1.zip, r-release: dcmle_0.3-1.zip, r-oldrel: dcmle_0.3-1.zip |
| OS X binaries: | r-release: dcmle_0.3-1.tgz, r-oldrel: dcmle_0.3-1.tgz |
| Old sources: | dcmle archive |
| Reverse depends: | PVAClone, sharx |
| Reverse suggests: | detect |
Please use the canonical form https://CRAN.R-project.org/package=dcmle to link to this page.


Planarity¶
check_planarity (G[, counterexample]) |
Check if a graph is planar and return a counterexample or an embedding. |
-
class
PlanarEmbedding
(incoming_graph_data=None, **attr)[source]¶ Represents a planar graph with its planar embedding.
The planar embedding is given by a combinatorial embedding.
Neighbor ordering:
In comparison to a usual graph structure, the embedding also stores the order of all neighbors for every vertex. The order of the neighbors can be given in clockwise (cw) direction or counterclockwise (ccw) direction. This order is stored as edge attributes in the underlying directed graph. For the edge (u, v) the edge attribute ‘cw’ is set to the neighbor of u that follows immediately after v in clockwise direction.
In order for a PlanarEmbedding to be valid it must fulfill multiple conditions. It is possible to check if these conditions are fulfilled with the method
check_structure()
. The conditions are:- Edges must go in both directions (because the edge attributes differ)
- Every edge must have a ‘cw’ and ‘ccw’ attribute which corresponds to a correct planar embedding.
- A node with non zero degree must have a node attribute ‘first_nbr’.
As long as a PlanarEmbedding is invalid only the following methods should be called:
Even though the graph is a subclass of nx.DiGraph, it can still be used for algorithms that require undirected graphs, because the method
is_directed()
is overridden. This is possible, because a valid PlanarGraph must have edges in both directions.Half edges:
In methods like
add_half_edge_ccw
the term “half-edge” is used, which is a term that is used in doubly connected edge lists. It is used to emphasize that the edge is only in one direction and there exists another half-edge in the opposite direction. While conventional edges always have two faces (including outer face) next to them, it is possible to assign each half-edge exactly one face. For a half-edge (u, v) that is orientated such that u is below v then the face that belongs to (u, v) is to the right of this half-edge.Examples
Create an embedding of a star graph (compare
nx.star_graph(3)
):>>> G = nx.PlanarEmbedding() >>> G.add_half_edge_cw(0, 1, None) >>> G.add_half_edge_cw(0, 2, 1) >>> G.add_half_edge_cw(0, 3, 2) >>> G.add_half_edge_cw(1, 0, None) >>> G.add_half_edge_cw(2, 0, None) >>> G.add_half_edge_cw(3, 0, None)
Alternatively the same embedding can also be defined in counterclockwise orientation. The following results in exactly the same PlanarEmbedding:
>>> G = nx.PlanarEmbedding() >>> G.add_half_edge_ccw(0, 1, None) >>> G.add_half_edge_ccw(0, 3, 1) >>> G.add_half_edge_ccw(0, 2, 3) >>> G.add_half_edge_ccw(1, 0, None) >>> G.add_half_edge_ccw(2, 0, None) >>> G.add_half_edge_ccw(3, 0, None)
After creating a graph, it is possible to validate that the PlanarEmbedding object is correct:
>>> G.check_structure()
-
add_half_edge_ccw
(start_node, end_node, reference_neighbor)[source]¶ Adds a half-edge from start_node to end_node.
The half-edge is added counter clockwise next to the existing half-edge (start_node, reference_neighbor).
Parameters: - start_node (node) – Start node of inserted edge.
- end_node (node) – End node of inserted edge.
- reference_neighbor (node) – End node of reference edge.
Raises: nx.NetworkXException
– If the reference_neighbor does not exist.
-
add_half_edge_cw
(start_node, end_node, reference_neighbor)[source]¶ Adds a half-edge from start_node to end_node.
The half-edge is added clockwise next to the existing half-edge (start_node, reference_neighbor).
Parameters: - start_node (node) – Start node of inserted edge.
- end_node (node) – End node of inserted edge.
- reference_neighbor (node) – End node of reference edge.
Raises: nx.NetworkXException
– If the reference_neighbor does not exist.
-
add_half_edge_first
(start_node, end_node)[source]¶ The added half-edge is inserted at the first position in the order.
Parameters: - start_node (node)
- end_node (node)
-
check_structure
()[source]¶ Runs without exceptions if this object is valid.
Checks that the following properties are fulfilled:
- Edges go in both directions (because the edge attributes differ).
- Every edge has a ‘cw’ and ‘ccw’ attribute which corresponds to a correct planar embedding.
- A node with a degree larger than 0 has a node attribute ‘first_nbr’.
Running this method verifies that the underlying Graph must be planar.
Raises: nx.NetworkXException
– This exception is raised with a short explanation if the PlanarEmbedding is invalid.
-
connect_components
(v, w)[source]¶ Adds half-edges for (v, w) and (w, v) at some position.
This method should only be called if v and w are in different components, or it might break the embedding. This especially means that if
connect_components(v, w)
is called it is not allowed to callconnect_components(w, v)
afterwards. The neighbor orientations in both directions are all set correctly after the first call.Parameters: - v (node)
- w (node)
-
get_data
()[source]¶ Converts the adjacency structure into a better readable structure.
Returns: embedding – A dict mapping all nodes to a list of neighbors sorted in clockwise order. Return type: dict See also
-
is_directed
()[source]¶ A valid PlanarEmbedding is undirected.
All reverse edges are contained, i.e. for every existing half-edge (v, w) the half-edge in the opposite direction (w, v) is also contained.
-
neighbors_cw_order
(v)[source]¶ Generator for the neighbors of v in clockwise order.
Parameters: v (node) Yields: node
-
next_face_half_edge
(v, w)[source]¶ Returns the following half-edge left of a face.
Parameters: - v (node)
- w (node)
Returns: half-edge
Return type: tuple
-
set_data
(data)[source]¶ Inserts edges according to given sorted neighbor list.
The input format is the same as the output format of get_data().
Parameters: data (dict) – A dict mapping all nodes to a list of neighbors sorted in clockwise order. See also
-
traverse_face
(v, w, mark_half_edges=None)[source]¶ Returns nodes on the face that belong to the half-edge (v, w).
The face that is traversed lies to the right of the half-edge (in an orientation where v is below w).
Optionally it is possible to pass a set to which all encountered half edges are added. Before calling this method, this set must not include any half-edges that belong to the face.
Parameters: - v (node) – Start node of half-edge.
- w (node) – End node of half-edge.
- mark_half_edges (set, optional) – Set to which all encountered half-edges are added.
Returns: face – A list of nodes that lie on this face.
Return type: list


|
Robot
The embedded systems for UTRA's autonomous humanoid soccer-playing robot
|
Functions | |
| void | Dynamixel_SetID (Dynamixel_HandleTypeDef *hdynamixel, uint8_t ID) |
| Sets the ID (identification number) for the current motor. More... | |
| void | Dynamixel_SetBaudRate (Dynamixel_HandleTypeDef *hdynamixel, uint32_t baud) |
| Sets the baud rate of a particular motor. More... | |
| void | Dynamixel_SetReturnDelayTime (Dynamixel_HandleTypeDef *hdynamixel, uint16_t microSec) |
| Sets the time, in microseconds, that the motor should wait before returning a status packet. More... | |
| void | Dynamixel_SetCWAngleLimit (Dynamixel_HandleTypeDef *hdynamixel, float minAngle) |
| Sets the clockwise angle limit for the current motor. More... | |
| void | Dynamixel_SetCCWAngleLimit (Dynamixel_HandleTypeDef *hdynamixel, float maxAngle) |
| Sets the counter-clockwise angle limit for the current motor. More... | |
| void | Dynamixel_SetHighestVoltageLimit (Dynamixel_HandleTypeDef *hdynamixel, float highestVoltage) |
| Sets the highest operating voltage limit for the current motor. More... | |
| void | Dynamixel_SetLowestVoltageLimit (Dynamixel_HandleTypeDef *hdynamixel, float lowestVoltage) |
| Sets the lowest operating voltage limit for the current motor. More... | |
| void | Dynamixel_SetMaxTorque (Dynamixel_HandleTypeDef *hdynamixel, float maxTorque) |
| Sets the maximum torque limit for all motor operations. More... | |
| void | Dynamixel_SetStatusReturnLevel (Dynamixel_HandleTypeDef *hdynamixel, uint8_t status_data) |
| Sets the conditions under which a status packet will be returned. More... | |
| void | Dynamixel_SetAlarmLED (Dynamixel_HandleTypeDef *hdynamixel, uint8_t alarm_LED_data) |
| Sets the conditions under which the motor LED will light up. More... | |
| void | Dynamixel_SetAlarmShutdown (Dynamixel_HandleTypeDef *hdynamixel, uint8_t alarm_shutdown_data) |
| Sets the conditions under which the motor will turn off its torque. More... | |
| void | Dynamixel_TorqueEnable (Dynamixel_HandleTypeDef *hdynamixel, uint8_t isEnabled) |
| Enables or disables torque for current motor. More... | |
| void | Dynamixel_LEDEnable (Dynamixel_HandleTypeDef *hdynamixel, uint8_t isEnabled) |
| Toggles the motor LED. More... | |
| void | Dynamixel_SetGoalPosition (Dynamixel_HandleTypeDef *hdynamixel, float goalAngle) |
| Sets the goal position of the motor in RAM. More... | |
| void | Dynamixel_SetGoalVelocity (Dynamixel_HandleTypeDef *hdynamixel, float goalVelocity) |
| Sets the goal velocity of the motor in RAM. More... | |
| void | Dynamixel_SetGoalTorque (Dynamixel_HandleTypeDef *hdynamixel, float goalTorque) |
| Sets the torque limit for the motor in RAM. More... | |
| void | Dynamixel_LockEEPROM (Dynamixel_HandleTypeDef *hdynamixel) |
| Locks the EEPROM of the current motor until the next power cycle. More... | |
| void | Dynamixel_SetPunch (Dynamixel_HandleTypeDef *hdynamixel, float punch) |
| Sets a quantity proportional to the minimum current supplied to the motor during operation. More... | |
| void | Dynamixel_GetPosition (Dynamixel_HandleTypeDef *hdynamixel) |
| Reads the angular position of the motor in degrees. More... | |
| void | Dynamixel_GetVelocity (Dynamixel_HandleTypeDef *hdynamixel) |
| Reads the angular velocity of the motor in RPM. More... | |
| void | Dynamixel_GetLoad (Dynamixel_HandleTypeDef *hdynamixel) |
| Reads the "load", the percentage of the maximum torque the motor is exerting. More... | |
| float | Dynamixel_GetVoltage (Dynamixel_HandleTypeDef *hdynamixel) |
| Reads the motor supply voltage. More... | |
| uint8_t | Dynamixel_GetTemperature (Dynamixel_HandleTypeDef *hdynamixel) |
| Reads the internal motor temperature. More... | |
| bool | Dynamixel_IsRegistered (Dynamixel_HandleTypeDef *hdynamixel) |
| Used to tell if a command sent was written to motor registers. More... | |
| bool | Dynamixel_IsMoving (Dynamixel_HandleTypeDef *hdynamixel) |
| Indicates whether the motor is in motion. More... | |
| bool | Dynamixel_IsJointMode (Dynamixel_HandleTypeDef *hdynamixel) |
| Indicates whether the motor is operating in joint mode or wheel mode. More... | |
| void | Dynamixel_SetIOType (ioFlags_t type) |
| ioFlags_t | Dynamixel_GetIOType () |
| Gets the IO protocol setting for the library. More... | |
| void | Dynamixel_RegWrite (Dynamixel_HandleTypeDef *hdynamixel, uint8_t arrSize, uint8_t writeAddr, uint8_t param1, uint8_t param2) |
| Implementation of the REG WRITE instruction with 2 parameters. More... | |
| void | Dynamixel_Action (Dynamixel_HandleTypeDef *hdynamixel) |
| Implementation of the ACTION instruction. More... | |
| int8_t | Dynamixel_Ping (Dynamixel_HandleTypeDef *hdynamixel) |
| Implementation of the PING instruction. More... | |
| void | Dynamixel_Init (Dynamixel_HandleTypeDef *hdynamixel, uint8_t ID, UART_HandleTypeDef *UART_Handle, GPIO_TypeDef *DataDirPort, uint16_t DataDirPinNum, enum motorTypes_e motorType) |
| Initializes a motor handle. More... | |
| void | Dynamixel_Reset (Dynamixel_HandleTypeDef *hdynamixel) |
| Resets motor control table. More... | |
| void | Dynamixel_EnterWheelMode (Dynamixel_HandleTypeDef *hdynamixel, float goalVelocity) |
| Sets the control registers such that the rotational angle of the motor is not bounded. More... | |
| void | Dynamixel_EnterJointMode (Dynamixel_HandleTypeDef *hdynamixel) |
| Sets the control registers such that the rotational angle of the motor is constrained between the default values. More... | |
| void Dynamixel_Action | ( | Dynamixel_HandleTypeDef * | hdynamixel | ) |
Implementation of the ACTION instruction.
This triggers the instruction registered by the REG WRITE instruction. This way, time delays can be reduced for the concurrent motion of several motors
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
Definition at line 592 of file DynamixelProtocolV1_IO.c.
| void Dynamixel_EnterJointMode | ( | Dynamixel_HandleTypeDef * | hdynamixel | ) |
Sets the control registers such that the rotational angle of the motor is constrained between the default values.
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
Definition at line 1037 of file DynamixelProtocolV1.c.
| void Dynamixel_EnterWheelMode | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| float | goalVelocity | ||
| ) |
Sets the control registers such that the rotational angle of the motor is not bounded.
When the angle limits are both set to 0, then motor will attempt to rotate with maximum velocity. To prevent undesired behaviour, the goal velocity should be set right after calling this function
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| goalVelocity | the desired velocity in RPM to use when entering wheel mode |
Definition at line 1023 of file DynamixelProtocolV1.c.
| ioFlags_t Dynamixel_GetIOType | ( | ) |
Gets the IO protocol setting for the library.
Definition at line 410 of file DynamixelProtocolV1_IO.c.
| void Dynamixel_GetLoad | ( | Dynamixel_HandleTypeDef * | hdynamixel | ) |
Reads the "load", the percentage of the maximum torque the motor is exerting.
Reads addresses 0x28 and 0x29 in the motor RAM to see what the current load is. Load is a percentage of the maximum torque. A value of 0-1023 gets translated into a counterclockwise load (positive), and a value of 1024-2047 gets translated into a clockwise load (negative). The results are written to hdynamixel -> _lastLoad
, and hdynamixel -> _lastReadIsValid
is set if the checksum is verified, and is cleared otherwise
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
Definition at line 869 of file DynamixelProtocolV1.c.
| void Dynamixel_GetPosition | ( | Dynamixel_HandleTypeDef * | hdynamixel | ) |
Reads the angular position of the motor in degrees.
Reads addresses 0x24 and 0x25 in the motors RAM to see what the current position of the motor is. The results are written to hdynamixel -> _lastPosition
, and hdynamixel -> _lastReadIsValid
is set if the checksum is verified, and is cleared otherwise
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
Definition at line 799 of file DynamixelProtocolV1.c.
| uint8_t Dynamixel_GetTemperature | ( | Dynamixel_HandleTypeDef * | hdynamixel | ) |
Reads the internal motor temperature.
Reads address 0x2B in the motor RAM to see what the current temperature is inside the motor. Results are in degrees Celsius
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
Definition at line 921 of file DynamixelProtocolV1.c.
| void Dynamixel_GetVelocity | ( | Dynamixel_HandleTypeDef * | hdynamixel | ) |
Reads the angular velocity of the motor in RPM.
Reads addresses 0x26 and 0x27 in the motor RAM to see what the current velocity of the motor is. The results are written to hdynamixel -> _lastVelocity
, and hdynamixel -> _lastReadIsValid
is set if the checksum is verified, and is cleared otherwise
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
Definition at line 828 of file DynamixelProtocolV1.c.
| float Dynamixel_GetVoltage | ( | Dynamixel_HandleTypeDef * | hdynamixel | ) |
Reads the motor supply voltage.
Reads address 0x2A in the motor RAM to see what the current voltage is. The value retrieved from motor is 10 times the actual voltage. The results are written to hdynamixel -> _lastLoad
, and hdynamixel -> _lastReadIsValid
is set if the checksum is verified, and is cleared otherwise
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
Definition at line 903 of file DynamixelProtocolV1.c.
| void Dynamixel_Init | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| uint8_t | ID, | ||
| UART_HandleTypeDef * | UART_Handle, | ||
| GPIO_TypeDef * | DataDirPort, | ||
| uint16_t | DataDirPinNum, | ||
| enum motorTypes_e | motorType | ||
| ) |
Initializes a motor handle.
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| ID | the ID the motor has. Note that this function will not set the ID in case there are multiple actuators on the same bus |
| UART_Handle | the handle to the UART that will be used to communicate with this motor |
| DataDirPort | the pointer to the port that the data direction pin for the motor is on |
| DataDirPinNum | the number corresponding to the pin that controls data direction (a power of two, e.g. 2^0 for pin 0, 2^15 for pin 15) |
| motorType | indicates whether motor is AX12A or MX28 |
Definition at line 657 of file DynamixelProtocolV1_IO.c.
| bool Dynamixel_IsJointMode | ( | Dynamixel_HandleTypeDef * | hdynamixel | ) |
Indicates whether the motor is operating in joint mode or wheel mode.
Reads the CW (addr: 0x06) and CCW (addr: 0x08) angle limits. If both are 0, motor is in wheel mode and can spin indefinitely. Otherwise, motor is in joint mode and has angle limits set
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
Definition at line 967 of file DynamixelProtocolV1.c.
| bool Dynamixel_IsMoving | ( | Dynamixel_HandleTypeDef * | hdynamixel | ) |
Indicates whether the motor is in motion.
Reads the 0x2E address in motor RAM to see if motor is moving.
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
Definition at line 951 of file DynamixelProtocolV1.c.
| bool Dynamixel_IsRegistered | ( | Dynamixel_HandleTypeDef * | hdynamixel | ) |
Used to tell if a command sent was written to motor registers.
Can also be used to see if the instruction in the motor register has been executed. If the ACTION command is executed, the value read is changed to 0
Read address: 0x2C
Default value: 0x00
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
Definition at line 939 of file DynamixelProtocolV1.c.
| void Dynamixel_LEDEnable | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| uint8_t | isEnabled | ||
| ) |
Toggles the motor LED.
Instruction register address: 0x19 (RAM)
Default value: 0x00
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| isEnabled |
|
Definition at line 551 of file DynamixelProtocolV1.c.
| void Dynamixel_LockEEPROM | ( | Dynamixel_HandleTypeDef * | hdynamixel | ) |
Locks the EEPROM of the current motor until the next power cycle.
Instruction register address: 0x2F (RAM)
Default value: 0x00
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
Definition at line 715 of file DynamixelProtocolV1.c.
| int8_t Dynamixel_Ping | ( | Dynamixel_HandleTypeDef * | hdynamixel | ) |
Implementation of the PING instruction.
Used only for returning a status packet or checking the existence of a motor with a specified ID. Does not command any operations
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
Definition at line 616 of file DynamixelProtocolV1_IO.c.
| void Dynamixel_RegWrite | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| uint8_t | arrSize, | ||
| uint8_t | writeAddr, | ||
| uint8_t | param1, | ||
| uint8_t | param2 | ||
| ) |
Implementation of the REG WRITE instruction with 2 parameters.
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| arrSize | the size of the array to be written (either 1 or 2) |
| writeAddr | the starting address for where the data is to be written |
| param1 | the first parameter |
| param2 | the second parameter |
Definition at line 553 of file DynamixelProtocolV1_IO.c.
| void Dynamixel_Reset | ( | Dynamixel_HandleTypeDef * | hdynamixel | ) |
Resets motor control table.
Resets the control table values of the motor to the Factory Default Value settings. Note that post-reset, motor ID will be 1. Thus, if several motors with ID 1 are connected on the same bus, there will not be a way to assign them unique IDs without first disconnecting them. Need to wait around 500 ms before motor becomes valid again
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
Definition at line 683 of file DynamixelProtocolV1_IO.c.
| void Dynamixel_SetAlarmLED | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| uint8_t | alarm_LED_data | ||
| ) |
Sets the conditions under which the motor LED will light up.
Register bits may be set simultaneously.
Register address: 0x11 (EEPROM) Default value: 0x24 (0b00100100)
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| alarm_LED_data | the bits indicate the following:
|
Definition at line 477 of file DynamixelProtocolV1.c.
| void Dynamixel_SetAlarmShutdown | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| uint8_t | alarm_shutdown_data | ||
| ) |
Sets the conditions under which the motor will turn off its torque.
Register bits may be set simultaneously
Register address: 0x12 (EEPROM) Default value: 0x24 (0b00100100)
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| alarm_shutdown_data | the bits indicate the following:
|
Definition at line 509 of file DynamixelProtocolV1.c.
| void Dynamixel_SetBaudRate | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| uint32_t | baud | ||
| ) |
Sets the baud rate of a particular motor.
Register address is 0x04 in motor EEPROM
Instruction register address: 0x04 (EEPROM) Default value: 0x01
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| baud | the baud rate. Arguments in range [7844, 1000000] are valid |
Definition at line 169 of file DynamixelProtocolV1.c.
| void Dynamixel_SetCCWAngleLimit | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| float | maxAngle | ||
| ) |
Sets the counter-clockwise angle limit for the current motor.
If maxAngle for CCW angle limit is 0 AND minAngle for CW angle limit is 0, then motor is in wheel mode where it can continuously rotate. Otherwise, motor is in joint mode where its motion is constrained between the set bounds.
Register 0x08 in EEPROM for low byte, 0x09 in EEPROM for high byte
Instruction register address: 0x08 (EEPROM)
Default value: 0x03FF
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| maxAngle | the maximum angle for all motor operations. Arguments between 0 and 300 are valid |
Definition at line 303 of file DynamixelProtocolV1.c.
| void Dynamixel_SetCWAngleLimit | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| float | minAngle | ||
| ) |
Sets the clockwise angle limit for the current motor.
If maxAngle for CCW angle limit is 0 AND minAngle for CW angle limit is 0, then motor is in wheel mode where it can continuously rotate. Otherwise, motor is in joint mode where its motion is constrained between the set bounds.
Register 0x06 in EEPROM for low byte, 0x07 in EEPROM for high byte
Instruction register address: 0x06 (EEPROM)
Default value: 0x0000
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| minAngle | the minimum angle for all motor operations. Arguments between 0 and 300 are valid |
Definition at line 261 of file DynamixelProtocolV1.c.
| void Dynamixel_SetGoalPosition | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| float | goalAngle | ||
| ) |
Sets the goal position of the motor in RAM.
Takes a double between 0 and 300, encodes this position in an upper and low hex byte pair (with a maximum of 1023 as defined in the AX-12 user manual), and sends this information (along with requisites) over UART. Low byte is 0x1E in motor RAM, high byte is 0x1F in motor RAM.
Instruction register address: 0x1E (RAM)
Default value: None
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| goalAngle | the desired angular position. Arguments between 0 and 300 are valid. Note that 150 corresponds to the middle position |
Definition at line 579 of file DynamixelProtocolV1.c.
| void Dynamixel_SetGoalTorque | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| float | goalTorque | ||
| ) |
Sets the torque limit for the motor in RAM.
The initial value is taken from 0x0E and 0x0F (max torque in EEPROM)
Low byte is 0x22 in motor RAM, high byte is 0x23 in motor RAM.
Instruction register address: 0x22 (RAM)
Default value: ADDR14 (low byte) and ADDR15 (high byte)
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| goalTorque | the percentage of the maximum possible torque (max: 100). Gets converted into a 10-bit number |
Definition at line 694 of file DynamixelProtocolV1.c.
| void Dynamixel_SetGoalVelocity | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| float | goalVelocity | ||
| ) |
Sets the goal velocity of the motor in RAM.
Low byte is 0x20 in motor RAM, high byte is 0x21 in motor RAM
Instruction register address: 0x20 (RAM) Default value: None
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| goalVelocity | the goal velocity in RPM. Arguments of 0-114 are valid when in joint mode. 0 corresponds to MAX motion in joint mode, and minimum motion in wheel mode. In wheel mode, negative arguments correspond to CW rotation |
Definition at line 626 of file DynamixelProtocolV1.c.
| void Dynamixel_SetHighestVoltageLimit | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| float | highestVoltage | ||
| ) |
Sets the highest operating voltage limit for the current motor.
Instruction register address: 0x0C (EEPROM)
Default value: 140 (0xBE)
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| highestVoltage | the highest operating voltage in volts |
Definition at line 345 of file DynamixelProtocolV1.c.
| void Dynamixel_SetID | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| uint8_t | ID | ||
| ) |
Sets the ID (identification number) for the current motor.
Note that the instruction will be broadcasted using the current ID. As such, if the ID is not known, the motor ID should be initialized to the broadcast ID (0xFE) in the Dynamixel_Init function
Instruction register address: 0x03 (EEPROM) Default value: 1
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| ID | the number between 0 and 252 or equal to 254 to identify the motor. If 0xFE (254), any messages broadcasted to that ID will be broadcasted to all motors |
Definition at line 143 of file DynamixelProtocolV1.c.
| void Dynamixel_SetLowestVoltageLimit | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| float | lowestVoltage | ||
| ) |
Sets the lowest operating voltage limit for the current motor.
Instruction register address: 0x0D (EEPROM)
Default value: 60 (0x3C)
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| lowestVoltage | the lowest operating voltage in volts |
Definition at line 377 of file DynamixelProtocolV1.c.
| void Dynamixel_SetMaxTorque | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| float | maxTorque | ||
| ) |
Sets the maximum torque limit for all motor operations.
Low byte is addr 0x0E in motor RAM, high byte is addr 0x0F in motor RAM
Register address: 0x0E (EEPROM)
Default value: 0x3FF
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| maxTorque | the maximum torque as a percentage (max: 100). Gets converted to 10-bit number |
Definition at line 408 of file DynamixelProtocolV1.c.
| void Dynamixel_SetPunch | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| float | punch | ||
| ) |
Sets a quantity proportional to the minimum current supplied to the motor during operation.
Units are not specified in the datasheet, and therefore this function is not entirely useful without sufficient testing
Low byte at address 0x30 and high byte at address 0x31
Instruction register address: 0x30
Default value: 0x0020 (maximum: 0x3FF)
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| punch | for now, arguments in range [0, 1023] are valid |
Definition at line 737 of file DynamixelProtocolV1.c.
| void Dynamixel_SetReturnDelayTime | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| uint16_t | microSec | ||
| ) |
Sets the time, in microseconds, that the motor should wait before returning a status packet.
Instruction register address: 0x05(EEPROM)
Default value: 250 (0xFA)
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| microSec | the time in microseconds to delay. Arguments in range [2, 508] are valid. Default: 500 |
Definition at line 228 of file DynamixelProtocolV1.c.
| void Dynamixel_SetStatusReturnLevel | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| uint8_t | status_data | ||
| ) |
Sets the conditions under which a status packet will be returned.
Register address: 0x10 (EEPROM)
Default value: 0x02
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| status_data |
|
Definition at line 440 of file DynamixelProtocolV1.c.
| void Dynamixel_TorqueEnable | ( | Dynamixel_HandleTypeDef * | hdynamixel, |
| uint8_t | isEnabled | ||
| ) |
Enables or disables torque for current motor.
Instruction register address: 0x18 (RAM)
Default value: 0x00
| hdynamixel | pointer to a Dynamixel_HandleTypeDef structure that contains the configuration information for the motor |
| isEnabled |
|
Definition at line 528 of file DynamixelProtocolV1.c.


Class: Aws::IoTSiteWise::Types::CreatePortalRequest
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
|
Class Chain:
self,
Struct
|
|
|
Instance Chain:
self,
::Aws::Structure ,
Struct
|
|
| Inherits: |
Struct
|
| Defined in: | gems/aws-sdk-iotsitewise/lib/aws-sdk-iotsitewise/types.rb |
Constant Summary
Instance Attribute Summary
-
#alarms ⇒ Types::Alarms
rw
Contains the configuration information of an alarm created in an
::Aws::IoT
SiteWise Monitor portal. -
#client_token ⇒ String
rw
A unique case-sensitive identifier that you can provide to ensure the idempotency of the request.
-
#notification_sender_email ⇒ String
rw
The email address that sends alarm notifications.
-
#portal_auth_mode ⇒ String
rw
The service to use to authenticate users to the portal.
-
#portal_contact_email ⇒ String
rw
The Amazon Web Services administrator's contact email address.
-
#portal_description ⇒ String
rw
A description for the portal.
-
#portal_logo_image_file ⇒ Types::ImageFile
rw
A logo image to display in the portal.
-
#portal_name ⇒ String
rw
A friendly name for the portal.
-
#role_arn ⇒ String
rw
The [ARN][1] of a service role that allows the portal's users to access your
::Aws::IoT
SiteWise resources on your behalf. -
#tags ⇒ Hash<String,String>
rw
A list of key-value pairs that contain metadata for the portal.
Instance Method Summary
::Aws::Structure
- Included
| #to_hash | Alias for Structure#to_h. |
Instance Attribute Details
#alarms ⇒ Types::Alarms (rw)
Contains the configuration information of an alarm created in an ::Aws::IoT
SiteWise Monitor portal. You can use the alarm to monitor an asset
property and get notified when the asset property value is outside a
specified range. For more information, see Monitoring with
alarms in the IoT SiteWise Application Guide.
# File 'gems/aws-sdk-iotsitewise/lib/aws-sdk-iotsitewise/types.rb', line 2377
class CreatePortalRequest < Struct.new( :portal_name, :portal_description, :portal_contact_email, :client_token, :portal_logo_image_file, :role_arn, :, :portal_auth_mode, :notification_sender_email, :alarms) SENSITIVE = [] include Aws::Structure end
#client_token ⇒ String
(rw)
A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required.
A suitable default value is auto-generated. You should normally not need to pass this option.
# File 'gems/aws-sdk-iotsitewise/lib/aws-sdk-iotsitewise/types.rb', line 2377
class CreatePortalRequest < Struct.new( :portal_name, :portal_description, :portal_contact_email, :client_token, :portal_logo_image_file, :role_arn, :, :portal_auth_mode, :notification_sender_email, :alarms) SENSITIVE = [] include Aws::Structure end
#notification_sender_email ⇒ String
(rw)
The email address that sends alarm notifications.
If you use the IoT Events managed ::Aws::Lambda
function to manage
your emails, you must verify the sender email address in Amazon
SES.
# File 'gems/aws-sdk-iotsitewise/lib/aws-sdk-iotsitewise/types.rb', line 2377
class CreatePortalRequest < Struct.new( :portal_name, :portal_description, :portal_contact_email, :client_token, :portal_logo_image_file, :role_arn, :, :portal_auth_mode, :notification_sender_email, :alarms) SENSITIVE = [] include Aws::Structure end
#portal_auth_mode ⇒ String
(rw)
The service to use to authenticate users to the portal. Choose from the following options:
SSO
– The portal uses::Aws::IAM
Identity Center (successor to Single Sign-On) to authenticate users and manage user permissions. Before you can create a portal that uses IAM Identity Center, you must enable IAM Identity Center. For more information, see Enabling IAM Identity Center in the IoT SiteWise User Guide. This option is only available in Amazon Web Services Regions other than the China Regions.IAM
– The portal usesIdentity
and Access Management to authenticate users and manage user permissions.
You can't change this value after you create a portal.
Default: SSO
# File 'gems/aws-sdk-iotsitewise/lib/aws-sdk-iotsitewise/types.rb', line 2377
class CreatePortalRequest < Struct.new( :portal_name, :portal_description, :portal_contact_email, :client_token, :portal_logo_image_file, :role_arn, :, :portal_auth_mode, :notification_sender_email, :alarms) SENSITIVE = [] include Aws::Structure end
#portal_contact_email ⇒ String
(rw)
The Amazon Web Services administrator's contact email address.
# File 'gems/aws-sdk-iotsitewise/lib/aws-sdk-iotsitewise/types.rb', line 2377
class CreatePortalRequest < Struct.new( :portal_name, :portal_description, :portal_contact_email, :client_token, :portal_logo_image_file, :role_arn, :, :portal_auth_mode, :notification_sender_email, :alarms) SENSITIVE = [] include Aws::Structure end
#portal_description ⇒ String
(rw)
A description for the portal.
# File 'gems/aws-sdk-iotsitewise/lib/aws-sdk-iotsitewise/types.rb', line 2377
class CreatePortalRequest < Struct.new( :portal_name, :portal_description, :portal_contact_email, :client_token, :portal_logo_image_file, :role_arn, :, :portal_auth_mode, :notification_sender_email, :alarms) SENSITIVE = [] include Aws::Structure end
#portal_logo_image_file ⇒ Types::ImageFile (rw)
A logo image to display in the portal. Upload a square, high-resolution image. The image is displayed on a dark background.
# File 'gems/aws-sdk-iotsitewise/lib/aws-sdk-iotsitewise/types.rb', line 2377
class CreatePortalRequest < Struct.new( :portal_name, :portal_description, :portal_contact_email, :client_token, :portal_logo_image_file, :role_arn, :, :portal_auth_mode, :notification_sender_email, :alarms) SENSITIVE = [] include Aws::Structure end
#portal_name ⇒ String
(rw)
A friendly name for the portal.
# File 'gems/aws-sdk-iotsitewise/lib/aws-sdk-iotsitewise/types.rb', line 2377
class CreatePortalRequest < Struct.new( :portal_name, :portal_description, :portal_contact_email, :client_token, :portal_logo_image_file, :role_arn, :, :portal_auth_mode, :notification_sender_email, :alarms) SENSITIVE = [] include Aws::Structure end
#role_arn ⇒ String
(rw)
The ARN of a service role that allows the portal's users to
access your ::Aws::IoT
SiteWise resources on your behalf. For more
information, see Using service roles for ::Aws::IoT
SiteWise Monitor
in the IoT SiteWise User Guide.
# File 'gems/aws-sdk-iotsitewise/lib/aws-sdk-iotsitewise/types.rb', line 2377
class CreatePortalRequest < Struct.new( :portal_name, :portal_description, :portal_contact_email, :client_token, :portal_logo_image_file, :role_arn, :, :portal_auth_mode, :notification_sender_email, :alarms) SENSITIVE = [] include Aws::Structure end
#tags ⇒ Hash
<String
,String
> (rw)
A list of key-value pairs that contain metadata for the portal. For
more information, see Tagging your ::Aws::IoT
SiteWise resources in
the IoT SiteWise User Guide.
# File 'gems/aws-sdk-iotsitewise/lib/aws-sdk-iotsitewise/types.rb', line 2377
class CreatePortalRequest < Struct.new( :portal_name, :portal_description, :portal_contact_email, :client_token, :portal_logo_image_file, :role_arn, :, :portal_auth_mode, :notification_sender_email, :alarms) SENSITIVE = [] include Aws::Structure end


Cannellini Bean Salad
- ⏲ Prep time: 5 min
- 🍳 Cook time: 10 min
- 🍽 Servings: 2
Ingredients
- 1 can Cannellini beans, drained and rinsed
- 2 tbsp minced garlic
- ½ onion
- 1 tsp smoked paprika
- ½ tsp ground cumin
- 1 15 oz can diced tomatoes
- 1 tbsp parsley flakes
- Prosciutto
- Arugula
Directions
- Sauté garlic and onions in olive oil until onions are translucent.
- Add diced tomatoes, seasonings, and salt and pepper to taste. Simmer for 3 minutes.
- Add the beans, season to taste, mix until combined, and simmer for an additional 2 minutes.
- Serve over arugula and top with bits of prosciutto.
Contribution
Recipe tags:
beans
italian
salad


Welcome to Towers of Hanoi
A game made by James. Hopefully it works
Click to Start Game
Move Block
"Solve"


jQuery Validation Plugin
Demo
Login Form (Enter "foobar" as password)
Username
Password
Please login!
Programmatically reset above form!
Backend file:
form.phps
Back to main page


Welcome to the Careers section at Jedds Tree Care. Here, you'll not only find information on current job openings, but we invite you to learn about our company as well its values, history, what we stand for, our divisions and what it's like to work here. If you believe that you would be a good fit for employment with the Rainbow Companies, we encourage you to complete and submit an online application for employment. Career Opportunities As an employee owned company, Jedds Tree Care offers a comprehensive Employee Stock Ownership Plan (ESOP), benefits, and ample opportunities for employee advancement and personal growth. Jedds Tree Company is an Equal Opportunity Employer.


It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.
The first message sent on the Moscow-Washington hotline on August 30, 1963 was the test phrase "The quick brown fox jumped over the lazy dog's back<PHONE_NUMBER>"
The earliest appearance of the phrase is from The Boston Journal in an article titled "Current Notes" in the February 10, 1885 morning edition , the phrase is mentioned as a good practice for writing students: "A favorite copy set by writing teachers for their pupils is the following beacause it contains every letter of the alphabet: 'A quick fox jumps over the lazy dog."
The first message sent on the Moscow-Washington hotline on August 30, 1963 was the test phrase "The quick brown fox jumped over the lazy dog's back<PHONE_NUMBER>"


Notebooks
Story: Karosses must not be beaten upon the ground, for fear of bad consequences
Karosses must not be beaten upon the ground, for fear of bad consequences
Title
Karosses must not be beaten upon the ground, for fear of bad consequences
Collection
Summary
What the Grass Bushmen do when angry. Karosses not to be beaten upon the ground, for fear of causing illness, and for fear of sorcerers. A way in which the latter cause illness is here mentioned. In the Katkop dialect, by Díä!kwãin (LV.-20. 5537-5556). Karosses are 'magic things' which must be respected. Sorcerers watch how people treat magic things and can kill those who do not show respect.
Comments
1) p.5537 opp: Dia!kwain was told this story by his mother (≠kamme-an), 2) p.5554v: !kho is like a blue mist which resembles fire smoke (see also The !kh'o: a blue mist which resembles smoke), 3) This story is found in Book V-20
Contributors
Date
17 November 1875 (started)
Categories
Custom and daily life, Artefact and dress, Portention
Keywords
sorcerers (and the beating of the kaross) , sorcerers (watch how people treat and respect magic things) , sorcerers (fearing and respecting) , sorcerers (take people away or kill them) , sorcerers (and the man of illness) , sorcerers (make people ill) , sorcerers (punish those who disrespect magic things) , sorcerers (kill with magic or sorcery) , magic things (and a dust or cloud that kills) , magic things (and a cloud of things that resemble flies) , magic things (prohibitions regarding) , magic things (must not be beaten on the ground) , magic things (respecting) , magic things (the consequences of disrespecting) , magic things (karosses are) , magic things (and cursing people or wishing death upon them) , magic things (killing with) , magic things (revenge using) , magic things (and spells) , magic things (and illness) , magic things (and misfortune) , magic things (their misuse) , death (due to a curse) , death (wishing it upon others) , death (due to lack of sense) , death (a dust that causes) , death (and magic) , death (and revenge) , death (and illness) , death (caused by sorcery) , death (and the bad consequences of beating the kaross on the ground) , illness (making) , illness (unloosing) , illness (the place where it is kept) , illness (the man of) , illness (a dust that kills) , illness (sending) , illness (and a cloud of things resembling flies) , illness (and cursing people) , illness (bringing of) , illness (due to sorcery) , illness (and spells) , illness (and curses) , illness (and the bad consequences of beating the kaross on the ground) , kaross (is a magic thing) , kaross (prohibitions relating to) , kaross (beating it on the ground) , kaross (avoidance behaviour relating to) , kaross (the bad consequences of beating it on the ground) , kaross (and making magic dust) , Grass Bushmen (what they do when angry) , Grass Bushmen (who have no sense) , Grass Bushmen (their curses) , Grass Bushmen (use magic things) , Grass Bushmen (how they take revenge on others) , Grass Bushmen (and the bad consequences of beating the kaross on the ground) , dust (is not a good or friendly thing) , dust (and sorcery) , dust (causes misfortune and illness) , dust (kills people) , dust (and beating karosses on the ground) , respect (sorcerers watch how people treat magic things) , respect (for magic things) , respect (the bad consequences of beating the kaross on the ground) , curses (of the Grass Bushmen when angry) , curses (and the bad consequences of beating the kaross on the ground) , curses (cursing people or wishing death upon them) , fly (a cloud of things that resemble flies, which cause illness) , fly (and the bad consequences of beating the kaross on the ground)
Story Pages
5537-5556


Title text you can edit / delete!
TL
vs
G2
GAME
PAUSE
EXTRA
01:20
Manual Controls
?
Start Timer ▶
Auto Controls
!
Left Team Auto
Right Team Auto
Timer Auto


Modularity, Objects, and State
(Even while it changes, it stands still.)Heraclitus
Plus ça change, plus c'est la même chose.
Alphonse Karr
The preceding chapters introduced the basic elements from which programs are made. We saw how primitive procedures and primitive data are combined to construct compound entities, and we learned that abstraction is vital in helping us to cope with the complexity of large systems. But these tools are not sufficient for designing programs. Effective program synthesis also requires organizational principles that can guide us in formulating the overall design of a program. In particular, we need strategies to help us structure large systems so that they will be modular, that is, so that they can be divided ``naturally'' into coherent parts that can be separately developed and maintained.
One powerful design strategy, which is particularly appropriate to the construction of programs for modeling physical systems, is to base the structure of our programs on the structure of the system being modeled. For each object in the system, we construct a corresponding computational object. For each system action, we define a symbolic operation in our computational model. Our hope in using this strategy is that extending the model to accommodate new objects or new actions will require no strategic changes to the program, only the addition of the new symbolic analogs of those objects or actions. If we have been successful in our system organization, then to add a new feature or debug an old one we will have to work on only a localized part of the system.
To a large extent, then, the way we organize a large program is dictated by our perception of the system to be modeled. In this chapter we will investigate two prominent organizational strategies arising from two rather different ``world views'' of the structure of systems. The first organizational strategy concentrates on objects, viewing a large system as a collection of distinct objects whose behaviors may change over time. An alternative organizational strategy concentrates on the streams of information that flow in the system, much as an electrical engineer views a signal-processing system.
Both the object-based approach and the stream-processing approach raise significant linguistic issues in programming. With objects, we must be concerned with how a computational object can change and yet maintain its identity. This will force us to abandon our old substitution model of computation (section 1.1.5) in favor of a more mechanistic but less theoretically tractable environment model of computation. The difficulties of dealing with objects, change, and identity are a fundamental consequence of the need to grapple with time in our computational models. These difficulties become even greater when we allow the possibility of concurrent execution of programs. The stream approach can be most fully exploited when we decouple simulated time in our model from the order of the events that take place in the computer during evaluation. We will accomplish this using a technique known as delayed evaluation.
{{footnotes}}
Notes
{{footnotes}}
Based on Structure and Interpretation of Computer Programs, a work at https://mitpress.mit.edu/sicp/.


Sinnox is a General Building Trading & Contracting Company W.L.L. We have well trained & experienced manpower with special equipments & machineries with fully enclosed shed located at Mangaf.
Company is Mainly Focused on Providing Quality Standard Services in Oil & Gas Refineries
We aspire to be recognized as the trader and contractor of choice for large, complex and demanding Anticorrosion and Electromechanical works for Oil & Gas,Petrochemical, Power plants, MEW and MPW contracting projects in Kuwait. During these days company has grown steadily by the Consistency, Expertise, Professionalism and Quality of Service. The support that we are getting from Customers is tremendous. IR international is an Approved Contractor with the CTC of Kuwait. It has approved by the Public Sector Oil & Gas Petro-chemical Companies, such as KOC, KNPC, JO, MEW, MPW & Power Plant in Kuwait.
We achieved the continuous track record of success of projects by following displine in our core fileds like Mechanical, Electrical, Instrumentation and Anticorrosion by addrssing the needs of client and excecuting it seamlessly.We are working to become a world leader in the anticorrosion field. We are committed to delivering quality work and products, safely and on schedule.A company that our clients want work with, our customers can rely on andour employees are proud to work for. A company with an open mind ready to embrace new opportunities and driven to deliver exceptional value.”
Petrochemicals (also known as petroleum distillates) are chemical products derived from petroleum. Some chemical compounds made from petroleum are also obtained from other fossil fuels, such as coal or natural gas, or renewable sources such as corn or sugar cane.
An oil refinery is an industrial process plant where crude oil is processed and refined into useful petroleum products. Raw oil or unprocessed ("crude") oil is not very useful in the form it comes in out of the ground.
natural gas processing plant, which purifies and converts raw natural gas into residential, commercial and industrial fuel gas, and also recovers natural gas liquids (NGL) such as ethane, propane, butanes and pentanes.
The courage to maintain the right from the wrong without compromise.
The ability to deliver on what we promise without exception.
The strenght to be responsible for own actions and decision.
Responsiveness, willingness to change and innovation.
Hight performance, continuous improvement, hight quality products, service and customer focus.
A strong degree of brand loyalty by insisting on our products and accepting no substitute.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Molestias, expedita, saepe, vero rerum deleniti beatae veniam harum neque nemo praesentium cum alias asperiores commodi.


%#
aStor2 -- storage area network configurable via Web-interface
Copyright (C) 2009-2012 ETegro Technologies, PLC
Vladimir Petukhov<EMAIL_ADDRESS>Sergey Matveev<EMAIL_ADDRESS>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see
|
<%+san/snapshot/title%>
<% if #matrix_overall.access_patterns > 0 then %>
<% local display_bind = false %>
<% for _,access_patterns in pairs( matrix_overall.access_patterns ) do %>
<% if not access_patterns:is_binded() then %>
<% display_bind = true %>
<% end %>
<% end %>
<% if display_bind then %>
<%+san/snapshot/bind%>
<% end %>
<% end %>
<%+san/snapshot/resize-control%>
<% if not line.logical_volume.access_patterns then %>
<%+san/snapshot/remove%>
<% end %>
<%+san/snapshot/fillbar%>
|
| <%+san/snapshot/resize%> |


Week 8: Sorting Algorithms
September 5th, 2014
Here's a shuffled deck of 52 cards. Sort it...
Read moreHere's a shuffled deck of 52 cards. Sort it...
Read moreI really enjoyed learning SQL and relational databases this week, and I was surprised to learn how many SQL haters there are out there on the World Wide Web!...
Read moreAs an object oriented programming language, Ruby has a few ways of giving your objects special attributes and abilities...
Read moreRuby is known as an Object Oriented programming language, which is a fancy way for saying (almost) everything in Ruby is an object...
Read moreTwo of the built-in data structures in Ruby are arrays and hashes...
Read moreJavaScript is an extremely popular programming language, and has many loyal and devoted followers...
Read moreWhen learning web design, it seems like there are a few things that beginners consistently get tripped up on...
Read moreI tend to be drawn to websites that are visually minimalist and draw their users toward content in unique ways....
Read more


Ok folks, that’s it… A few days ago, I decided to close all my software development activities on my main site, eosgarden.com.
It was a tough decision to make, as it implies the discontinuation of all previously published software.
But I really needed to stop focusing on the past, and on software I originally developed years ago.
Simply some fresh air, in order to focus on new/actual stuff and personal projects.
The eosgarden website will stay as-is, but will no longer be updated.
All published software have been discontinued, meaning they won’t be updated anymore.
Commercial software are now completely free to use (a valid serial number is provided on the download page).
That’s the end of a long story, but I have to admit it feels good.
Maintaining all this stuff was just too much, between my work as a development engineer for DigiDNA (an awesome swiss-australian software company), my current and personal code projects, and my private life.
So here we go, ready for a complete new start.
But this time, no more commercial software, and in fact no more end-user software at all.
I’ll just focus on the personal projects I want to develop, like the XEOS Operating System, and related stuff.
A new web home will soon be launched, for all of this stuff, so stay tuned…
And hopefully, I’ll have some more time blogging now… : )


|
AddWebChild
|
Set the current Concept Applicaton as a parent for a given web application idetified by key
|
|
BeginNonCritical
|
This function is used to minimize the network traffic
|
|
CApplication
|
This is the standard contructor for this class and should not be used directly
|
|
ClientDebugShell
|
Tells the client to spawn itself, and execute another application in the debug mode, on the current server; this function is intended to be used by IDEs only
|
|
ClientShell
|
Tells the client to spawn itself, and execute another application on the current server
|
|
Done
|
Tells the client that the current application ended its execution
|
|
EndNonCritical
|
This function is used to minimize the network traffic
|
|
GetCookie
|
Gets the data set by [SetCookie] asociated with the current user and current host
|
|
GlobalFlag
|
TODO: Document this
|
|
Init
|
Initializes the application on the remote client
|
|
Input
|
TODO: Document this
|
|
Iterate
|
TODO: Document this
|
|
Login
|
TODO: Document this
|
|
Message
|
TODO: Document this
|
|
MessageBox
|
Tells the client to show a message box
|
|
MessagePending
|
TODO: Document this
|
|
MessageYesNo
|
Tells the client to show a question message box and waits for a response (Yes, No or Close)
|
|
Ping
|
Pings the client machine
|
|
Query
|
Queries the client for information
|
|
RegisterDebugWebChild
|
TODO: Document this
|
|
RemoteCommand
|
Executes a system command on the client
|
|
RemoveWebChild
|
Remove the child web application idetified by key, previously added by AddWebChild
|
|
RequestFile
|
Request a file from the client machine
|
|
Run
|
Starts the main loop for the remote application
|
|
SendCookie
|
Sends a cookie to the client
|
|
SendCookieContent
|
Sends a virtual cookie to the client
|
|
SendFile
|
Sends a file to the client
|
|
SetApplicationForm
|
TODO: Document this
|
|
SetCookie
|
Set a cookie on the client side containing the given data
|
|
SetGlobalFlag
|
TODO: Document this
|


| DOSE: |
1 hit |
smoked |
DMT |
(powder / crystals) |
Dreaming has always been very important to me. My dreams, for as long as I can literally remember, have been intricate, beautiful. I almost always remember my dreams, and have journals dating back to the third grade recording them in intense detail, many which I can remember like it was yesterday and with more detail than most memories from the same time period. Through sheer luck or maybe force of will, I learned to control my dreams, also known as Lucid Dreaming. I couldnít tell you how I do it, but I do.
DMT isnít anything I wanted to try up until a few weeks ago. Iíve experienced pretty much every popular drug, and almost pride myself on having tasted a complete spice rack of life, the full range of upper downers screamers laughers, from one end of the spectrum to the other without prejudice. Iíve even been lucky enough to try some substances less popular and hard to come by, mostly on faceless blotters and through legal loopholes. Iíve also been a mycology enthusiast for ten years, growing my own mushrooms for fun and profit. I couldnít tell you how many times Iíve tripped, but it has certainly been a lot, and has hardened me to the experience.
Itís not easy working in an air condition-less kitchen in summer, and all I wanted to do was come home and relax. When I was finally home I collapsed into the chair in my room and started watching a movie with my boyfriend, Scott. Scott mentioned he got the bag of DMT heíd been waiting for. I mentioned I wanted to try it. The truth be told I didnít want to try it very badly. In the past year Iíd become very fond of Ketamine and was disappointed that my source had completely run dry. I longed for the sparkly world of Special K, and hoped to find it in DMT. Part of me was hesitant because I knew almost nothing about the chemical besides a quick look around on the internet. I decided something so short acting wouldnít be a problem, because if it turns out to be a horrible, dramatic life changing fear driven trip, it wonít last more than ten minutes.
We were already smoking a bowl together, so he put a little on top of the weed and took a hit. I took a hit. I didnít feel anything at all. Neither did he. He put a little more on top and handed it to me. Iíd have to guess around thirty milligrams, but there is no way of really knowing. I looked at the yellow powder, almost knowing what was going to happen.
It was like being in the middle of a mushroom trip, like falling through a trapdoor into the middle of a dream. It instantly felt wrong, as if I had entered my dreams through some secret backdoor, and part of my psyche felt betrayed by this rude and unannounced intrusion. I had the definite feeling of having been there before many times.  Just like it does as I take control of a dream.
ďIíve been here before.Ē I blurted out. That evolved into ďIím lucky that Iíve been here so many times, otherwise it would be far too much to handleĒ. I desperately tried to find words but was highly distracted.  I was unafraid and even bemused by the drugís attempts to give me visuals I had experience with so many other trips and dreams. It felt as if I could close my eyes and fade into unconscious sleep.
The kaleidoscope colors of the television flooded the room, along with several little fairies buzzing around me like mosquitoes. Everything breathed and pulsed, like waves brushing against the shore. Everything had a tracer, even things that should have been standing still. Fairies scampered across the floor like cockroaches. I couldnít believe how skinny my arms looked. I immediately started using all techniques I use to control my dreams, but when I looked at the clock and could read it, fear struck me, because it meant I was, in fact, conscious. The inner voice told me to remain calm, and that this will be over in just a few minutes, and again, you do not belong here. You werenít supposed to come until later.
Scott started rubbing my arms with a concerned look on his face, asking if he can do anything to make me more comfortable. I sat in the chair and shook my head in disappointment and said ďI didnít want to be here.Ē I think I repeated this a few times, but was having trouble finding the words to tell him what was happening. I didnít want to be there, because the voice inside me told me I wasnít supposed to be there, and I felt an almost violent push out of this deepest part of the experience, like I was being shoved out of heaven for disorderly conduct.
I came down a notch.  He walked me to the bathroom, where I sat on the toilet alone, talking out loud to myself about how lucky I am Iíve visited this place so much, watching the tiles in front of me glow and breathe. I remember crying a little as the idea of never being aloud to dream ever again monopolized my thoughts, and felt the sooner I left this realm, the better.
My insides had turned to liquid and for the first time in years I had diarrhea. In about two minutes I noticed I had come down significantly. I walked back to my room and waited for the world to turn completely back to normal. I was relieved to find my comforter wasnít moving anymore and the fairies were gone. By that time my boyfriend had already taken a hit the same size as mine and was already coming down as well a little behind me.
This entire sequence of events took a little over ten minutes.
After about half an hour we went for a walk and we both agreed the drug was still looming with us, giving everything a slightly colorful twist. I still agonized that where I ended up was wrong and had disturbed something I wasnít aloud into.
I havenít been able to lucid dream since, and still hold a fear that I damaged my ability too. Iíll admit the first dream afterwards was of a familiar dream character yelling at me for my trespass, which almost confirmed my fears were true. My dream world was pissed I took a backdoor instead of arriving announced and escorted through the front like always. And the ones in the nights following were as beautiful and deep as ever, but I had little to no control over them, and even less memory. I want to do it again but am afraid of undoing what I have worked so hard to achieve.
It does give me a weird sense of pride, to know that the drug didnít get on top of me, and I was able to remain lucid and in control. To also now know that this chemical is heavily linked to death, and that in conquering my dreams I have conquered fear of that unknown place.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


Note
The image transform.jpg used in this docs is taken by Megan Trace, and licensed under CC BY-NC 2.0. It can be found the original photography from Flickr.
New in version 0.1.8.
Image object provides a simple method to rotate images: rotate(). It takes a degree which can be 0 to 359. (Actually you can pass 360, 361, or more but it will be the same to 0, 1, or more respectively.)
For example, where the given image transform.jpg:
The below code makes the image rotated 90° to right:
from wand.image import Image
with Image(filename='transform.jpg') as image:
with image.clone() as rotated:
rotated.rotate(90)
rotated.save(filename='transform-rotated-90.jpg')
The generated image transform-rotated-90.jpg looks like:
If degree is not multiples of 90, the optional parameter background will help (its default is transparent):
from wand.color import Color
from wand.image import Image
with Image(filename='transform.jpg') as image:
with image.clone() as rotated:
rotated.rotate(135, background=Color('rgb(229,221,112)'))
rotated.save(filename='transform-rotated-135.jpg')
The generated image transform-rotated-135.jpg looks like:
New in version 0.3.0.
You can make a mirror image by reflecting the pixels around the central x- or y-axis. For example, where the given image transform.jpg:
The following code flips the image using Image.flip() method:
from wand.image import Image
with Image(filename='transform.jpg') as image:
with image.clone() as flipped:
flipped.flip()
flipped.save(filename='transform-flipped.jpg')
The image transform-flipped.jpg generated by the above code looks like:
As like flip(), flop() does the same thing except it doesn’t make a vertical mirror image but horizontal:
from wand.image import Image
with Image(filename='transform.jpg') as image:
with image.clone() as flopped:
flopped.flop()
flopped.save(filename='transform-flopped.jpg')
The image transform-flopped.jpg generated by the above code looks like:


TL GARD RX- folic acid, pyridoxine hydrochloride and cyanocobalamin tablet, film coated
Trigen Laboratories, Inc.
TL Gard Rx are round, light pink, speckled, film-coated tablets debossed "TL015" and intended for oral administration.
| Supplement Facts Servings per Bottle: 100 | ||
|---|---|---|
| Serving Size: 1 tablet Each tablet contains |
% DV for Adults Only | |
| Folic Acid | 2.2 mg | 550% |
| Vitamin B6 (pyridoxine HCl) | 25 mg | 1250% |
| Vitamin B12 (cyanocobalamin) | 1 mg | 167% |
Inactive Ingredients:
Microcrystalline Cellulose, Di Cal Phosphate, TriPotassium Citrate, Citric Acid, Sodium Carboxymethyl Cellulose, Stearic Acid, Silicon Dioxide, Dextrin, Dextrose (corn), Lecithin, Sodium Citrate.
TL Gard Rx tablets are indicated for nutritional support and folic acid supplementation.
This product is contraindicated in patients with known history of hypersensitivity to any of the ingredients.
THIS PRODUCT CONTAINS SOY.
Folic acid when taken in doses above 0.1 mg daily, may obscure pernicious anemia in that hematologic remission can occur while neurological manifestations remain progressive.
Allergic sensitization has been reported following both oral and parenteral administration of folic acid.
Store at 20°-25°C (68°-77°F), excursions permitted to 15°-30°C (59°-86°F) [See USP controlled room temperature]. Protect from light and moisture.
Dispense in a tight container with a child-resistant closure.
Call your doctor about side effects. You may report side effects by calling 888 9 TRIGEN<PHONE_NUMBER>).
All prescriptions using this product shall be pursuant to statutes as applicable. This is not an Orange Book product. There are no implied or explicit claims on therapeutic equivalence.
KEEP OUT OF REACH OF CHILDREN.
|
TL GARD RX
folic acid, pyridoxine hydrochloride, and cyanocobalamin tablet, film coated | ||||||||||||||||||||||||
| ||||||||||||||||||||||||
| ||||||||||||||||||||||||
| ||||||||||||||||||||||||
| ||||||||||||||||||||||||
| ||||||||||||||||||||||||
|
| Labeler - Trigen Laboratories, Inc. (830479668) |


SQL Optimization
Cuz There's So Much Freakin' Data to Sift Through
November 20, 2015
Optimizing SQL
SQL, or Structured Query Language, is a language used to communicate with databases so you can pull the information you want from them. The langauge reads much like English, using words like SELECT and FROM to select what you want to select and from what table. I'm fairly new to this realm of databases so I don't know much, but apparently the language could use some optimization in order to make query results more efficiently.
Databases, consisting of tables, can have millions of rows of information. Using commands like SELECT row_name, row_name FROM table_name ORDER BY some_id ASC will get the job done as far as pulling the data you request, but when you're dealing with millions of table rows, how effective is using the above mentioned command? Do you really have the time and energy to sift through hundreds of rows? I think not. This is where optimization can come in. After doing some research, I found some tips on how to optimize SQL searches. Here are a few (source citations are at the end of the post): (this list is a work in progress)
Understanding Indexes
Apparently indexes in tables are commonly misunderstood among SQL noobs (like me). Index values in a database table are simply non-significant numerical values that serve as counters for rows. Indexes are significant in that they provide structure to the table itself as opposed to changing the table data. It's common that beginners index everything, without understanding that doing so will make it harder to insert, delete, and update rows later. The way databases handle long lists of indexes is via doubly linked lists or leaf nodes.
A doubly linked list organizes the index in a logical way, as opposed to in a physical way. If an insertion needs to be made, a new node is created between pre-exisiting nodes, with the pre-existing nodes including links to the new node. This method of connecting new insertions to pre-existing ones via links results in a tree like structure and most importantly, no obstruction to the index values. The problem with this leaf node structure is that the computer must traverse all nodes when searching for an index, resulting in slow serach times. Since I just learned about how databases are structured like, literally two days ago, this all seems rather abstract to me. But it's good to know that there are ways in which databases deal with the hardline ascending numerical structure of indexes.
Symbol Operators
Using the '*' symbol will pull all columns from a table that fit a certain condition defined later in the command. But sometimes you can pull columns you don't need so it's best to specify the exact column names after SELECT that you wish to pull data from. Also, the LIMIT clause may come in handy when you don't want rows on rows on rows getting spat back at you; LIMIT will reduce the amount of rows being pulled to whatever you specify.
Another way to shorten search time is to provide more precise conditions for the number of columns requested to be pulled. For example, to search for a values up to 10, it'd be more efficient to query >= 10, as opposed to > 11, in which case the computer would jump to value 11 then back to 10.
It is best to avoid using the NOT operator because not only will the correct data be sifted through and pulled, all the information that is not what you want pulled will be searched too, thus slowing query time.
More tips to come
I will keep adding tips to optimize SQL searches once I continue to learn about how these database shenangians work. Stay tuned!
Citations
5 Tips to optimize your SQL queries by Adrian Wiech


A Shrubbery is authored by Charles Reid.
Charles is a chemical engineer who tinkers with Python in his free time.
Visit charlesreid1.com
Visit @charlesreid1 on Github
Visit the charlesreid1 Octopress blog on Github


-
LUNDI 10 NOVEMBREThis area is typically used to display captions associated with the images. They are set to hide and fade in on rotation.
-
LUNDI 11 NOVEMBREThis area is typically used to display captions associated with the images. They are set to hide and fade in on rotation.
-
LUNDI 12 NOVEMBREThis area is typically used to display captions associated with the images. They are set to hide and fade in on rotation.
-
MARDI 13 NOVEMBREThis area is typically used to display captions associated with the images. They are set to hide and fade in on rotation.
-
MERCREDI 14 NOVEMBREThis area is typically used to display captions associated with the images. They are set to hide and fade in on rotation.
-
MERCREDI 15 NOVEMBREThis area is typically used to display captions associated with the images. They are set to hide and fade in on rotation.
-
MERCREDI 16 NOVEMBREThis area is typically used to display captions associated with the images. They are set to hide and fade in on rotation.


TABLE OF CONTENT
A. GS1 Related B. GS2 Related POLITY 1. Linking of PAN to Aadhaar fine: SC 2. New medical regulator may have elected members INTERNATIONAL RELATIONS 1. Swiss support India’s NSG bid 1. India, Pakistan become full members of SCO C. GS3 Related SCIENCE AND TECHNOLOGY 1. Nano Particles to treat eye infection D. GS4 Related E. Concepts-in-News: Related Concepts to Revise/Learn F. Bills/Acts/Schemes/Orgs in News G. Practice Questions for UPSC Prelims Exam
UPSC Current Affairs 2017: News Analysis
A. GS1 Related
Nothing here for Today!!!
1. Linking of PAN to Aadhaar fine: SC
In news:
- The Supreme Court upheld the validity of an Income Tax law amendment linking PAN with Aadhaar for filing tax returns and made Aadhaar or Aadhaar enrolment slip compulsory to apply for a Permanent Account Number (PAN) card.
Court observation:
- Issue of duplicate/fake PANs:
Section 139AA (1) of the Income Tax Act requiring citizens to mention their Aadhaar number or at least their Aadhaar enrolment ID to the designated authority. This provision seeks to curb with the issue of duplicate/fake PANs.
- Section 139AA (1) was not violative of the right to trade and profession under Article 19(1)(g) of the Constitution.
- Parliament was fully competent to enact Section 139AA and its authority to make this law was not diluted by the orders of the Supreme Court that Aadhaar was voluntary.
- Partial stay: the court issued a “partial stay” on the proviso to Section 139AA (2), which mandates that those who do not link Aadhaar with PAN by July 1 would face the consequences of invalidation of their PAN ab inito — that is, the effect of non-compliance would be the automatic invalidation of their PAN as if it had never existed
2. New medical regulator may have elected members
In news:
- The government is likely to amend the draft National Medical Commission (NMC) Bill-2016 to make way for elected members also in the new commission. National Medical Commission has been planned as the main regulator for medical sector.
- National Medical Commission (NMC) Bill-2016 has proposed scrapping of Medical Council of India (MCI).
- The draft bill 2016 also proposes to have separate boards for regulating under- graduate courses, post-graduate, accreditation and assessment board and a board for registration of medical colleges as well as monitoring of ethics in the profession
Panagariya (Niti Aayog vice-chairman Arvind Panagariya) panel suggestion:
- Elected members: the electoral process of appointing regulators is inherently saddled with compromises and attracts professionals who may not be best suited for the task at hand. It creates an ab-initio conflict of interest and therefore this system must be discarded in favour of one based on search and selection.
- Panel has proposed a fully nominated commission in place of MCI to reform the medical education sector which has been under scrutiny for corruption and unethical practices.
- Panel proposes a Medical Advisory Council (MAC), with members from states who can be eminent professionals such as professors from a medical colleges and the like. There will be two members from Union Territories. NMC members will also be its members and its role will be advisory.
Why scrap MCI?
- The MCI has faced criticism from several quarters for alleged corruption in the top medical body.
Category: INTERNATIONAL RELATIONS
1. Swiss support India’s NSG bid
In news:
- Switzerland, the incoming chair of the Nuclear Suppliers Group (NSG), will support application for India’s membership, but has left the door open for Pakistan to join as well.
- ‘Grossi process’: The “Grossi process” mandates the former NSG chairperson and diplomat Rafael Grossi to build a consensus among all 48 countries of the NSG, many of which resisted India’s membership bid at the Seoul plenary session in 2016, unless the country signs the Non-Proliferation Treaty.
Basic Information:
- The Nuclear Suppliers Group (NSG) is a group of nuclear supplier countries that seeks to contribute to the non-proliferation of nuclear weapons through the implementation of two sets of Guidelines for nuclear exports and nuclear-related exports.
- The NSG Guidelines also contain the so-called “Non-Proliferation Principle,” adopted in 1994, whereby a supplier, notwithstanding other provisions in the NSG Guidelines, authorises a transfer only when satisfied that the transfer would not contribute to the proliferation of nuclear weapons. The Non-Proliferation Principle seeks to cover the rare but important cases where adherence to the NPT or to a Nuclear Weapon Free Zone Treaty may not by itself be a guarantee that a State will consistently share the objectives of the Treaty or that it will remain in compliance with its Treaty obligations.
- The NSG Guidelines are consistent with, and complement, the various international, legally binding instruments in the field of nuclear non-proliferation. These include the Treaty on the Non-Proliferation of Nuclear Weapons (NPT), the Treaty for the Prohibition of Nuclear Weapons in Latin America (Treaty of Tlatelolco), the South Pacific Nuclear-Free-Zone Treaty (Treaty of Rarotonga), the African Nuclear-Weapon-Free Zone Treaty (Treaty of Pelindaba), the Treaty on the Southeast Asia Nuclear-Weapon-Free Zone (Treaty of Bangkok), and the Central Asian Nuclear-Weapon-Free Zone Treaty (Treaty of Semipalatinsk).
- The NSG Guidelines are implemented by each Participating Government (PG) in accordance with its national laws and practices.Decisions on export applications are taken at the national level in accordance with national export licensing requirements.
2. India, Pakistan become full members of SCO
In News:
- India became a full member of the Shanghai Cooperation Organisation (SCO), ending an administrative process that began two years ago.
- India-SCO cooperation will give India a new direction and strength to the fight against terrorism .
- Background information: India and Pakistan were admitted as observers in 2005 and began the administrative process of joining the organization, which began in Shanghai, in 2015.
Shanghai Cooperation Organisation (SCO)
- SCO is a Eurasian economic, political and military organisation.
- Its aim is jointly preserving and safeguarding regional peace, security and stability and also establishing a democratic, fair and rational new international political and economic order.
- Headquarters: Beijing, China.
- Established: 2001 in Shanghai by the leaders 6 countries viz. China, Kyrgyzstan, Kazakhstan, Russia, Tajikistan, and Uzbekistan.
- It is an outcome of The Shanghai Five grouping established in 1996 by Kazakhstan, China, Kyrgyzstan, Russia and Tajikistan.
- SCO’s first enlargement was in 2001 with addition of Uzbekistan and second enlargement was in July 2015 with addition of 2 new members India and Pakistan.
- Presently, it has four observers Afghanistan, Belarus, Iran and Mongolia.
1. Nano Particles to treat eye infection
Context
Scientists at the Hyderabad-based CSIR-Centre for Cellular and Molecular Biology (CSIR-CCMB) have developed a novel way to treat fungal keratitis
What is Keratitis?
- Keratitis is the inflammation of the eye
- It starts with redness and itching and might eventually lead to blindness
- Cause of infection
- Keratitis can be caused by both bacteria and fungi
- Fungi attach themselves to the cornea and release enzymes that break down the corneal proteins for their nutritional requirements
- In the process the cornea also gets inflamed
What are the effects of this disease?
- Corneal damage causes wound and scar formation leading to severe visual impairment
- It is estimated that about 30% of keratitis cases in India lead to blindness
- Treating keratitis infection is a challenge because it is difficult to maintain a therapeutic dose at the corneal surface for long periods as blinking and tear formation washes off the drug
How does nanoparticle technique work?
- Certain antibodies get attached to the outer surface of the nanoparticles
- It anchors the nanoparticles to the corneal surface
- The infected cornea expresses a set of receptors (TLR4) when infection sets in
- The team has used antibodies to these receptors to anchor the nanoparticles to the cornea
- In case of severe infection, more receptors are expressed on the cornea and more nanoparticles get bound to the receptors
- Since they are bound, the residence time in the eye is long
- Neither blinking nor tear formation washes off the nanoparticles
D. GS4 Related
Nothing here for Today!!!
PIB Articles Editorials Roundup
E. Concepts-in-News: Related Concepts to Revise/Learn
F. Bills/Acts/Schemes/Orgs in News
|
Schemes in News |
About the Schemes |
|
President of India launches mobile app ‘Selfie with Daughter’ |
|
G. Practice Questions for UPSC Prelims Exam
Question 1: Consider the following statement with reference to the mobile application
“Selfie with Daughter” which was launched recently by President of India
- Campaign was initially launched in Haryana.
- It is a movement against female foeticide and sex selection.
Choose the correct option
- Only 1
- Only 2
- Both 1 and 2
- Neither 1 nor 2
Question 2: What is Keratitis?
- Inflammation of eyes caused due to fungus
- Inflammation of eyes caused due to Bacteria
- Both A and B
- None of the above
Question 3: Consider the following statement with reference to Shanghai Cooperation
Organisation (SCO):
- Headquarters of SCO is in China
- SCO is an outcome of The Shanghai Five grouping established in 1996 by Kazakhstan, China, Kyrgyzstan, Russia, Tajikistan and Uzbekistan.
- Presently, it has three observers Afghanistan, Belarus, and Mongolia.
Choose the correct option
- 1 and 3
- 1 and 2
- 1, 2 and 3
- Only 1
Question 4: Jaduguda mine in Jharkhand is famous for _____.
- Uranium
- Iron
- Copper
- Bauxite
Question 5: Which of the following nations is/are NOT members of OPEC (Organisation of the
Petroleum Exporting Countries)?
- Ecuador
- Venezuela
- Iran
- Indonesia
Select the correct answer using the code given below:
- 1, 2 and 3
- 1 and 2 only
- 3 only
- None of the above
“Proper Current Affairs preparation is the key to success in the UPSC- Civil Services Examination. We have now launched a comprehensive ‘Online Current Affairs Crash Course’. Limited seats available. Click here to Know More.”
Practice More: Enroll for India’s Largest All-India Test Series


Class: ActionCable::Server::Configuration
| Relationships & Source Files | |
| Inherits: | Object |
| Defined in: | actioncable/lib/action_cable/server/configuration.rb |
Overview
An instance of this configuration object is available via ActionCable.server
.config, which allows you to tweak Action Cable configuration in a ::Rails
config initializer.
Class Method Summary
- .new ⇒ Configuration constructor
Instance Attribute Summary
- #allow_same_origin_as_host rw
- #allowed_request_origins rw
- #cable rw
- #connection_class rw
- #disable_request_forgery_protection rw
- #log_tags rw
- #logger rw
- #mount_path rw
- #url rw
- #worker_pool_size rw
Instance Method Summary
-
#pubsub_adapter
Returns constant of subscription adapter specified in config/cable.yml.
Constructor Details
.new ⇒ Configuration
# File 'actioncable/lib/action_cable/server/configuration.rb', line 13
def initialize @log_tags = [] @connection_class = -> { ActionCable::Connection::Base } @worker_pool_size = 4 @disable_request_forgery_protection = false @allow_same_origin_as_host = true end
Instance Attribute Details
#allow_same_origin_as_host (rw)
[ GitHub ]# File 'actioncable/lib/action_cable/server/configuration.rb', line 10
attr_accessor :disable_request_forgery_protection, :allowed_request_origins, :allow_same_origin_as_host
#allowed_request_origins (rw)
[ GitHub ]# File 'actioncable/lib/action_cable/server/configuration.rb', line 10
attr_accessor :disable_request_forgery_protection, :allowed_request_origins, :allow_same_origin_as_host
#cable (rw)
[ GitHub ]# File 'actioncable/lib/action_cable/server/configuration.rb', line 11
attr_accessor :cable, :url, :mount_path
#connection_class (rw)
[ GitHub ]# File 'actioncable/lib/action_cable/server/configuration.rb', line 9
attr_accessor :connection_class, :worker_pool_size
#disable_request_forgery_protection (rw)
[ GitHub ]# File 'actioncable/lib/action_cable/server/configuration.rb', line 10
attr_accessor :disable_request_forgery_protection, :allowed_request_origins, :allow_same_origin_as_host
#log_tags (rw)
[ GitHub ]# File 'actioncable/lib/action_cable/server/configuration.rb', line 8
attr_accessor :logger, :
#logger (rw)
[ GitHub ]# File 'actioncable/lib/action_cable/server/configuration.rb', line 8
attr_accessor :logger, :
#mount_path (rw)
[ GitHub ]#url (rw)
[ GitHub ]# File 'actioncable/lib/action_cable/server/configuration.rb', line 11
attr_accessor :cable, :url, :mount_path
#worker_pool_size (rw)
[ GitHub ]# File 'actioncable/lib/action_cable/server/configuration.rb', line 9
attr_accessor :connection_class, :worker_pool_size
Instance Method Details
#pubsub_adapter
Returns constant of subscription adapter specified in config/cable.yml. If the adapter cannot be found, this will default to the Redis adapter. Also makes sure proper dependencies are required.
# File 'actioncable/lib/action_cable/server/configuration.rb', line 26
def pubsub_adapter adapter = (cable.fetch("adapter") { "redis" }) # Require the adapter itself and give useful feedback about # 1. Missing adapter gems and # 2. Adapter gems' missing dependencies. path_to_adapter = "action_cable/subscription_adapter/#{adapter}" begin require path_to_adapter rescue LoadError => e # We couldn't require the adapter itself. Raise an exception that # points out config typos and missing gems. if e.path == path_to_adapter # We can assume that a non-builtin adapter was specified, so it's # either misspelled or missing from Gemfile. raise e.class, "Could not load the '#{adapter}' Action Cable pubsub adapter. Ensure that the adapter is spelled correctly in config/cable.yml and that you've added the necessary adapter gem to your Gemfile.", e.backtrace # Bubbled up from the adapter require. Prefix the exception message # with some guidance about how to address it and reraise. else raise e.class, "Error loading the '#{adapter}' Action Cable pubsub adapter. Missing a gem it depends on? #{e.}", e.backtrace end end adapter = adapter.camelize adapter = "PostgreSQL" if adapter == "Postgresql" "ActionCable::SubscriptionAdapter::#{adapter}".constantize end


This is Chris, our TL!
This is Henry, our WD!
This is Nicholas, one of our React 1s!
This is Stephanie, one of our React 1s!
This is Francisco, one of our React 2s!


Senior Developers
I see this concept from time, which is confusing at best and misleading at worst:
Senior developers code is complex and difficult to follow for junior people.
I see this concept from time, which is confusing at best and misleading at worst:
Senior developers code is complex and difficult to follow for junior people.


CSB Bank IPO subscribed over 4 times on Day 2
by PTIThe initial public offering of CSB Bank was subscribed 4.35 times on the second day of bidding on Monday.
The initial public offering (IPO) of the Kerala-based company received bids for 5 crore shares against the total issue size of 1.15 crore shares, according to data available with the NSE.
While qualified institutional buyers (QIBs) category was subscribed 26 per cent, non-institutional investors segment was fully subscribed. Retail individual investors category was subscribed 21.53 times.
The IPO comprises a fresh issue of Rs 24 crore and an offer-for-sale of 1,97,78,298 equity shares, including an anchor portion of 94,54,080 equity shares.
CSB Bank on Thursday raised Rs 184 crore from anchor investors.
The company, which aims to raise up to Rs 410 crore, has fixed a price of Rs 193-195 per share for the IPO.
The share sale would close on Tuesday.
Axis Capital and IIFL Securities are managing the offer.


imreadmulti Loads a multi-page image from a file
imgs = cv.imreadmulti(filename)
imgs = cv.imreadmulti(filename, 'OptionName',optionValue, ...)
Input
- filename Name of file to be loaded.
Output
- imgs A cell-array of images holding each page, if more than one. If
If the image cannot be read (because of IO errors, improper
permissions, unsupported or invalid format), the function throws an
error.
Options
- Unchanged If set, return the loaded image as is (with alpha channel,
otherwise it gets cropped). Both the depth and number of channels are
unchanged as determined by the decoder. default false
- AnyDepth If set, return 16-bit/32-bit image when the input has the
corresponding depth, otherwise convert it to 8-bit. default false
- AnyColor If set, the image is read in any possible color format.
default true
- Color If set, always convert image to the 3 channel BGR color image.
default false
- Grayscale If set, always convert image to the single channel grayscale
image. default false
- GDAL If set, use the gdal driver for loading the image. default false
- Flags Advanced option to directly set the flag specifying the depth
and color type of a loaded image. Note that setting this integer flag
overrides all the other flag options. Not set by default:
>0
: Return a 3-channel color image. Note that in the current
implementation the alpha channel, if any, is stripped from the
output image. For example, a 4-channel RGBA image is loaded as
RGB if Flags >= 0
.
=0
: Return a grayscale image
<0
: Return the loaded image as is (with alpha channel if present).
- FlipChannels in case the output is color image, flips the color order
from OpenCV's BGR/BGRA to MATLAB's RGB/RGBA order. default true
See cv.imread for details.