| Interface | Description |
|---|---|
| CrossJoinArg |
"Light version" of a
TupleConstraint ,
represents one of
member.children, level.members, member.descendants, {enumeration}. |
| MemberChildrenConstraint |
Restricts the SQL result of a MembersChildren query in SqlMemberSource.
|
| SqlConstraint |
Restricts the members that are fetched by SqlMemberSource.
|
| SqlQueryChecker |
Runs a SQL query.
|
| TupleConstraint |
Restricts the SQL result of
TupleReader . |
| Class | Description |
|---|---|
| CodeSetTest | |
| CrossJoinArgFactory |
Creates CrossJoinArgs for use in constraining SQL queries.
|
| CrossJoinArgFactoryTest |
Tests for CrossJoinArgFactory
|
| DescendantsCrossJoinArg |
Represents one of:
Level.Members: member == null and level != null
Member.Children: member != null and level =
member.getLevel().getChildLevel()
Member.Descendants: member != null and level == some level below
member.getLevel()
|
| EffectiveMemberCacheTest | |
| MemberKeyConstraint |
Restricts the SQL result set to members where particular columns have
particular values.
|
| MemberListCrossJoinArg |
Represents an enumeration {member1, member2, ...}.
|
| SelectNotInGroupByTest |
Test that various values of
Dialect.allowsSelectNotInGroupBy()
produce correctly optimized SQL. |
| SqlQuery |
SqlQuery allows us to build a select
statement and generate it in database-specific SQL syntax. |
| SqlQuery.ClauseList | |
| SqlQuery.CodeSet |
Collection of alternative code for alternative dialects.
|
| SqlQuery.FromClauseList | |
| SqlQueryTest |
Test for
SqlQuery . |


I hope your cross-multiverse travel wasn't too boring. Since you arrived all healthy and not deformed at all I assume everything went well on your trip to the Cryptoverse?
 As you have no experience this far, let me quickly introduce you to the game. Our currency are so called space diamonds (SD). There are three options how you can pile up your stock:
To make your explorations and battles more lucrative, take a look into the store in your menu to the right. You can buy items there and upgrade them in your inventory.
Notice: You have to level your cryptonaut to level one to be able to fight and explore planets! This is quite easy, give it a try in your cryptonauts profile.


Instructions/Help
Click a crop image to fade all others (toggle)
Click a crop label to hide all others (toggle)
Click Plant|Transplant|Harvest to toggle those phases (toggle)
Hover over/touch green phases to show exact phase dates
Plant
Transplant
Harvest


Hi all!
We searching again a helping hand.
This time for the Portuguese Translation for BBLog.
We already have a translator,
http://getbblog.com/en/user/profile/11/Nano
for this job but to help him out we search a helping hand.
So, if anybody interested and have portuguese as native language pls contact me via private message.
Thx.


|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object jxl.Workbook
public abstract class Workbook
Represents a Workbook. Contains the various factory methods and provides a variety of accessors which provide access to the work sheets.
| Method Summary | |
|---|---|
abstract void |
close()
Closes this workbook, and frees makes any memory allocated available for garbage collection |
static WritableWorkbook |
createWorkbook(java.io.File file)
Creates a writable workbook with the given file name |
static WritableWorkbook |
createWorkbook(java.io.File file,
Workbook in)
Creates a writable workbook with the given filename as a copy of the workbook passed in. |
static WritableWorkbook |
createWorkbook(java.io.File file,
WorkbookSettings ws)
Creates a writable workbook with the given file name |
static WritableWorkbook |
createWorkbook(java.io.File file,
Workbook in,
WorkbookSettings ws)
Creates a writable workbook with the given filename as a copy of the workbook passed in. |
static WritableWorkbook |
createWorkbook(java.io.OutputStream os)
Creates a writable workbook. |
static WritableWorkbook |
createWorkbook(java.io.OutputStream os,
Workbook in)
Creates a writable workbook as a copy of the workbook passed in. |
static WritableWorkbook |
createWorkbook(java.io.OutputStream os,
WorkbookSettings ws)
Creates a writable workbook. |
static WritableWorkbook |
createWorkbook(java.io.OutputStream os,
Workbook in,
WorkbookSettings ws)
Creates a writable workbook as a copy of the workbook passed in. |
abstract Range[] |
findByName(java.lang.String name)
Gets the named range from this workbook. |
abstract Cell |
findCellByName(java.lang.String name)
Gets the named cell from this workbook. |
abstract Cell |
getCell(java.lang.String loc)
Returns the cell for the specified location eg. |
abstract int |
getNumberOfSheets()
Returns the number of sheets in this workbook |
abstract java.lang.String[] |
getRangeNames()
Gets the named ranges |
abstract Sheet |
getSheet(int index)
Gets the specified sheet within this workbook As described in the accompanying technical notes, each call to getSheet forces a reread of the sheet (for memory reasons). |
abstract Sheet |
getSheet(java.lang.String name)
Gets the sheet with the specified name from within this workbook. |
abstract java.lang.String[] |
getSheetNames()
Gets the sheet names |
abstract Sheet[] |
getSheets()
Gets the sheets within this workbook. |
static java.lang.String |
getVersion()
Accessor for the software version |
static Workbook |
getWorkbook(java.io.File file)
A factory method which takes in an excel file and reads in the contents. |
static Workbook |
getWorkbook(java.io.File file,
WorkbookSettings ws)
A factory method which takes in an excel file and reads in the contents. |
static Workbook |
getWorkbook(java.io.InputStream is)
A factory method which takes in an excel file and reads in the contents. |
static Workbook |
getWorkbook(java.io.InputStream is,
WorkbookSettings ws)
A factory method which takes in an excel file and reads in the contents. |
abstract boolean |
isProtected()
Determines whether the sheet is protected |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Method Detail |
|---|
public abstract Sheet[] getSheets()
public abstract java.lang.String[] getSheetNames()
public abstract Sheet getSheet(int index) throws java.lang.IndexOutOfBoundsException
index
- the zero based index of the reQuired sheet
IndexOutOfBoundException
- when index refers to a non-existent
sheet
java.lang.IndexOutOfBoundsException
public abstract Sheet getSheet(java.lang.String name)
name
- the sheet name
public static java.lang.String getVersion()
public abstract int getNumberOfSheets()
public abstract Cell findCellByName(java.lang.String name)
name
- the name of the cell/range to search for
public abstract Cell getCell(java.lang.String loc)
loc
- the cell to retrieve
public abstract Range[] findByName(java.lang.String name)
name
- the name of the cell/range to search for
public abstract java.lang.String[] getRangeNames()
public abstract boolean isProtected()
public abstract void close()
public static Workbook getWorkbook(java.io.File file) throws java.io.IOException, jxl.read.biff.BiffException
file
- the excel 97 spreadsheet to parse
java.io.IOException
jxl.read.biff.BiffException
public static Workbook getWorkbook(java.io.File file, WorkbookSettings ws) throws java.io.IOException, jxl.read.biff.BiffException
file
- the excel 97 spreadsheet to parsews
- the settings for the workbook
java.io.IOException
jxl.read.biff.BiffException
public static Workbook getWorkbook(java.io.InputStream is) throws java.io.IOException, jxl.read.biff.BiffException
is
- an open stream which is the the excel 97 spreadsheet to parse
java.io.IOException
jxl.read.biff.BiffException
public static Workbook getWorkbook(java.io.InputStream is, WorkbookSettings ws) throws java.io.IOException, jxl.read.biff.BiffException
is
- an open stream which is the the excel 97 spreadsheet to parsews
- the settings for the workbook
java.io.IOException
jxl.read.biff.BiffException
public static WritableWorkbook createWorkbook(java.io.File file) throws java.io.IOException
file
- the workbook to copy
java.io.IOException
public static WritableWorkbook createWorkbook(java.io.File file, WorkbookSettings ws) throws java.io.IOException
file
- the file to copy fromws
- the global workbook settings
java.io.IOException
public static WritableWorkbook createWorkbook(java.io.File file, Workbook in) throws java.io.IOException
file
- the output file for the copyin
- the workbook to copy
java.io.IOException
public static WritableWorkbook createWorkbook(java.io.File file, Workbook in, WorkbookSettings ws) throws java.io.IOException
file
- the output file for the copyin
- the workbook to copyws
- the configuration for this workbook
java.io.IOException
public static WritableWorkbook createWorkbook(java.io.OutputStream os, Workbook in) throws java.io.IOException
os
- the stream to write toin
- the workbook to copy
java.io.IOException
public static WritableWorkbook createWorkbook(java.io.OutputStream os, Workbook in, WorkbookSettings ws) throws java.io.IOException
os
- the output stream to write toin
- the workbook to copyws
- the configuration for this workbook
java.io.IOException
public static WritableWorkbook createWorkbook(java.io.OutputStream os) throws java.io.IOException
os
- the output stream
java.io.IOException
public static WritableWorkbook createWorkbook(java.io.OutputStream os, WorkbookSettings ws) throws java.io.IOException
os
- the output streamws
- the configuration for this workbook
java.io.IOException
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |


class MaterialPopupMenuBuilder
Builder for creating a MaterialPopupMenu.
The MaterialPopupMenu must have at least one section. All sections must also have at least one item and each item must have a non-null label set.
Author
Piotr Zawadzki
abstract class AbstractItemHolder |
|
class CustomItemHolder : MaterialPopupMenuBuilder.AbstractItemHolder
Holds section custom item info for the builder. This gets converted to MaterialPopupMenu.PopupMenuCustomItem. |
|
class ItemHolder : MaterialPopupMenuBuilder.AbstractItemHolder
Holds section item info for the builder. This gets converted to MaterialPopupMenu.PopupMenuItem. |
|
class SectionHolder
Holds section info for the builder. This gets converted to MaterialPopupMenu.PopupMenuSection. |
MaterialPopupMenuBuilder()
Builder for creating a MaterialPopupMenu. |
var dropdownGravity: Int
Gravity of the dropdown list. This is commonly used to set gravity to START or END for alignment with the anchor. Setting Gravity.BOTTOM will anchor the dropdown list below the view. |
|
var dropDownHorizontalOffset: Int?
Setting this to non- |
|
var dropDownVerticalOffset: Int?
Setting this to non- |
|
var fixedContentWidthInPx: Int
Setting this to a non-zero value will force the width of the popup menu to be exactly this value. If set to 0, the default mechanism for measuring popup menu width will be applied. |
|
var style: Int
Style of the popup menu. |
fun build(): MaterialPopupMenu
Creates a MaterialPopupMenu with the already configured params. |
|
fun section(: MaterialPopupMenuBuilder.SectionHolder.() -> Unit): Unit
Adds a new section to the popup menu. |


- calculateDimensions(Graphics2D) - Method in class dillon.gameAPI.gui.Prompt
-
- call(int, String...) - Method in class dillon.gameAPI.scripting.bridges.RemoteCallBridge
-
- Camera - Class in dillon.gameAPI.mapping
-
This object tells the Scroll manager where the camera is so it can render the
correct tiles.
- Camera() - Constructor for class dillon.gameAPI.mapping.Camera
-
- CameraBridge - Class in dillon.gameAPI.scripting.bridges
-
This class will help to use the camera for scripts.
- CameraBridge() - Constructor for class dillon.gameAPI.scripting.bridges.CameraBridge
-
- checkCollision() - Method in class dillon.gameAPI.entity.Entity
-
This method will check if the player is colliding with anything.
- checkPermission(SecurityKey, RequestedAction) - Static method in class dillon.gameAPI.security.SecuritySystem
-
Called internally to check the permissions.
- ClientConnector - Class in dillon.gameAPI.networking
-
This class bridges the gap between the central server and the client, from
the server to client.
- ClientConnector(Socket, SecurityKey) - Constructor for class dillon.gameAPI.networking.ClientConnector
-
Creates a client connector with the specified socket.
- connect(String, int, SecurityKey) - Static method in class dillon.gameAPI.networking.NetworkConnection
-
Tells the engine to connect to a server.
- connect(InetSocketAddress, SecurityKey) - Static method in class dillon.gameAPI.networking.NetworkConnection
-
Connects to a server, using the Inet socket address.
- copy(int, int) - Method in class dillon.gameAPI.mapping.Tile
-
Makes a copy of the tile with the specified places.
- copy() - Method in class dillon.gameAPI.mapping.TileEvent
-
Copy the event.
- Core - Class in dillon.gameAPI.core
-
Core file that has starting and stopping methods.
- Core() - Constructor for class dillon.gameAPI.core.Core
-
- CoreBridge - Class in dillon.gameAPI.scripting.bridges
-
This class is for script use only.
- CoreBridge() - Constructor for class dillon.gameAPI.scripting.bridges.CoreBridge
-
- crash(Exception, SecurityKey) - Static method in class dillon.gameAPI.core.Core
-
This method shuts off the event system and activates CanvasController's
Crash to stop the engine.
- createFromZip(InputStream) - Static method in class dillon.gameAPI.utils.Animation
-
Create an animation from a zip file.
- createFromZip(URL) - Static method in class dillon.gameAPI.utils.Animation
-
- createSecurityKey(SecurityKey, String) - Static method in class dillon.gameAPI.security.SecuritySystem
-
This creates a valid security key.


http://www.mcs.anl.gov/~emews/tutorial/
The EMEWS tutorial presents an overview of EMEWS, the Swift/T parallel scripting language, EMEWS templates, and a number of use-cases, starting with a simple agent-based model parameter sweep, and ending with a complex adaptive parameter space exploration workflow coordinating ensembles of distributed (MPI) simulations. The use-cases are available for interested parties to download and run on their own. While the example models in the tutorial utilize agent-based models, EMEWS can be applied to any computational modeling method requiring heuristic model exploration.
The EMEWS Model Exploration Library Archive (MELA) is a collection of model exploration (ME) modules, which can be directly incorporated into EMEWS workflows. The ME modules are written in R or Python (used with EQ/R and EQ/Py, respectively) and come with descriptions of the underlying ME algorithm, the communication protocol and the ability to run standalone (i.e., in their original language) ME tests.
EQ/R is an R-based Swift/T resident task extension that allows Swift/T workflows to communicate with a persistent embedded R interpreter on a worker process via blocking queues. Using EQ/R, an R-based ME algorithm can be used to control and define an ensemble of model runs.
https://github.com/emews/EQ-Py
EQ/Py is a Python-based Swift/T resident task extension that allows Swift/T workflows to communicate with a persistent embedded Python interpreter on a worker process via blocking queues. Using EQ/Py, a Python-based ME algorithm can be used to control and define an ensemble of model runs.
https://github.com/emews/emews-lazybones-templates
EMEWS templates use the Lazybones project creation tool to generate EMEWS projects.


| allShortestPaths | Find Shortest Paths Between All Nodes in a Directed Graph |
| bclust | Bagged Clustering |
| best.nnet | Convenience Tuning Wrapper Functions |
| best.randomForest | Convenience Tuning Wrapper Functions |
| best.rpart | Convenience Tuning Wrapper Functions |
| best.svm | Convenience Tuning Wrapper Functions |
| best.tune | Parameter Tuning of Functions Using Grid Search |
| bincombinations | Binary Combinations |
| bootstrap.lca | Bootstrap Samples of LCA Results |
| boxplot.bclust | Boxplot of Cluster Profiles |
| centers.bclust | Bagged Clustering |
| classAgreement | Coefficients Comparing Classification Agreement |
| clusters.bclust | Bagged Clustering |
| cmeans | Fuzzy C-Means Clustering |
| compareMatchedClasses | Find Similar Classes in Two-way Contingency Tables |
| countpattern | Count Binary Patterns |
| cshell | Fuzzy C-Shell Clustering |
| d2sigmoid | The Logistic Function and Derivatives |
| ddiscrete | Discrete Distribution |
| dsigmoid | The Logistic Function and Derivatives |
| e1071-deprecated | Deprecated Functions in Package e1071 |
| element | Extract Elements of an Array |
| extractPath | Find Shortest Paths Between All Nodes in a Directed Graph |
| fclustIndex | Fuzzy Cluster Indexes (Validity/Performance Measures) |
| hamming.distance | Hamming Distances of Vectors |
| hamming.window | Computes the Coefficients of a Hamming Window. |
| hanning.window | Computes the Coefficients of a Hanning Window. |
| hclust.bclust | Bagged Clustering |
| hsv_palette | Sequential color palette based on HSV colors |
| ica | Independent Component Analysis |
| impute | Replace Missing Values |
| interpolate | Interpolate Values of Array |
| kurtosis | Kurtosis |
| lca | Latent Class Analysis (LCA) |
| lines.probplot | Probability Plot |
| matchClasses | Find Similar Classes in Two-way Contingency Tables |
| matchControls | Find Matched Control Group |
| moment | Statistical Moment |
| naiveBayes | Naive Bayes Classifier |
| naiveBayes.default | Naive Bayes Classifier |
| naiveBayes.formula | Naive Bayes Classifier |
| pdiscrete | Discrete Distribution |
| permutations | All Permutations of Integers 1:n |
| plot.bclust | Bagged Clustering |
| plot.ica | Independent Component Analysis |
| plot.stft | Plot Short Time Fourier Transforms |
| plot.svm | Plot SVM Objects |
| plot.tune | Plot Tuning Object |
| predict.lca | Latent Class Analysis (LCA) |
| predict.naiveBayes | Naive Bayes Classifier |
| predict.svm | Predict Method for Support Vector Machines |
| print.bootstrap.lca | Bootstrap Samples of LCA Results |
| print.fclust | Fuzzy C-Means Clustering |
| print.ica | Independent Component Analysis |
| print.lca | Latent Class Analysis (LCA) |
| print.naiveBayes | Naive Bayes Classifier |
| print.summary.lca | Latent Class Analysis (LCA) |
| print.summary.svm | Support Vector Machines |
| print.summary.tune | Parameter Tuning of Functions Using Grid Search |
| print.svm | Support Vector Machines |
| print.tune | Parameter Tuning of Functions Using Grid Search |
| probplot | Probability Plot |
| qdiscrete | Discrete Distribution |
| rbridge | Simulation of Brownian Bridge |
| rdiscrete | Discrete Distribution |
| read.matrix.csr | Read/Write Sparse Data |
| rectangle.window | Computes the Coefficients of a Rectangle Window. |
| rwiener | Simulation of Wiener Process |
| sigmoid | The Logistic Function and Derivatives |
| skewness | Skewness |
| stft | Computes the Short Time Fourier Transform of a Vector |
| summary.lca | Latent Class Analysis (LCA) |
| summary.svm | Support Vector Machines |
| summary.tune | Parameter Tuning of Functions Using Grid Search |
| svm | Support Vector Machines |
| svm.default | Support Vector Machines |
| svm.formula | Support Vector Machines |
| tune | Parameter Tuning of Functions Using Grid Search |
| tune.control | Control Parameters for the Tune Function |
| tune.knn | Convenience Tuning Wrapper Functions |
| tune.nnet | Convenience Tuning Wrapper Functions |
| tune.randomForest | Convenience Tuning Wrapper Functions |
| tune.rpart | Convenience Tuning Wrapper Functions |
| tune.svm | Convenience Tuning Wrapper Functions |
| tune.wrapper | Convenience Tuning Wrapper Functions |
| write.matrix.csr | Read/Write Sparse Data |
| write.svm | Write SVM Object to File |


1st STUDENT
PERSONAL INFORMATION
First Name:
Middle Name:
Last Name:
EDUCATIONAL INFORMATION
Strand:
Grade Level:
School:
GRADES IN SUBJECT
Math:
Science:
Fiilipino:
English:
TLE:
Grade:
Remarks:
2nd STUDENT
PERSONAL INFORMATION
First Name:
Middle Name:
Last Name:
EDUCATIONAL INFORMATION
Strand:
Grade Level:
School:
GRADES IN SUBJECT
Math:
Science:
Fiilipino:
English:
TLE:
Grade:
Remarks:
3rd student -->
3rd STUDENT
PERSONAL INFORMATION
First Name:
Middle Name:
Last Name:
EDUCATIONAL INFORMATION
Strand:
Grade Level:
School:
GRADES IN SUBJECT
Math:
Science:
Fiilipino:
English:
TLE:
Grade:
Remarks:
1st Student Output
Personal Information
Your name is: {{firstName + " " + middleName + " " + lastName}}
Educational Information
Your Strand, Grade Level and School are: {{strand +" "+ glevel +" "+ school}}
Grades in Subject
Math: {{math}}
Science: {{science}}
Filipino: {{filipino}}
English: {{english}}
TLE: {{tle}}
Grade: {{selectedName}}
Your Grades are: {{math +" "+ science +" "+ filipino +" "+ english +" " +tle}}
Overall Grades: {{(math + science + filipino + english + tle)/5 }}
Remarks:{{remarks}}
2nd Student Output
Personal Information
Your name is: {{fName + " " + mName + " " + lName}}
Educational Information
Your Strand, Grade Level and School are: {{str +" "+ gradelevel +" "+ sch}}
Grades in Subject
Math: {{Math}}
Science: {{Science}}
Filipino: {{Filipino}}
English: {{English}}
TLE: {{Tle}}
Grade: {{selectedName}}
Your Grades are: {{Math +" "+ Science +" "+ Filipino +" "+ English +" " +Tle}}
Overall Grades: {{(Math + Science + Filipino + English + Tle)/5 }}
Remarks:{{remark}}
3rd Student Output
Personal Information
Your name is: {{fname + " " + mname + " " + lname}}
Educational Information
Your Strand, Grade Level and School are: {{s +" "+ gl +" "+ sc}}
Grades in Subject
Math: {{MAth}}
Science: {{SCience}}
Filipino: {{FIlipino}}
English: {{ENglish}}
TLE: {{TLe}}
Grade: {{selectedName}}
Your Grades are: {{MAth +" "+ SCience +" "+ FIlipino +" "+ ENglish +" " +TLe}}
Overall Grades: {{(MAth + SCience + FIlipino + ENglish + TLe)/5 }}
Remarks:{{remarkss}}


This structure contains the servo control data of a motor.
Fields- PidParam
-
Points to the PIDPARAM structure.
- bEncoder
-
Specifies the encoder channel.
- lPosSp
-
Stores the position setpoint.
- iVelSp
-
Stores the velocity setpoint in clicks/tick.
- lIntErr
-
Stores the Integral Error value.
- iVelLimit
-
Stores the velocity limit in clicks/tick.
- iMotorDir
-
Stores the drive output value.
|


Trident Homes Partners with The Good Oil Tactix
by TactixTrident Homes Christchurch franchise holders Jason McKenzie and Peter Nisbet are excited to have partnered with The Good Oil Tactix in a relationship they see as growing long term.
The business, which prides itself in being Home Builders in New Zealand, has offered its support to Netball Mainland and The Good Oil Tactix.
“Although the Trident brand is relatively new in Canterbury, we are building our reputation as a trusted team in the industry,” he said.
“We have watched closely in the last few seasons as The Good Oil Tactix has continued to build on its reputation following its success on and off the court, and we look forward to seeing what they can deliver in the 2020 ANZ Premiership.”
Nisbet and McKenzie, who have over 30 years building experience, say joining forces with New Zealand’s top female sport was a natural progression with many of Trident Homes’ clients having young families involved in netball.
“With both Pete and I having daughters playing they have been around the courts for many years and enjoyed watching the game at grassroots level.”
But a partnership with The Good Oil Tactix gained momentum when Trident Homes built a house for Captain Jane Watson.
“We have watched what Jane has achieved with the Tactix and were motivated to support her and her team,” McKenzie said.
“Trident Homes is proud to align itself to what The Good Oil Tactix bring to netball in Canterbury and we hope our support will contribute to a great year for the team.”
Netball Mainland Commercial Manager, Emma Hodgkin said they were thrilled to have partnered with Trident Homes.
“We are looking forward to building on our recent success and can do so with the support of Trident Homes who, like us, are making their mark in Canterbury,” she said.
The Team will be showing off their new look dresses when The Good Oil Tactix is back in action next month competing at the Super Club competition in Nelson from December 8-13.


Making it easier for Jehovah's Witnesses to manage their territories by creating a cool to do it for us.
Need to create an entire congregation territory? Easy Territory Maker helps you do it in minutes, costs nothing, and is built by brothers.
What territories need worked next? Which have not been worked in a year? Where is the report for the CO? Where are your most productive territories? Easy Territory Maker has all of that ready for you on the fly!
Who has the territory book? Where is the territory stack? When can I check it out? Oh no! I lost my card, where can I find it? Easy Territory Maker provides with a digital or analog territory, directions to it, and the ability for brothers to collaborate in both distributing and working them.


modules/payments-component/src/payments-container.component.ts
Component that coordinate states of payment expirience (Displays different payment methods,
shows and hide delivery and payment forms, process payments)
| selector | payments-container |
| styleUrls | payments-container.component.scss |
| templateUrl | payments-container.component.html |
constructor(http: any, basketService: any, zone: any, dal: any, authService: any)
|
| paymentsChanged |
paymentsChanged(paymentForm: any)
|
|
Runs when payment form changed
Parameters :
Returns:
void
|
| deliveriesChanged |
deliveriesChanged(deliveryForm: any)
|
|
Runs when delivery form changed
Parameters :
Returns:
void
|
| setDeliveryCompany |
setDeliveryCompany(deliveryCompany: any)
|
|
Set delivery company name
Parameters :
Returns:
void
|
| finish |
finish()
|
|
Process payment after saving payment information and (optional) delivery form.
Returns:
void
|
| saveOrder |
saveOrder(paymentData: any)
|
|
Save order to database
Parameters :
Returns:
void
|
| backToPayments |
backToPayments()
|
|
Reset payment page
Returns:
void
|
| Public deliveryCompany |
deliveryCompany: |
|
Delivery company name |
| Public deliveryForm |
deliveryForm: |
|
Delivery form FormGroup |
| Public deliverySaved |
deliverySaved: |
Default value: false
|
|
Is delivery saved |
| Public failedPayment |
failedPayment: |
Default value: false
|
|
Is payment failed |
| Public isLoading |
isLoading: |
Default value: true
|
|
Flag for PaymentsSpinnerComponent |
| Public orderForm |
orderForm: |
|
Order form with currency, products and price |
| Public paymentForm |
paymentForm: |
|
Payment form FormGroup` |
| Public paymentSaved |
paymentSaved: |
Default value: false
|
|
Is payment saved |
| paymentsComponent |
paymentsComponent: |
| Public paymentStatus |
paymentStatus: |
|
Payment status after payment |
| Public showDeliveryForm |
showDeliveryForm: |
Default value: false
|
|
Show delivery form |
| Public showFinish |
showFinish: |
Default value: false
|
|
Show finsih pay button |
| Public showPayments |
showPayments: |
Default value: true
|
|
Show payment form |
| Public successPayment |
successPayment: |
Default value: false
|
|
Is payment success |
import { PaymentsService } from './payments.service';
import { AuthService } from '@nodeart/auth-service';
import { BasketService } from '@nodeart/basketservice';
import { Http, Headers, RequestOptions } from '@angular/http';
import { PaymentsComponent } from './paymets/payments.component';
import { Component, OnInit, ViewChild, NgZone} from '@angular/core';
import {DbAbstractionLayer} from "@nodeart/dal";
/**
* Component that coordinate states of payment expirience (Displays different payment methods,
* shows and hide delivery and payment forms, process payments)
*/
@Component({
selector: 'payments-container',
templateUrl: './payments-container.component.html',
styleUrls: ['payments-container.component.scss']
})
export class PaymentsContainerComponent implements OnInit {
/**
* Is payment saved
*/
public paymentSaved = false;
/**
* Is delivery saved
*/
public deliverySaved = false;
/**
* Show delivery form
*/
public showDeliveryForm = false;
/**
* Show payment form
*/
public showPayments = true;
/**
* Payment form FormGroup`
*/
public paymentForm;
/**
* Delivery form FormGroup
*/
public deliveryForm;
/**
* Order form with currency, products and price
*/
public orderForm = {
products: [],
currency: 'USD',
totalPrice: '0.00',
userId: ''
};
/**
* Payment status after payment
*/
public paymentStatus = '';
/**
* Show finsih pay button
*/
public showFinish = false;
/**
* Is payment success
*/
public successPayment = false;
/**
* Is payment failed
*/
public failedPayment = false;
/**
* Flag for {@link PaymentsSpinnerComponent}
*/
public isLoading = true;
/**
* Delivery company name
*/
public deliveryCompany: string = '';
/**
* {@link PaymentsComponent}
*/
@ViewChild(PaymentsComponent) paymentsComponent: PaymentsComponent;
constructor(
protected http: Http,
protected basketService: BasketService,
protected zone: NgZone,
protected dal: DbAbstractionLayer,
protected authService: AuthService) {
}
ngOnInit() {
this.zone.run(() => {
this.orderForm = {
products: this.basketService.productsSnapshot,
currency: 'USD',
totalPrice: '' + this.basketService.totalPrice + '.00',
userId: this.basketService.userId
};
});
this.basketService.products.subscribe(products => {
let totalPrice;
console.log(this.basketService.totalPrice);
if(this.basketService.totalPrice > 0) {
totalPrice = this.basketService.totalPrice;
} else {
for(let i = 0; i < products.length; i++){
totalPrice += +products[i].product.price;
}
}
this.zone.run(() => {
this.orderForm = {
products: products,
currency: 'USD',
totalPrice: '' + totalPrice + '.00',
userId: this.basketService.userId
};
});
});
}
/**
* Runs when payment form changed
* @param paymentForm
*/
paymentsChanged(paymentForm) {
// this.showPayments = false;
this.paymentSaved = true;
this.paymentForm = paymentForm;
if(!!paymentForm.deliveryRequired && paymentForm.deliveryRequired === true){
this.showDeliveryForm = true;
} else {
this.showFinish = true;
}
if(!!this.paymentForm && !!this.deliveryForm){
this.showFinish = true;
}
}
/**
* Runs when delivery form changed
* @param paymentForm
*/
deliveriesChanged(deliveryForm) {
this.deliverySaved = true;
this.deliveryForm = deliveryForm;
if(!!this.paymentForm && !!this.deliveryForm){
this.showFinish = true;
}
}
/**
* Set delivery company name
* @param deliveryCompany Delivery company name
*/
setDeliveryCompany(deliveryCompany) {
this.deliveryCompany = deliveryCompany;
}
/**
* Process payment after saving payment information and (optional) delivery form.
*/
finish() {
this.isLoading = true;
let paymentData = {
orderForm: this.orderForm,
paymentForm: this.paymentForm,
deliveryForm: this.deliveryForm
};
if(this.paymentForm.payMethod){
this.paymentForm.payMethod(this.dal, paymentData).subscribe(data => {
console.log(data);
if(data.status) {
this.zone.run(() => {
this.paymentStatus = data.status;
});
this.isLoading = false;
};
this.saveOrder(data).subscribe(
res => {
this.dal.getOrderSubject().next(data);
this.failedPayment = data.failedPayment;
this.successPayment = data.successPayment;
},
e => {
this.successPayment = false;
this.failedPayment = true;
});
});
} else {
this.saveOrder(paymentData).subscribe(
res => {
console.log(this.dal.getOrderSubject());
this.dal.getOrderSubject().next(paymentData);
this.failedPayment = false;
this.successPayment = true;
},
e => {
this.successPayment = false;
this.failedPayment = true;
});
}
}
/**
* Save order to database
* @param paymentData all payment data
*/
saveOrder(paymentData){
delete paymentData.paymentForm.payMethod;
paymentData.date = Date.now();
return this.dal.saveOrder(paymentData);
}
/**
* Reset payment page
*/
backToPayments(){
this.showPayments = true;
this.showDeliveryForm = false;
this.showFinish = false;
this.successPayment = false;
this.failedPayment = false;
this.deliveryForm = null;
this.paymentForm = null;
if(this.paymentsComponent){
this.paymentsComponent.selectedMethod = '';
this.paymentsComponent.showPaymentsList = true;
}
}
}


Reports
Guide your institution by understanding…
-
…the landscape
-
…how to respond
The Roadmap for Action
-
…the situation today
The Update
Topics
Get actionable insights on key topics…
-
interventions to make today
-
underlying challenges
-
the companies
-
the choices ahead


The ShipGirl Project, feat Shoukaku (<=) & Zuikaku (=>) (c) Kancolle for our cute girls
✅ Currently being used by:
✅ Straightforward.
✅ Maintained.
✅ Reliable.
✅ Stable.
✅ Feature-rich.
✅ Very cute and reliable Shipgirl ❤ (Very Very Important)
https://deivu.github.io/Shoukaku/?api
For Stable
npm i shoukaku
For Master
npm i Deivu/Shoukaku
You can view it on CHANGELOGS.MD file in this repository.
Join in ShipGirls Community and ask at #support
channel.
Feel free to open an issue in the Issues section of this repository.
Serves as your guide on how I implement my own library
View Kongou's source code here
const { Client } = require('discord.js');
const { Shoukaku } = require('shoukaku');
const LavalinkServer = [{ name: 'Localhost', host: 'localhost', port: 6969, auth: 'big_weeb' }];
const ShoukakuOptions = { moveOnDisconnect: false, resumable: false, resumableTimeout: 30, reconnectTries: 2, restTimeout: 10000 };
class ExampleBot extends Client {
constructor(opts) {
super(opts);
this.shoukaku = new Shoukaku(this, LavalinkServer, ShoukakuOptions);
}
login(token) {
this._setupShoukakuEvents();
this._setupClientEvents();
return super.login(token);
}
_setupShoukakuEvents() {
this.shoukaku.on('ready', (name) => console.log(`Lavalink Node: ${name} is now connected`));
// You must handle error event
this.shoukaku.on('error', (name, error) => console.log(`Lavalink Node: ${name} emitted an error.`, error));
this.shoukaku.on('close', (name, code, reason) => console.log(`Lavalink Node: ${name} closed with code ${code}. Reason: ${reason || 'No reason'}`));
this.shoukaku.on('disconnected', (name, reason) => console.log(`Lavalink Node: ${name} disconnected. Reason: ${reason || 'No reason'}`));
}
_setupClientEvents() {
this.on('message', async (msg) => {
if (msg.author.bot || !msg.guild) return;
if (!msg.content.startsWith('$play')) return;
if (this.shoukaku.getPlayer(msg.guild.id)) return;
const args = msg.content.split(' ');
if (!args[1]) return;
const node = this.shoukaku.getNode();
let data = await node.rest.resolve(args[1]);
if (!data) return;
const player = await node.joinVoiceChannel({
guildID: msg.guild.id,
voiceChannelID: msg.member.voice.channelID
});
const cleanFunction = (param) => {
console.log(param);
player.disconnect();
}
player.on('end', cleanFunction);
player.on('closed', cleanFunction);
player.on('error', cleanFunction);
player.on('nodeDisconnect', cleanFunction);
await player.playTrack(data.tracks.shift()); // can also be "data.tracks.shift().track but that looks meme here since playTrack also accepts an instance of ShoukakuTrack
await msg.channel.send("Now Playing: " + data.info.title);
});
this.on('ready', () => console.log('Bot is now ready'));
}
}
new ExampleBot()
.login('token')
.catch(console.error);


This release brings the ArmorPaint cloud, ray-traced rendering and baking, refined UI, decal layers, unlimited masking, edge wear materials and many more improvements to the painting experience. You can check the list below or examine the commit history on GitHub.
While many new features are added, the main focus of this release is the stability, bug fixing and even better performance. I have had an amazing time developing ArmorPaint 0.8 and can not wait to continue onto 0.9. Thank you for making the project thrive.
Added ArmorPaint Cloud at 'Browser tab - Cloud' - built-in online asset library
Added iPadOS build to the App Store
Added Android build to Google Play
Added support for unlimited masks per layer
Added support for mask blending
Added 'import_svg' plugin - support for .svg format
Added 'import_usd' plugin - support for .usdc format
Added support for importing and exporting keymaps
Added 'Preferences - Show Asset Names' option
Added 'Preferences - Wrap Mouse' option
Added 'Menu - Camera - Zoom in/out' operators
Added support for grouping layers
Added support for setting group opacity
Added support for node groups
Added support for packing layer textures
Added Browser tab to status bar
Added Script tab to status bar
Added Console tab to status bar
Added Fonts tab to status bar
Added brush radius increase and decrease shortcuts
Added 'Bake tool - Vertex Color' baker
Added stencil mask support via brush nodes
Added lazy mouse support via brush nodes
Added directional brush support via brush nodes
Added 'Random' brush node for creating jitter
Added 'Preferences - Usage - Live Brush Preview' option
Added Theme tab to preferences
Added localization support
Added shortcut for swapping brush and eraser
Added shortcut for hiding stencil
Added 'Preferences - Pen - sensitivity' option
Added 'Preferences - Interface - Camera Speed' option
Added 'Preferences - Interface - Direction to Zoom' option
Added 'Preferences - Interface - Restore - Import...' option for importing config file
Added 'Preferences - Usage - Default Workspace' option
Added 'Preferences - Usage - Dilate' option
Added 'minecraft' and 'unigine' export presets
Added 'Material' workspace for composing and exporting materials
Added 'Bake' workspace for texture baking
Added option to bake material into textures
Added option to export layer mask into file
Added 'Mobile' renderer option to 'Preferences - Viewport'
Added font previews to Fonts tab
Added 'hello_node_brush' plugin - custom brush node
Added 'viewport_celshade' plugin - custom viewport shader
Added 'texture_breakdown' plugin
Added 'tiled' option to 2D view
Added 'rotate_envmap' operator
Added layer and mask clear operators
Added mask invert operator
Added 'File - Open Recent...' list
Added 'File - New Project... - Aspect Ratio' option
Added 'File - Reimport Textures' operator
Added new toolbar icons (courtesy of Sven Möller)
Added 'Material' node - reference other materials inside material
Added 'Curvature Bake' node - access curvature in material nodes
Added support for Vulkan
Added experimental VKRT (Vulkan raytracing) build for Linux
Added live preview of the selected node in node editor
Added fill masks
Added decal layers
Added 'Warp', 'Shader', 'Script' material nodes
Added 'Picker' material node
Added decal mask feature - hold ctrl to use decal as brush mask
Added 'Menu - Viewport - Toggle Fullscreen'
Added 'Atlases' tab to texture export
Added 'Open Containing Directory...' button to textures tab
Added visibility control to Meshes tab
Added option to pack assets into .arm file when exporting materials or brushes
Added Swatches tab
Added 'Meshes tab - Geometry to Origin'
Added normal and height blending for layers
Added 'Preferences - Usage - Default Layer Resolution' option
Added color space option for texture export
Added directional (smudge) option for blur tool
Added 'UV Island' fill mode
Added drag and drop support on iOS and Android
Improved utf8 path handling on Windows
Improved viewing individual layer channels in 2D view
Improved error logging
Improved ray-tracing performance, reduced memory usage
Improved path-traced viewport mode
Improved brush radius scaling using a pen
Improved painting in 2D view
Improved layer management
Improved command line arguments
Improved touch input
Improved color wheel (RGB, HSV, Hex input)
Improved opacity handling for fill layers
Improved 'Blur' material node
Improved paint dilation
Improved 'Parse Transforms' option for .fbx format
Improved .obj exporter
Improved 'Bump' material node
Improved nodes undo
Improved interface layout
Fixed clone tool usage in 2D view
Fixed network path handling on Windows
Fixed running from protected path on Windows
Fixed parsing of input sockets for custom nodes
Fixed 3D cursor positioning when normal map is painted
Fixed per-layer channel visibility
Fixed emission channel export
Fixed decal edge filtering
Fixed setting a mouse cursor on Linux
Fixed saving font assets in project file
Fixed support for non-square decals and stencils
Fixed importing geometry containing concave polygons
Fixed distract-free mode UI align
Fixed color space management for image nodes
'Paint' tab is now '3D View' tab
Use drag and drop to reorder layers
Use vertical tabs in preferences window
Use vertex colors in materials via attribute material node
Import vertex color data via .fbx and .blend formats
Import and export for brushes
Import brush from texture
Draw brush preview icons
macOS builds are now signed
macOS builds are now powered by Metal
macOS builds are now universal (arm64 + x64)
macOS retina support
Initial VR support
Initial support for high refresh rate displays
Display asset name in tooltip
Faster envmap import
Save camera in project file
Double click to rename layer
Atlases will show up in mesh filters
Scripting / expressions for UI value input ('4.4 * Math.PI')
Sleep when window is inactive
Auto-enable plugin on associated file import
Remember window layout
Base layer acts like regular layer
Multi-pass layer draw - show up to 256 layers in viewport at once
Show checker background for transparent layer
Show .arm material previews in Browser tab
Show uv map of selected object in 2D view
Check out Blender live-link
Check out Maya live-link


8.3. The Pattern.compile() FactoryA regular-expression Pattern object is created with Pattern.compile. The first argument is a string to be interpreted as a regular expression (☞ 101). The compile-time options shown in Table 8-3 on page 368 can be provided as a second argument. Here's a snippet that creates a pattern from the string in the variable myRegex, to be applied in a case-insensitive manner: Pattern pat = Pattern.compile(myRegex, Pattern.CASE_INSENSITIVE | Pattern.UNICODE_CASE); The predefined pattern constants used to specify the compile options (such as Pattern.CASE_INSENSITIVE) can be a bit unwieldy,[] so I tend to use inline mode modifiers (☞ 110) when practical. Examples include (?x) on page 378, and (?s) and several (?i) on page 399.
However, keep in mind that the same verbosity that makes these predefined constants "unwieldy" can make them easier to understand to the novice. Were I to have unlimited page width, I might use Pattern.UNIX_LINES | Pattern.CASE_INSENSITIVE as the second argument to the Pattern.compile on page 384, rather than prepend the possibly unclear (?id) at the start of the regex. As the method name implies, this is the step in which a regular expression is analyzed and compiled into an internal form. Chapter 6 looks at this in great detail (☞ 241), but in short, the pattern compilation can often be the most time-consuming step in the whole check-a-string-with-a-regex process. That's why there are separate compile and apply steps in the first placeit allows you to precompile a regex for later use over and over. Of course, if a regex is going to be compiled and used only once, it doesn't matter when it's compiled, but when applying a regex many times (for example, to each line read from a file), it makes a lot of sense to precompile into a Pattern object. A call to Pattern.compile can throw two kinds of exceptions: an invalid regular expression throws PatternSyntaxException, and an invalid option value throws IllegalArgumentException. 8.3.1. Pattern's matcher methodPatterns offer some convenience methods that we'll look at in a later section (☞ 394), but for the most part, all the work is done through just one method: matcher. It accepts a single argument: the string to search.[] It doesn't actually apply the regex, but prepares the pattern to be applied to a specific string. The matcher method returns a Matcher object.
|


About
I am a recent UC Berkeley graduate where I studied Applied Mathematics, Data Science and City Planning.
Last summer I was a Software Engineering Intern on the Data Science team at Stem, Inc. working on optimization and forecasting for Energy Superintelligence.
Recently I was a researcher at the Energy, Controls and Applications Lab working under Scott Moura on Reinforcement Learning for battery fast charging.
Currently I am with the Helix Storage team at Sunpower Corporation
On this blog, I'll be sharing my thoughts on Deep Learning, Smart Cities and the College Experience.
Links:
,
Email: sraising@berkeley.edu.


| MATLAB 文件帮助: cv.EM | 查看 cv.EM 的代码 | Index |
Expectation Maximization Algorithm
The class implements the Expectation Maximization algorithm. This is an algorithm to train Gaussian Mixture Models (GMM).
The Expectation Maximization(EM) algorithm estimates the parameters of the multivariate probability density function in the form of a Gaussian mixture distribution with a specified number of mixtures.
Consider the set of the N
feature vectors {x1,x2,...,xN}
from a
d
-dimensional Euclidean space drawn from a Gaussian mixture:
p(x;a_k,S_k,PI_k) = sum_{k=1..m} PI_k * p_k(x),
PI_k>=0, sum_{k=1..m}(PI_k)=1
p_k(x) = phi(x;a_k,S_k)
= 1/((2*pi)^(d/2) * |Sk|^(1/2)) *
exp(-0.5 * (x - a_k)' * inv(S_k) * (x - a_k))
where m
is the number of mixtures, p_k
is the normal distribution
density with the mean a_k
and covariance matrix S_k
, PI_k
is the
weight of the k-th mixture. Given the number of mixtures m
and the
samples xi, i=1..N
the algorithm finds the maximum-likelihood
estimates (MLE) of all the mixture parameters, that is, a_k
, S_k
and
PI_k
:
L(x,theta) = logp(x,theta)
= sum_{i=1..N} log(sum_{k=1..m} PI_k * p_k(x))
-> argmax_{theta IN THETA},
THETA = {(a_k,S_k,PI_k): a_k IN R^d, S_k=S_k'>0, S_k IN R^(dxd),
PI_k>=0, sum_{k=1..m}(PI_k)=1}
The EM algorithm is an iterative procedure. Each iteration includes two
steps. At the first step (Expectation step or E-step), you find a
probability p_{i,k}
(denoted alpha_{i,k}
in the formula below) of
sample i
to belong to mixture k
using the currently available
mixture parameter estimates:
alpha_{k,i} = ( PI_k * phi(x;a_k,S_k) ) /
sum_{j=1..m} (PI_j * phi(x;a_j,S_j))
At the second step (Maximization step or M-step), the mixture parameter estimates are refined using the computed probabilities:
PI_k = (1/N) * sum_{i=1..N}(alpha_{k,i})
a_k = sum_{i=1..N}(alpha_{k,i}*x_i) / sum_{i=1..N}(alpha_{k,i})
S_k = sum_{i=1..N}(alpha_{k,i} * (x_i - a_k)*(x_i - a_k)') /
sum_{i=1..N}(alpha_{k,i})
Alternatively, the algorithm may start with the M-step when the initial
values for p_{i,k}
can be provided. Another alternative when p_{i,k}
are unknown is to use a simpler clustering algorithm to pre-cluster the
input samples and thus obtain initial p_{i,k}
. Often (including
machine learning) the k-means algorithm is used for that purpose.
One of the main problems of the EM algorithm is a large number of
parameters to estimate. The majority of the parameters reside in
covariance matrices, which are dxd
elements each where d
is the
feature space dimensionality. However, in many practical problems, the
covariance matrices are close to diagonal or even to mu_k * I
, where
I
is an identity matrix and mu_k
is a mixture-dependent "scale"
parameter. So, a robust computation scheme could start with harder
constraints on the covariance matrices and then use the estimated
parameters as an input for a less constrained optimization problem
(often a diagonal covariance matrix is already a good enough
approximation).
[Bilmes98]:
J. A. Bilmes. "A Gentle Tutorial of the EM Algorithm and its Application to Parameter Estimation for Gaussian Mixture and Hidden Markov Models". Technical Report TR-97-021, International Computer Science Institute and Computer Science Division, University of California at Berkeley, April 1998.
| Superclasses | handle |
| Sealed | false |
| Construct on load | false |
| EM | EM constructor |
| ClustersNumber | The number of mixture components in the Gaussian mixture model. |
| CovarianceMatrixType | Constraint on covariance matrices which defines type of matrices. |
| TermCriteria | The termination criteria of the EM algorithm. |
| id | Object ID |
| addlistener | Add listener for event. | |
| calcError | Computes error on the training or test dataset | |
| clear | Clears the algorithm state | |
| delete | Destructor | |
| empty | Returns true if the algorithm is empty | |
| eq | == (EQ) Test handle equality. | |
| findobj | Find objects matching specified conditions. | |
| findprop | Find property of MATLAB handle object. | |
| ge | >= (GE) Greater than or equal relation for handles. | |
| getCovs | Returns covariation matrices | |
| getDefaultName | Returns the algorithm string identifier | |
| getMeans | Returns the cluster centers (means of the Gaussian mixture) | |
| getVarCount | Returns the number of variables in training samples | |
| getWeights | Returns weights of the mixtures | |
| gt | > (GT) Greater than relation for handles. | |
| isClassifier | Returns true if the model is a classifier | |
| isTrained | Returns true if the model is trained | |
| Sealed | isvalid | Test handle validity. |
| le | <= (LE) Less than or equal relation for handles. | |
| load | Loads algorithm from a file or a string | |
| lt | < (LT) Less than relation for handles. | |
| ne | ~= (NE) Not equal relation for handles. | |
| notify | Notify listeners of event. | |
| predict | Predicts response(s) for the provided sample(s) | |
| predict2 | Returns log-likelihood values and indices of the most probable mixture component for given samples | |
| save | Saves the algorithm parameters to a file or a string | |
| train | Estimates the Gaussian mixture parameters from a samples set | |
| trainE | Estimate the Gaussian mixture parameters from a samples set, starting from the Expectation step | |
| trainEM | Estimate the Gaussian mixture parameters from a samples set | |
| trainM | Estimate the Gaussian mixture parameters from a samples set, starting from the Maximization step |
| ObjectBeingDestroyed | Notifies listeners that a particular object has been destroyed. |


|
Paper Airplane |
|
|
Table of Contents |
Alex Vassallo - June 2008 |
|
This project took place while serving on duty during Operation Iraqi Freedom. The material used for construction was nothing more than the thin cardboard found on the back of our notepads, the lined paper from in it, superglue from the supply tent, paperclips, coffee straws, thumbtacks, cigarette cellophane, the hardware found in retractable pens. The electrical components were all scavanged from broken devices, such as microwaves, printers, etc. The one exception to local material was the 6 channel R/C transmitter that a family member had specially shipped to me.
The design began with detailed and scaled drawings done on graph paper. The airfoil chosen was a Clark 'Y' airfoil due to the high lift, slow stall speed, and overall simplicity requirements. The width and length of the wings, (chord and wingspan), were designed to be short and stubby to allow for large error tolerances during construction and responsiveness of controls during flight, while maintaining appropriate surface area for the projected weight. The tail section was placed slightly closer to the center of gravity than normal, to allow for more responsive controls rather than overall stability during straight flight. The terrain that this craft would be landing on would normally be dirt and rock, so aluminum (soda cans) covered landing skids rather than wheels were chosen, and would be retractable due to the high drag they create. Lastly, because we had just captured a small mouse who had been caught attempting to steal from our food stash, it was decided that the mouse should 'pilot' this craft. Since no animals were harmed during this project, an ejection seat was designed in the case of catastrophic failure.
|
The original sketches from Iraq that survived |
These are the basic components for construction. Bulkheads and ribs were carefully cut out from the cardboard backings of my notepad books, and were typically 3-4 layers thick each. The spars and stringers were made by carefully drawing lines exactly 1/4 inch apart, and folding the paper into tight squares while using stick glue to harden it into place.
|
Fun fact: During the construction of this airplane, I built a side project to help out our late night gate guards. The electronics shown in these two top pictures was scavenged from a broken R/C car. The transmitter was combined with parts from a nightlight to transmit when a vehicle's headlights shined upon it, and the receiver portion was combined with a peizo speaker to alert them when a vehicle was approaching. |
|
The overall flow of the ejection seat process. |
Our pilot was held in place by a custom suit that was tailored out of 550 chord and had a strip of velcro sewn into the back. The parachute was found inside of a defused mortar flare round. |
|
The ejection seat sat on top of a platform that could be raised by pulling on a set of four strings. These strings were later attached to large rubber bands with a lock and release system to hold it under tension and explosively release. The inner parts of a pen were used as string guides to eliminate friction. The dual 9v batteries located in the nose were pulled forward during the ejection process to counter-balance the immediate loss of pilot weight.
The forward retractable landing skid was constructed from outer pen casings and thumbtacks. It was designed to lock in place when fully extended and the small cardboard peices were soaked in superglue for strength. The servo attachment point is located behind the blue power switch and cannot be seen. The actual skid itself will not appear until later pictures. The string shown is for the ejection platform from the last step, and notice the nose and tail sections have not been permanently glued together yet.
The wings were constructed on a large and perfectly flat surface. The center of the wing is reinforced by extra cardboard to prevent them folding up during flight. Large ailerons are controlled by using coffee straws and paperclips as pushrods, which attach to a common servo. Bellcranks were built using superglue soaked cardboard to translate pushrods 90 degrees to the ailerons.
The leading edge was added by rolling cardboard over the ribs. This actually made the wing structure incredibly strong, much stronger than expected. Wingtip plates were also added to reduce the wing tip vortex produced by the large chord of these wings.
It may be noted that the color of the paper has changed to white. During construction, I was relocated to another station, which required me to dismantle most of the parts I had built. This new location had white notepads which I found much more aesthetically pleasing anyways. I reconstructed the tail section with this new paper. The elevator was built with a split surface design connected to a servo via coffee straws and paperclips, and the addition of LED navigation lights began. Cardboard was used to strengthen leading and trailing surfaces.
And now the more complicated peices. Here is the latch that holds the canopy down.
http://www.alexvassallo.com/Projects/IraqAirplane/Video/CanopyRelease.avi
Here is the ejection seat being built with a breakaway parachute box, a timer, and a PWM servo controller.
| Large circuit was later reduced in size to fit pilot and a small battery fit into the corner |
Here are the latches that held back the huge tension that ejected the seat. The latches were release by activating a motor connected to a gear box, (salvaged from a R/C car), which pulled a common release string for both sides. These parts were the most difficult to build. The release strings had routing tubes glued into an exact alignment, which rested in this catch.
Servo bay, receiver, motor, motor controller, and forward landing skid. The propeller shown is only for testing. The motor which pulls the ejection seat release will be mounted into the open bay shown in the bottom right picture.
Folding propeller blades. Superglue hardened cardboard with plastic tube hinge points.
This onboard circuit served many purposes. It held 5v regulators needed to reduce the voltage of the 9v batteries. It contained a 556 chip (dual 555) which controlled a blinking strobe light, and triggered the 1st phase of the ejection process. The 4 volt drop across the 5v regulator (7805) produced enough heat to require a cooling fan.
Rear retractable landing skids. Like the front landing skid, these also lock into place when fully extended.
http://www.alexvassallo.com/Projects/IraqAirplane/Video/MainSkids.avi
The navigation lights followed the standard convention for aircraft. Green on the right, red on the left, red on the tail, a white strobe on the belly, and two super bright landing lights located inside of the forward skid compartment, which only turned on when the landing skids were fully extended..
http://www.alexvassallo.com/Projects/IraqAirplane/Video/Lights.avi
This latch was designed to hold down a large spring-loaded parachute box which was to be deployed in the event of radio failure. Military bases commonly used radio jammers to prevent missile and IED attacks. These jammers could completely disrupt radio communication with the airplane. This latch was designed as a multi-stage locking latch which could hold back a huge amount of tension, but be easily released by the small force applied by a microservo.
http://www.alexvassallo.com/Projects/IraqAirplane/Video/ParachuteRelease.avi
All the peices coming together. The wings connected to the fuselage via two large platic bolts, and a set of male and female connectors which perfectly aligned with each other. Two square blocks on the wing mated with two square holes on top of the fuselage to allow for easy installation.
http://www.alexvassallo.com/Projects/IraqAirplane/Video/Walkthrough.avi
http://www.alexvassallo.com/Projects/IraqAirplane/Video/RadioTest.avi
The majority of the aircraft was now covered with normal white printer paper from the supply tent. The batteries for the motor were built into a disposable pod which sat streamlined on the belly, and made contact with two large metal connectors. Due to weight, this battery pack was designed to be jettison before landing. The canopy openings were covered by cellophane from a pack of cigarettes. The landing skids were covered with aluminum from a soda can. A curved nose cone was carefully built by soaking cardboard in water and allowing it to dry around a mold, then applying superglue to harden it into form. All systems appeared to be working as expected. Then we received notice that our tour in Iraq was complete. The aircraft was carefully packed up in a custom made box, tightly secured, and then mistaken as a malicious package and mostly destroyed. Here are the pictures of its final condition.


Hunt to find two women suspected of duping OAP, 91, in cruel Sutton Coldfield con
Victim was targeted by two women who knocked her door in Eachelhurst Road in Walmley, Sutton Coldfield
by Nick HornerA ‘heartbroken’ granddaughter of a 91-year-old OAP targeted in a distraction burglary has urged the public to help police catch those responsible.
Police say two women made repeated attempts to get the elderly Eachelhurst Road resident in Walmley, Sutton Coldfield, to answer her door at around 5.30pm on Wednesday (November 6).
On the third attempt the pensioner let the women in her home – only for money to be stolen from her purse before the women left.
The granddaughter of the 91-year-old victim, who asked not to be named, said: “I am devastated and heartbroken. It’s disgusting. These people must be inhuman to do this to target a woman of this age.
“These two ladies approached my nan’s house and came up the drive and tried knocking on the door. Then they left. They came back again and went again.
“The third time they came back they were hammering on the door. They were laughing and acting cool and collected. They were making jokes and adjusting their scarves.

“Then my nan answered the and you can hear her say ‘not today’.
“But they carry on and she lets them in the house.”
The upset 32-year-old added: “Family members visit my nan every day. We found out that the women have taken money from my nan’s purse.
“I don’t know what happened when they went in the house and I don’t want anyone else to go through it.
“My nan has lived in Sutton all her life and in that house for years and years
“It just goes to show what kind of low lives they are to do this to her.”
West Midlands Police confirmed they are investigating the incident.
A spokeswoman for the force said: “Police are investigating a distraction burglary in Eachelhurst Road in the Walmley area of Sutton Coldfield at around 5.30pm on Wednesday (November 6).
“Two women knocked on a 91-year-old woman’s house and entered before leaving with cash from her purse.
“Enquiries continue and anyone with information is asked to contact us via Live Chat at www.west-midlands.police.uk between 8am and midnight, or call 101 anytime.
“To remain anonymous please call Crimestoppers on 0800 555 111. Quote log number 2099 of 6 November.”


Bermuda Biological Station for Research. Everyone wants to know about the weather. This page is a quick reference to weather resources from BBSR and elswhere on the Internet, with particular attention to conditions in Bermuda and the North Atlantic.
Federal Emergency Management Agency: preparing for a disaster. Disasters take many forms. They're caused by gale force winds, sudden floods, releases of deadly chemicals, fire, ice, even upheavals of the earth itself. When disaster strikes, the best protection is knowing what to do.
Florida EXPLORES!. Implementing the NOAA Direct Readout Satellite Data Program into Florida's K-12 classrooms.
The Globe Program. An international environmental education and science partnership. Global Learning and Observations to Benefit the Environment (GLOBE) is a worldwide network of students, teachers, and scientists working together to study and understand the global environment.
National Hurricane Center. Maintains a countinuous watch on tropical cyclones over the Atlantic, Caribbean,Gulf of Mexico, and Eastern Pacific from 15 May through November 30.
National Oceanic and Atmospheric Administration Hurricane Research Division. The Hurricane Research Division (HRD) is a part of the Atlantic Oceanographic and Meteorological Laboratory (AOML) within the National Oceanic and Atmospheric Administration (NOAA) of the United States Department of Commerce. HRD is NOAA's primary focus for studies of tropical cyclones and convective systems.
New Jersey Online Weather. Current conditions and five-day forecast for major US cities.
Sun Sentinel's Hurricane '95. Hurricane preparedness information provided by the Fort Lauderdale Sun Sentinel.
WXP: Current Data and Forecasts. This map allows you to get 6 hours worth of surface data along with the current forecast for that city.
Yahoo's Meteorology Hotlist. A continuously updated list of meteorological information.
|
|
|
| Hurricanes! Menu | Museum Menu |


Classes
If you have to learn just one thing about Ruby, what you probably should know is that everything you manipulate in Ruby is an object. This highlights the importance of classes, since every object in Ruby is generated from a class.
In object-oriented design, you are normally looking to model concepts from the real world. In other words: you identify external things and make them classes in your code.


public final class HawleyRetainer
extends java.lang.Object
Bundle
. It utilizes a retained fragment
implementing the Map
interface to provide identical
operations to a Bundle
. It does not behave like a
Singleton class as it observes the lifecycle of its bound Activity
,
thus, it destroys itself accordingly. This characteristic is useful to
prevent fields being retained in memory beyond the user-initiated destruction
of an Activity
like a Singleton while still
being retained during configuration changes. Utilize this class as a means
of simplifying the retention of certain expensive operations beyond
configuration changes while obeying user-initiated lifecycle events.
Nonetheless, as the retained objects cannot be parceled nor serialized, they
can still be claimed by the garbage collector resulting in the loss of data.
public class ExampleActivity extends Activity {
@HawleyRetain
Observable mNetworkResponse;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
HawleyRetainer.restoreRetainedObjectMap(this, this);
}
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
HawleyRetainer.saveRetainedObjectMap(this, this);
}
}
The methods can be called upon any target class as long as an Activity can
be specified along with it. The retainer will recursively traverse the
inheritance graph to inject all annotated fields.
Please remember that the support library variants of Fragment
and Activity
extend from them.
As a result, the methods do not have overloads.| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
RETAINER_ANDROID_PREFIX |
static java.lang.String |
RETAINER_JAVA_PREFIX |
static java.lang.String |
RETAINER_SUFFIX |
static java.lang.String |
TAG |
| Modifier and Type | Method and Description |
|---|---|
static <T> void |
restoreRetainedObjectMap(T target,
android.app.Activity activity)
Restore all annotated fields from an unique internal retained fragment
committed to the specified
Activity . |
static <T> void |
saveRetainedObjectMap(T target,
android.app.Activity activity)
Save all annotated fields into an unique internal retained fragment
committed to the specified
Activity . |
public static final java.lang.String TAG
public static final java.lang.String RETAINER_SUFFIX
public static final java.lang.String RETAINER_ANDROID_PREFIX
public static final java.lang.String RETAINER_JAVA_PREFIX
public static <T> void saveRetainedObjectMap(T target, android.app.Activity activity)
Activity
.
Note: the garbage collector may reclaim the objects after this method is
called.target
- Target class from which a recursive traversal of its inheritance graph will be performed to map annotated fields.activity
- Activity
utilized to provide the FragmentManager
to commit the internal retained fragment map.public static <T> void restoreRetainedObjectMap(T target, android.app.Activity activity)
Activity
.
Note: the garbage collector may reclaim the objects before this method
is called.target
- Target class from which a recursive traversal of its inheritance graph will be performed to map annotated fields.activity
- Activity utilized to provide the FragmentManager
to commit the internal retained fragment map.


UK to lead next-generation radiotherapy research
The UK will be transformed into an international radiotherapy research hub with the creation of a new £56 million network, Cancer Research UK has announced.
The network, Cancer Research UK RadNet, is the charity’s largest ever investment in the field.
Its aim is to accelerate the development of advanced radiotherapy techniques, and challenge the boundaries of the treatment through exploratory projects.
It will see seven centres across the country unite: the Universities of Cambridge, Glasgow, Leeds, Manchester and Oxford, the Cancer Research UK City of London Centre and The Institute of Cancer Research, London in partnership with The Royal Marsden NHS Foundation Trust.
The launch of our network marks a new era of radiotherapy research in the UK
Michelle Mitchell, chief executive of Cancer Research UK, said: “Radiotherapy is a cornerstone of cancer medicine, with around three in 10 patients receiving it as part of their primary treatment.
“The launch of our network marks a new era of radiotherapy research in the UK.
“Scientists will combine advances in our understanding of cancer biology with cutting-edge technology to make this treatment more precise and effective than ever before.”
Radiotherapy works by targeting tumours with x-ray radiation, killing cancer cells by irreversibly damaging their DNA.
Researchers in the new network will also focus on reducing the long-term side effects associated with the treatment.
More than 130,000 patients are treated with radiotherapy on the NHS every year.
By optimising and personalising radiotherapy, Cancer Research UK RadNet aims to improve cancer survival.
It will work towards developing new techniques for delivering radiotherapy and investigate new radiotherapy-drug combinations, including immunotherapies.
Among other things, the research will look at exploring Flash radiotherapy, where pulses of high-dose of radiation are delivered in a fraction of a second.
It will also conduct further investigations into proton beam therapy, and ways to overcome hypoxia – low oxygen levels within tumours, resulting from rapid cancer growth that blood vessels can’t keep up with.
Some £13 million has been allocated to form new research groups and fund additional PhD students in Manchester, London and Cambridge.
The network will promote collaboration between diverse scientific fields, with a share of £4 million available to all centres for joint research projects, conferences and secondments between locations.


This website is open source and entirely made with Github Pages and bare-bones HTML, CSS and TS. If you feel like contributing with code or discussions, or if you want to look for stuff you can't find through the current UI/UX, do visit its.
My old content will never be deleted. What matters is evolution, not static state, even if what I've once said becomes cringe or shameful.
You can resize the width of the page by using the small handle at the bottom right corner of any page.


Berkeley DB: DbInfo::set_h_hash
DbInfo::set_h_hash
#include <db_cxx.h>
typedef u_int32_t (*h_hash_fcn)(const void *, u_int32_t);
void DbInfo::set_h_hash(h_hash_fcn);
Description
Set a user defined hash method; if no hash method is specified,
a default hash method is used.
Since no hash method performs equally well on all possible data,
the user may find that the built-in hash method performs poorly with
a particular data set.
User specified hash functions must take a pointer to a byte string and
a length as arguments and return a value of type u_int32_t.
If a hash method is specified, hash_open will attempt to determine
if the hash method specified is the same as the one with which the database
was created, and will fail if it detects that it is not.
Class
DbInfo
See Also
DbInfo::set_bt_compare,
DbInfo::set_bt_maxkey,
DbInfo::set_bt_minkey,
DbInfo::set_bt_prefix,
DbInfo::set_cachesize,
DbInfo::set_compare,
DbInfo::set_flags,
DbInfo::set_h_ffactor,
DbInfo::set_h_hash,
DbInfo::set_h_nelem,
DbInfo::set_lorder,
DbInfo::set_malloc,
DbInfo::set_pagesize,
DbInfo::set_re_delim,
DbInfo::set_re_len,
DbInfo::set_re_pad
and
DbInfo::set_re_source.


Man arrested after camera found in bathroom at Texas elementary school
EL CAMPO, Texas (KTRK/CNN) - A contract food worker for a Texas elementary school faces child porn charges after a hidden camera was found in the boys’ bathroom.
Police arrested 42-year-old Scott Gelardi as he arrived for work Tuesday at Northside Elementary School. He is suspected of hiding a camera in a boys’ bathroom at the school, which allegedly caught video and photographs of students.
“They’re just kids. They’re just innocent kids coming to school to learn,” said grandparent Cathy Trevino.
Maintenance workers found the camera in the bathroom Monday. No children in the footage have been identified because none of their faces were seen.
Police searched Gelardi’s home and the rest of the school. They say they have no evidence of any physical contact with students. No other devices were found in the school.
Gelardi is charged with possession of child pornography, a third-degree felony, and possession of child pornography with the intent to promote, a second-degree felony.
The El Campo Independent School District says Gelardi was a third-party contractor working for the school. They say they conduct background checks on anyone working at their schools.
“Reevaluate your staff. These are somebody else’s kids. These are not your children, but it is your job, your obligation to make sure these kids are safe,” Trevino said.
Earlier this year, the district said a substitute teacher was fired after filming pornography inside a classroom at El Campo High School. Police also investigated a food worker at another school, who was allegedly sending inappropriate messages to students.


MySQL
Support for the MySQL database.
Overview
For normal SQLAlchemy usage, importing this module is unnecessary. It will be
loaded on-demand when a MySQL connection is needed. The generic column types
like String and Integer will
automatically be adapted to the optimal matching MySQL column type.
But if you would like to use one of the MySQL-specific or enhanced column
types when creating tables with your Table definitions,
then you will need to import them from this module:
from sqlalchemy.databases import mysql
Table('mytable', metadata,
Column('id', Integer, primary_key=True),
Column('ittybittyblob', mysql.MSTinyBlob),
Column('biggy', mysql.MSBigInteger(unsigned=True)))
All standard MySQL column types are supported. The OpenGIS types are
available for use via table reflection but have no special support or mapping
to Python classes. If you’re using these types and have opinions about how
OpenGIS can be smartly integrated into SQLAlchemy please join the mailing
list!
Supported Versions and Features
SQLAlchemy supports 6 major MySQL versions: 3.23, 4.0, 4.1, 5.0, 5.1 and 6.0,
with capabilities increasing with more modern servers.
Versions 4.1 and higher support the basic SQL functionality that SQLAlchemy
uses in the ORM and SQL expressions. These versions pass the applicable tests
in the suite 100%. No heroic measures are taken to work around major missing
SQL features- if your server version does not support sub-selects, for
example, they won’t work in SQLAlchemy either.
Currently, the only DB-API driver supported is MySQL-Python (also referred to
as MySQLdb). Either 1.2.1 or 1.2.2 are recommended. The alpha, beta and
gamma releases of 1.2.1 and 1.2.2 should be avoided. Support for Jython and
IronPython is planned.
| Feature |
Minimum Version |
| sqlalchemy.orm |
4.1.1 |
| Table Reflection |
3.23.x |
| DDL Generation |
4.1.1 |
| utf8/Full Unicode Connections |
4.1.1 |
| Transactions |
3.23.15 |
| Two-Phase Transactions |
5.0.3 |
| Nested Transactions |
5.0.3 |
See the official MySQL documentation for detailed information about features
supported in any given server release.
Character Sets
Many MySQL server installations default to a latin1 encoding for client
connections. All data sent through the connection will be converted into
latin1, even if you have utf8 or another character set on your tables
and columns. With versions 4.1 and higher, you can change the connection
character set either through server configuration or by including the
charset parameter in the URL used for create_engine. The charset
option is passed through to MySQL-Python and has the side-effect of also
enabling use_unicode in the driver by default. For regular encoded
strings, also pass use_unicode=0 in the connection arguments:
# set client encoding to utf8; all strings come back as unicode
create_engine('mysql:///mydb?charset=utf8')
# set client encoding to utf8; all strings come back as utf8 str
create_engine('mysql:///mydb?charset=utf8&use_unicode=0')
Storage Engines
Most MySQL server installations have a default table type of MyISAM, a
non-transactional table type. During a transaction, non-transactional storage
engines do not participate and continue to store table changes in autocommit
mode. For fully atomic transactions, all participating tables must use a
transactional engine such as InnoDB, Falcon, SolidDB, PBXT, etc.
Storage engines can be elected when creating tables in SQLAlchemy by supplying
a mysql_engine='whatever' to the Table constructor. Any MySQL table
creation option can be specified in this syntax:
Table('mytable', metadata,
Column('data', String(32)),
mysql_engine='InnoDB',
mysql_charset='utf8'
)
Keys
Not all MySQL storage engines support foreign keys. For MyISAM and
similar engines, the information loaded by table reflection will not include
foreign keys. For these tables, you may supply a
ForeignKeyConstraint at reflection time:
Table('mytable', metadata,
ForeignKeyConstraint(['other_id'], ['othertable.other_id']),
autoload=True
)
When creating tables, SQLAlchemy will automatically set AUTO_INCREMENT` on
an integer primary key column:
>>> t = Table('mytable', metadata,
... Column('mytable_id', Integer, primary_key=True)
... )
>>> t.create()
CREATE TABLE mytable (
id INTEGER NOT NULL AUTO_INCREMENT,
PRIMARY KEY (id)
)
You can disable this behavior by supplying autoincrement=False to the
Column. This flag can also be used to enable
auto-increment on a secondary column in a multi-column key for some storage
engines:
Table('mytable', metadata,
Column('gid', Integer, primary_key=True, autoincrement=False),
Column('id', Integer, primary_key=True)
)
SQL Mode
MySQL SQL modes are supported. Modes that enable ANSI_QUOTES (such as
ANSI) require an engine option to modify SQLAlchemy’s quoting style.
When using an ANSI-quoting mode, supply use_ansiquotes=True when
creating your Engine:
create_engine('mysql://localhost/test', use_ansiquotes=True)
This is an engine-wide option and is not toggleable on a per-connection basis.
SQLAlchemy does not presume to SET sql_mode for you with this option. For
the best performance, set the quoting style server-wide in my.cnf or by
supplying --sql-mode to mysqld. You can also use a
sqlalchemy.pool.Pool listener hook to issue a SET SESSION
sql_mode='...' on connect to configure each connection.
If you do not specify use_ansiquotes, the regular MySQL quoting style is
used by default.
If you do issue a SET sql_mode through SQLAlchemy, the dialect must be
updated if the quoting style is changed. Again, this change will affect all
connections:
connection.execute('SET sql_mode="ansi"')
connection.dialect.use_ansiquotes = True
MySQL SQL Extensions
Many of the MySQL SQL extensions are handled through SQLAlchemy’s generic
function and operator support:
table.select(table.c.password==func.md5('plaintext'))
table.select(table.c.username.op('regexp')('^[a-d]'))
And of course any valid MySQL statement can be executed as a string as well.
Some limited direct support for MySQL extensions to SQL is currently
available.
SELECT pragma:
select(..., prefixes=['HIGH_PRIORITY', 'SQL_SMALL_RESULT'])
UPDATE with LIMIT:
update(..., mysql_limit=10)
Troubleshooting
If you have problems that seem server related, first check that you are
using the most recent stable MySQL-Python package available. The Database
Notes page on the wiki at http://www.sqlalchemy.org is a good resource for
timely information affecting MySQL in SQLAlchemy.
MySQL Column Types
-
class sqlalchemy.databases.mysql.MSNumeric(precision=10, scale=2, asdecimal=True, **kw)
Bases: sqlalchemy.types.Numeric, sqlalchemy.databases.mysql._NumericType
MySQL NUMERIC type.
-
__init__(precision=10, scale=2, asdecimal=True, **kw)
Construct a NUMERIC.
| Parameters: |
- precision – Total digits in this number. If scale and precision
are both None, values are stored to limits allowed by the server.
- scale – The number of digits after the decimal point.
- unsigned – a boolean, optional.
- zerofill – Optional. If true, values will be stored as strings
left-padded with zeros. Note that this does not effect the values
returned by the underlying database API, which continue to be
numeric.
|
-
class sqlalchemy.databases.mysql.MSDecimal(precision=10, scale=2, asdecimal=True, **kw)
Bases: sqlalchemy.databases.mysql.MSNumeric
MySQL DECIMAL type.
-
__init__(precision=10, scale=2, asdecimal=True, **kw)
Construct a DECIMAL.
| Parameters: |
- precision – Total digits in this number. If scale and precision
are both None, values are stored to limits allowed by the server.
- scale – The number of digits after the decimal point.
- unsigned – a boolean, optional.
- zerofill – Optional. If true, values will be stored as strings
left-padded with zeros. Note that this does not effect the values
returned by the underlying database API, which continue to be
numeric.
|
-
class sqlalchemy.databases.mysql.MSDouble(precision=None, scale=None, asdecimal=True, **kw)
Bases: sqlalchemy.types.Float, sqlalchemy.databases.mysql._NumericType
MySQL DOUBLE type.
-
__init__(precision=None, scale=None, asdecimal=True, **kw)
Construct a DOUBLE.
| Parameters: |
- precision – Total digits in this number. If scale and precision
are both None, values are stored to limits allowed by the server.
- scale – The number of digits after the decimal point.
- unsigned – a boolean, optional.
- zerofill – Optional. If true, values will be stored as strings
left-padded with zeros. Note that this does not effect the values
returned by the underlying database API, which continue to be
numeric.
|
-
class sqlalchemy.databases.mysql.MSReal(precision=None, scale=None, asdecimal=True, **kw)
Bases: sqlalchemy.databases.mysql.MSDouble
MySQL REAL type.
-
__init__(precision=None, scale=None, asdecimal=True, **kw)
Construct a REAL.
| Parameters: |
- precision – Total digits in this number. If scale and precision
are both None, values are stored to limits allowed by the server.
- scale – The number of digits after the decimal point.
- unsigned – a boolean, optional.
- zerofill – Optional. If true, values will be stored as strings
left-padded with zeros. Note that this does not effect the values
returned by the underlying database API, which continue to be
numeric.
|
-
class sqlalchemy.databases.mysql.MSFloat(precision=None, scale=None, asdecimal=False, **kw)
Bases: sqlalchemy.types.Float, sqlalchemy.databases.mysql._NumericType
MySQL FLOAT type.
-
__init__(precision=None, scale=None, asdecimal=False, **kw)
Construct a FLOAT.
| Parameters: |
- precision – Total digits in this number. If scale and precision
are both None, values are stored to limits allowed by the server.
- scale – The number of digits after the decimal point.
- unsigned – a boolean, optional.
- zerofill – Optional. If true, values will be stored as strings
left-padded with zeros. Note that this does not effect the values
returned by the underlying database API, which continue to be
numeric.
|
-
class sqlalchemy.databases.mysql.MSInteger(display_width=None, **kw)
Bases: sqlalchemy.types.Integer, sqlalchemy.databases.mysql._NumericType
MySQL INTEGER type.
-
__init__(display_width=None, **kw)
Construct an INTEGER.
| Parameters: |
- display_width – Optional, maximum display width for this number.
- unsigned – a boolean, optional.
- zerofill – Optional. If true, values will be stored as strings
left-padded with zeros. Note that this does not effect the values
returned by the underlying database API, which continue to be
numeric.
|
-
class sqlalchemy.databases.mysql.MSBigInteger(display_width=None, **kw)
Bases: sqlalchemy.databases.mysql.MSInteger
MySQL BIGINTEGER type.
-
__init__(display_width=None, **kw)
Construct a BIGINTEGER.
| Parameters: |
- display_width – Optional, maximum display width for this number.
- unsigned – a boolean, optional.
- zerofill – Optional. If true, values will be stored as strings
left-padded with zeros. Note that this does not effect the values
returned by the underlying database API, which continue to be
numeric.
|
-
class sqlalchemy.databases.mysql.MSMediumInteger(display_width=None, **kw)
Bases: sqlalchemy.databases.mysql.MSInteger
MySQL MEDIUMINTEGER type.
-
__init__(display_width=None, **kw)
Construct a MEDIUMINTEGER
| Parameters: |
- display_width – Optional, maximum display width for this number.
- unsigned – a boolean, optional.
- zerofill – Optional. If true, values will be stored as strings
left-padded with zeros. Note that this does not effect the values
returned by the underlying database API, which continue to be
numeric.
|
-
class sqlalchemy.databases.mysql.MSTinyInteger(display_width=None, **kw)
Bases: sqlalchemy.databases.mysql.MSInteger
MySQL TINYINT type.
-
__init__(display_width=None, **kw)
Construct a TINYINT.
Note: following the usual MySQL conventions, TINYINT(1) columns
reflected during Table(..., autoload=True) are treated as
Boolean columns.
| Parameters: |
- display_width – Optional, maximum display width for this number.
- unsigned – a boolean, optional.
- zerofill – Optional. If true, values will be stored as strings
left-padded with zeros. Note that this does not effect the values
returned by the underlying database API, which continue to be
numeric.
|
-
class sqlalchemy.databases.mysql.MSSmallInteger(display_width=None, **kw)
Bases: sqlalchemy.types.SmallInteger, sqlalchemy.databases.mysql.MSInteger
MySQL SMALLINTEGER type.
-
__init__(display_width=None, **kw)
Construct a SMALLINTEGER.
| Parameters: |
- display_width – Optional, maximum display width for this number.
- unsigned – a boolean, optional.
- zerofill – Optional. If true, values will be stored as strings
left-padded with zeros. Note that this does not effect the values
returned by the underlying database API, which continue to be
numeric.
|
-
class sqlalchemy.databases.mysql.MSBit(length=None)
Bases: sqlalchemy.types.TypeEngine
MySQL BIT type.
This type is for MySQL 5.0.3 or greater for MyISAM, and 5.0.5 or greater for
MyISAM, MEMORY, InnoDB and BDB. For older versions, use a MSTinyInteger()
type.
-
__init__(length=None)
Construct a BIT.
| Parameter: | length – Optional, number of bits. |
-
class sqlalchemy.databases.mysql.MSDateTime(timezone=False)
Bases: sqlalchemy.types.DateTime
MySQL DATETIME type.
-
__init__(timezone=False)
-
class sqlalchemy.databases.mysql.MSDate(*args, **kwargs)
Bases: sqlalchemy.types.Date
MySQL DATE type.
-
__init__(*args, **kwargs)
-
class sqlalchemy.databases.mysql.MSTime(timezone=False)
Bases: sqlalchemy.types.Time
MySQL TIME type.
-
__init__(timezone=False)
-
class sqlalchemy.databases.mysql.MSTimeStamp(timezone=False)
Bases: sqlalchemy.types.TIMESTAMP
MySQL TIMESTAMP type.
To signal the orm to automatically re-select modified rows to retrieve the
updated timestamp, add a server_default to your
Column specification:
from sqlalchemy.databases import mysql
Column('updated', mysql.MSTimeStamp,
server_default=sql.text('CURRENT_TIMESTAMP')
)
The full range of MySQL 4.1+ TIMESTAMP defaults can be specified in
the the default:
server_default=sql.text('CURRENT TIMESTAMP ON UPDATE CURRENT_TIMESTAMP')
-
__init__(timezone=False)
-
class sqlalchemy.databases.mysql.MSYear(display_width=None)
Bases: sqlalchemy.types.TypeEngine
MySQL YEAR type, for single byte storage of years 1901-2155.
-
__init__(display_width=None)
-
class sqlalchemy.databases.mysql.MSText(length=None, **kwargs)
Bases: sqlalchemy.databases.mysql._StringType, sqlalchemy.types.Text
MySQL TEXT type, for text up to 2^16 characters.
-
__init__(length=None, **kwargs)
Construct a TEXT.
| Parameters: |
- length – Optional, if provided the server may optimize storage
by substituting the smallest TEXT type sufficient to store
length characters.
- charset – Optional, a column-level character set for this string
value. Takes precedence to ‘ascii’ or ‘unicode’ short-hand.
- collation – Optional, a column-level collation for this string
value. Takes precedence to ‘binary’ short-hand.
- ascii – Defaults to False: short-hand for the latin1
character set, generates ASCII in schema.
- unicode – Defaults to False: short-hand for the ucs2
character set, generates UNICODE in schema.
- national – Optional. If true, use the server’s configured
national character set.
- binary – Defaults to False: short-hand, pick the binary
collation type that matches the column’s character set. Generates
BINARY in schema. This does not affect the type of data stored,
only the collation of character data.
|
-
class sqlalchemy.databases.mysql.MSTinyText(**kwargs)
Bases: sqlalchemy.databases.mysql.MSText
MySQL TINYTEXT type, for text up to 2^8 characters.
-
__init__(**kwargs)
Construct a TINYTEXT.
| Parameters: |
- charset – Optional, a column-level character set for this string
value. Takes precedence to ‘ascii’ or ‘unicode’ short-hand.
- collation – Optional, a column-level collation for this string
value. Takes precedence to ‘binary’ short-hand.
- ascii – Defaults to False: short-hand for the latin1
character set, generates ASCII in schema.
- unicode – Defaults to False: short-hand for the ucs2
character set, generates UNICODE in schema.
- national – Optional. If true, use the server’s configured
national character set.
- binary – Defaults to False: short-hand, pick the binary
collation type that matches the column’s character set. Generates
BINARY in schema. This does not affect the type of data stored,
only the collation of character data.
|
-
class sqlalchemy.databases.mysql.MSMediumText(**kwargs)
Bases: sqlalchemy.databases.mysql.MSText
MySQL MEDIUMTEXT type, for text up to 2^24 characters.
-
__init__(**kwargs)
Construct a MEDIUMTEXT.
| Parameters: |
- charset – Optional, a column-level character set for this string
value. Takes precedence to ‘ascii’ or ‘unicode’ short-hand.
- collation – Optional, a column-level collation for this string
value. Takes precedence to ‘binary’ short-hand.
- ascii – Defaults to False: short-hand for the latin1
character set, generates ASCII in schema.
- unicode – Defaults to False: short-hand for the ucs2
character set, generates UNICODE in schema.
- national – Optional. If true, use the server’s configured
national character set.
- binary – Defaults to False: short-hand, pick the binary
collation type that matches the column’s character set. Generates
BINARY in schema. This does not affect the type of data stored,
only the collation of character data.
|
-
class sqlalchemy.databases.mysql.MSLongText(**kwargs)
Bases: sqlalchemy.databases.mysql.MSText
MySQL LONGTEXT type, for text up to 2^32 characters.
-
__init__(**kwargs)
Construct a LONGTEXT.
| Parameters: |
- charset – Optional, a column-level character set for this string
value. Takes precedence to ‘ascii’ or ‘unicode’ short-hand.
- collation – Optional, a column-level collation for this string
value. Takes precedence to ‘binary’ short-hand.
- ascii – Defaults to False: short-hand for the latin1
character set, generates ASCII in schema.
- unicode – Defaults to False: short-hand for the ucs2
character set, generates UNICODE in schema.
- national – Optional. If true, use the server’s configured
national character set.
- binary – Defaults to False: short-hand, pick the binary
collation type that matches the column’s character set. Generates
BINARY in schema. This does not affect the type of data stored,
only the collation of character data.
|
-
class sqlalchemy.databases.mysql.MSString(length=None, **kwargs)
Bases: sqlalchemy.databases.mysql._StringType, sqlalchemy.types.String
MySQL VARCHAR type, for variable-length character data.
-
__init__(length=None, **kwargs)
Construct a VARCHAR.
| Parameters: |
- charset – Optional, a column-level character set for this string
value. Takes precedence to ‘ascii’ or ‘unicode’ short-hand.
- collation – Optional, a column-level collation for this string
value. Takes precedence to ‘binary’ short-hand.
- ascii – Defaults to False: short-hand for the latin1
character set, generates ASCII in schema.
- unicode – Defaults to False: short-hand for the ucs2
character set, generates UNICODE in schema.
- national – Optional. If true, use the server’s configured
national character set.
- binary – Defaults to False: short-hand, pick the binary
collation type that matches the column’s character set. Generates
BINARY in schema. This does not affect the type of data stored,
only the collation of character data.
|
-
class sqlalchemy.databases.mysql.MSChar(length, **kwargs)
Bases: sqlalchemy.databases.mysql._StringType, sqlalchemy.types.CHAR
MySQL CHAR type, for fixed-length character data.
-
__init__(length, **kwargs)
Construct an NCHAR.
| Parameters: |
- length – Maximum data length, in characters.
- binary – Optional, use the default binary collation for the
national character set. This does not affect the type of data
stored, use a BINARY type for binary data.
- collation – Optional, request a particular collation. Must be
compatible with the national character set.
|
-
class sqlalchemy.databases.mysql.MSNVarChar(length=None, **kwargs)
Bases: sqlalchemy.databases.mysql._StringType, sqlalchemy.types.String
MySQL NVARCHAR type.
For variable-length character data in the server’s configured national
character set.
-
__init__(length=None, **kwargs)
Construct an NVARCHAR.
| Parameters: |
- length – Maximum data length, in characters.
- binary – Optional, use the default binary collation for the
national character set. This does not affect the type of data
stored, use a BINARY type for binary data.
- collation – Optional, request a particular collation. Must be
compatible with the national character set.
|
-
class sqlalchemy.databases.mysql.MSNChar(length=None, **kwargs)
Bases: sqlalchemy.databases.mysql._StringType, sqlalchemy.types.CHAR
MySQL NCHAR type.
For fixed-length character data in the server’s configured national
character set.
-
__init__(length=None, **kwargs)
Construct an NCHAR. Arguments are:
| Parameters: |
- length – Maximum data length, in characters.
- binary – Optional, use the default binary collation for the
national character set. This does not affect the type of data
stored, use a BINARY type for binary data.
- collation – Optional, request a particular collation. Must be
compatible with the national character set.
|
-
class sqlalchemy.databases.mysql.MSVarBinary(length=None, **kw)
Bases: sqlalchemy.databases.mysql._BinaryType
MySQL VARBINARY type, for variable length binary data.
-
__init__(length=None, **kw)
Construct a VARBINARY. Arguments are:
| Parameter: | length – Maximum data length, in characters. |
-
class sqlalchemy.databases.mysql.MSBinary(length=None, **kw)
Bases: sqlalchemy.databases.mysql._BinaryType
MySQL BINARY type, for fixed length binary data
-
__init__(length=None, **kw)
Construct a BINARY.
This is a fixed length type, and short values will be right-padded
with a server-version-specific pad value.
| Parameter: | length – Maximum data length, in bytes. If length is not
specified, this will generate a BLOB. This usage is deprecated. |
-
class sqlalchemy.databases.mysql.MSBlob(length=None, **kw)
Bases: sqlalchemy.databases.mysql._BinaryType
MySQL BLOB type, for binary data up to 2^16 bytes
-
__init__(length=None, **kw)
Construct a BLOB. Arguments are:
| Parameter: | length – Optional, if provided the server may optimize storage
by substituting the smallest TEXT type sufficient to store
length characters. |
-
class sqlalchemy.databases.mysql.MSTinyBlob(length=None, **kw)
Bases: sqlalchemy.databases.mysql.MSBlob
MySQL TINYBLOB type, for binary data up to 2^8 bytes.
-
__init__(length=None, **kw)
Construct a BLOB. Arguments are:
| Parameter: | length – Optional, if provided the server may optimize storage
by substituting the smallest TEXT type sufficient to store
length characters. |
-
class sqlalchemy.databases.mysql.MSMediumBlob(length=None, **kw)
Bases: sqlalchemy.databases.mysql.MSBlob
MySQL MEDIUMBLOB type, for binary data up to 2^24 bytes.
-
__init__(length=None, **kw)
Construct a BLOB. Arguments are:
| Parameter: | length – Optional, if provided the server may optimize storage
by substituting the smallest TEXT type sufficient to store
length characters. |
-
class sqlalchemy.databases.mysql.MSLongBlob(length=None, **kw)
Bases: sqlalchemy.databases.mysql.MSBlob
MySQL LONGBLOB type, for binary data up to 2^32 bytes.
-
__init__(length=None, **kw)
Construct a BLOB. Arguments are:
| Parameter: | length – Optional, if provided the server may optimize storage
by substituting the smallest TEXT type sufficient to store
length characters. |
-
class sqlalchemy.databases.mysql.MSEnum(*enums, **kw)
Bases: sqlalchemy.databases.mysql.MSString
MySQL ENUM type.
-
__init__(*enums, **kw)
Construct an ENUM.
Example:
Column(‘myenum’, MSEnum(“foo”, “bar”, “baz”))
Arguments are:
| Parameters: |
- enums – The range of valid values for this ENUM. Values will be
quoted when generating the schema according to the quoting flag (see
below).
- strict – Defaults to False: ensure that a given value is in this
ENUM’s range of permissible values when inserting or updating rows.
Note that MySQL will not raise a fatal error if you attempt to store
an out of range value- an alternate value will be stored instead.
(See MySQL ENUM documentation.)
- charset – Optional, a column-level character set for this string
value. Takes precedence to ‘ascii’ or ‘unicode’ short-hand.
- collation – Optional, a column-level collation for this string
value. Takes precedence to ‘binary’ short-hand.
- ascii – Defaults to False: short-hand for the latin1
character set, generates ASCII in schema.
- unicode – Defaults to False: short-hand for the ucs2
character set, generates UNICODE in schema.
- binary – Defaults to False: short-hand, pick the binary
collation type that matches the column’s character set. Generates
BINARY in schema. This does not affect the type of data stored,
only the collation of character data.
- quoting –
Defaults to ‘auto’: automatically determine enum value
quoting. If all enum values are surrounded by the same quoting
character, then use ‘quoted’ mode. Otherwise, use ‘unquoted’ mode.
‘quoted’: values in enums are already quoted, they will be used
directly when generating the schema.
‘unquoted’: values in enums are not quoted, they will be escaped and
surrounded by single quotes when generating the schema.
Previous versions of this type always required manually quoted
values to be supplied; future versions will always quote the string
literals for you. This is a transitional option.
|
-
class sqlalchemy.databases.mysql.MSSet(*values, **kw)
Bases: sqlalchemy.databases.mysql.MSString
MySQL SET type.
-
__init__(*values, **kw)
Construct a SET.
Example:
Column('myset', MSSet("'foo'", "'bar'", "'baz'"))
Arguments are:
| Parameters: |
- values – The range of valid values for this SET. Values will be
used exactly as they appear when generating schemas. Strings must
be quoted, as in the example above. Single-quotes are suggested for
ANSI compatibility and are required for portability to servers with
ANSI_QUOTES enabled.
- charset – Optional, a column-level character set for this string
value. Takes precedence to ‘ascii’ or ‘unicode’ short-hand.
- collation – Optional, a column-level collation for this string
value. Takes precedence to ‘binary’ short-hand.
- ascii – Defaults to False: short-hand for the latin1
character set, generates ASCII in schema.
- unicode – Defaults to False: short-hand for the ucs2
character set, generates UNICODE in schema.
- binary – Defaults to False: short-hand, pick the binary
collation type that matches the column’s character set. Generates
BINARY in schema. This does not affect the type of data stored,
only the collation of character data.
|
-
class sqlalchemy.databases.mysql.MSBoolean(*args, **kwargs)
Bases: sqlalchemy.types.Boolean
MySQL BOOLEAN type.
-
__init__(*args, **kwargs)


Provides a command line argument to recognise a user agent multiple times.
Class definitions for custom errors
The IncorrectPropertyTypeException is thrown by the Api class.
The InvalidPropertyException is thrown by the Api class.
The JsonException is thrown by the Api class.
The UnknownPropertyException is thrown by the Api class.