-
Jan 2020 to May 2020
-
Full Time
- Worked on developing a chatbot to select the most appropriate response for a user framed query from a given set of responses.
- Hosted the bot on a website developed using Flask as the backend.
- Used state of the art NLP models and various question generator and data augmentation techniques to get a near perfect response.
-
May 2019 to July 2019
-
Full Time
- Worked on enhancing the graph module of SageMath, a python based open source Mathematics Software System.
- Added new methods to the graph module of SageMath and enhanced the existing ones using Cython.
- Implemented an iterator over the k-shortest source to destination paths using an improved version of Yen’s algorithm.
-
May 2018 to July 2018
-
Full Time
- Worked on Credit Risk Analysis, using the dataset available worked on data preprocessing, feature extraction and applied various Machine Learning based algorithms.
- Used tools like JavaScript and Flask to build the web Application to get insight into the data related to credit risk analysis.
-
Nov 2017 - Jan 2018
-
Part Time
- Implemented various machine learning algorithms in Python and C++.
- Optimized these algorithms to work in near real-time for prediction.
- Handled data pre-processing and applied various machine learning models using Python and R to gain insight and
predict the result metric.
-
Nov 2017 to Feb 2018
-
Part Time
- Developed a text classification tool to classify text.
- Developed a Cartoonizer tool to convert the given person’s image into a cartoon image by using face swap and image processing techniques.
- Worked on Ethnicity Detection to detect from a given image of a person whether the person belongs to a particular ethnicity.
-


Actions, Resources, and Condition Keys for AWS CodeCommit
AWS CodeCommit (service prefix: codecommit
) provides the following service-specific resources, actions, and condition context
keys for use in IAM permission policies.
References:
-
Learn how to configure this service.
-
View a list of the API operations available for this service.
-
Learn how to secure this service and its resources by using IAM permission policies.
Topics
Actions Defined by AWS CodeCommit
You can specify the following actions in the Action
element of an IAM policy statement. Use policies to grant permissions to perform
an operation in AWS. When you use an action in a policy, you usually allow or
deny access to the API operation or CLI command with the same name. However,
in some cases, a single action controls access to more than one operation. Alternatively,
some operations require several different actions.
The Resource column indicates whether each action supports resource-level permissions. If
there is no value for this column, you must specify all resources ("*") in the
Resource
element of your policy statement. If the column includes a resource type, then
you can specify an ARN of that type in a statement with that action. Required
resources are indicated in the table with an asterisk (*). If you specify a resource-level
permission ARN in a statement using this action, then it must be of this type.
Some actions support multiple resource types. If the resource type is optional (not
indicated as required), then you can choose to use one but not the other.
For details about the columns in the following table, see The Actions Table.
| Actions | Description | Access Level | Resource Types (*required) | Condition Keys | Dependent Actions |
|---|---|---|---|---|---|
| AssociateApprovalRuleTemplateWithRepository | Grants permission to associate an approval rule template with a repository | Write | |||
| BatchAssociateApprovalRuleTemplateWithRepositories | Grants permission to associate an approval rule template with multiple repositories in a single operation | Write | |||
| BatchDescribeMergeConflicts | Grants permission to get information about multiple merge conflicts when attempting to merge two commits using either the three-way merge or the squash merge option | Read | |||
| BatchDisassociateApprovalRuleTemplateFromRepositories | Grants permission to remove the association between an approval rule template and multiple repositories in a single operation | Write | |||
| BatchGetCommits | Grants permission to get return information about one or more commits in an AWS CodeCommit repository. | Read | |||
| BatchGetPullRequests [permission only] | Grants permission to return information about one or more pull requests in an AWS CodeCommit repository | Read | |||
| BatchGetRepositories | Grants permission to get information about multiple repositories | Read | |||
| CancelUploadArchive [permission only] | Grants permission to cancel the uploading of an archive to a pipeline in AWS CodePipeline | Read | |||
| CreateApprovalRuleTemplate | Grants permission to create an approval rule template that will automatically create approval rules in pull requests that match the conditions defined in the template; does not grant permission to create approval rules for individual pull requests | Write | |||
| CreateBranch | Grants permission to create a branch in an AWS CodeCommit repository with this API; does not control Git create branch actions | Write | |||
| CreateCommit | Grants permission to add, copy, move or update single or multiple files in a branch in an AWS CodeCommit repository, and generate a commit for the changes in the specified branch. | Write | |||
| CreatePullRequest | Grants permission to create a pull request in the specified repository | Write | |||
| CreatePullRequestApprovalRule | Grants permission to create an approval rule specific to an individual pull request; does not grant permission to create approval rule templates | Write | |||
| CreateRepository | Grants permission to create an AWS CodeCommit repository | Write | |||
| CreateUnreferencedMergeCommit | Grants permission to create an unreferenced commit that contains the result of merging two commits using either the three-way or the squash merge option; does not control Git merge actions | Write | |||
| DeleteApprovalRuleTemplate | Grants permission to delete an approval rule template | Write | |||
| DeleteBranch | Grants permission to delete a branch in an AWS CodeCommit repository with this API; does not control Git delete branch actions | Write | |||
| DeleteCommentContent | Grants permission to delete the content of a comment made on a change, file, or commit in a repository | Write | |||
| DeleteFile | Grants permission to delete a specified file from a specified branch | Write | |||
| DeletePullRequestApprovalRule | Grants permission to delete approval rule created for a pull request if the rule was not created by an approval rule template | Write | |||
| DeleteRepository | Grants permission to delete an AWS CodeCommit repository | Write | |||
| DescribeMergeConflicts | Grants permission to get information about specific merge conflicts when attempting to merge two commits using either the three-way or the squash merge option | Read | |||
| DescribePullRequestEvents | Grants permission to return information about one or more pull request events | Read | |||
| DisassociateApprovalRuleTemplateFromRepository | Grants permission to remove the association between an approval rule template and a repository | Write | |||
| EvaluatePullRequestApprovalRules | Grants permission to evaluate whether a pull request is mergable based on its current approval state and approval rule requirements | Read | |||
| GetApprovalRuleTemplate | Grants permission to return information about an approval rule template | Read | |||
| GetBlob | Grants permission to view the encoded content of an individual file in an AWS CodeCommit repository from the AWS CodeCommit console | Read | |||
| GetBranch | Grants permission to get details about a branch in an AWS CodeCommit repository with this API; does not control Git branch actions | Read | |||
| GetComment | Grants permission to get the content of a comment made on a change, file, or commit in a repository | Read | |||
| GetCommentsForComparedCommit | Grants permission to get information about comments made on the comparison between two commits | Read | |||
| GetCommentsForPullRequest | Grants permission to get comments made on a pull request | Read | |||
| GetCommit | Grants permission to return information about a commit, including commit message and committer information, with this API; does not control Git log actions | Read | |||
| GetCommitHistory [permission only] | Grants permission to get information about the history of commits in a repository | Read | |||
| GetCommitsFromMergeBase [permission only] | Grants permission to get information about the difference between commits in the context of a potential merge | Read | |||
| GetDifferences | Grants permission to view information about the differences between valid commit specifiers such as a branch, tag, HEAD, commit ID, or other fully qualified reference | Read | |||
| GetFile | Grants permission to return the base-64 encoded contents of a specified file and its metadata | Read | |||
| GetFolder | Grants permission to return the contents of a specified folder in a repository | Read | |||
| GetMergeCommit | Grants permission to get information about a merge commit created by one of the merge options for pull requests that creates merge commits. Not all merge options create merge commits. This permission does not control Git merge actions | Read | |||
| GetMergeConflicts | Grants permission to get information about merge conflicts between the before and after commit IDs for a pull request in a repository | Read | |||
| GetMergeOptions | Grants permission to get information about merge options for pull requests that can be used to merge two commits; does not control Git merge actions | Read | |||
| GetObjectIdentifier [permission only] | Grants permission to resolve blobs, trees, and commits to their identifier | Read | |||
| GetPullRequest | Grants permission to get information about a pull request in a specified repository | Read | |||
| GetPullRequestApprovalStates | Grants permission to retrieve the current approvals on an inputted pull request | Read | |||
| GetPullRequestOverrideState | Grants permission to retrieve the current override state of a given pull request | Read | |||
| GetReferences [permission only] | Grants permission to get details about references in an AWS CodeCommit repository; does not control Git reference actions | Read | |||
| GetRepository | Grants permission to get information about an AWS CodeCommit repository | Read | |||
| GetRepositoryTriggers | Grants permission to get information about triggers configured for a repository | Read | |||
| GetTree [permission only] | Grants permission to view the contents of a specified tree in an AWS CodeCommit repository from the AWS CodeCommit console | Read | |||
| GetUploadArchiveStatus [permission only] | Grants permission to get status information about an archive upload to a pipeline in AWS CodePipeline | Read | |||
| GitPull [permission only] | Grants permission to pull information from an AWS CodeCommit repository to a local repo | Read | |||
| GitPush [permission only] | Grants permission to push information from a local repo to an AWS CodeCommit repository | Write | |||
| ListApprovalRuleTemplates | Grants permission to list all approval rule templates in an AWS Region for the AWS account | List | |||
| ListAssociatedApprovalRuleTemplatesForRepository | Grants permission to list approval rule templates that are associated with a repository | List | |||
| ListBranches | Grants permission to list branches for an AWS CodeCommit repository with this API; does not control Git branch actions | List | |||
| ListPullRequests | Grants permission to list pull requests for a specified repository | List | |||
| ListRepositories | Grants permission to list information about AWS CodeCommit repositories in the current Region for your AWS account | List | |||
| ListRepositoriesForApprovalRuleTemplate | Grants permission to list repositories that are associated with an approval rule template | List | |||
| ListTagsForResource | Grants permission to list the resource attached to a CodeCommit resource ARN | List | |||
| MergeBranchesByFastForward | Grants permission to merge two commits into the specified destination branch using the fast-forward merge option | Write | |||
| MergeBranchesBySquash | Grants permission to merge two commits into the specified destination branch using the squash merge option | Write | |||
| MergeBranchesByThreeWay | Grants permission to merge two commits into the specified destination branch using the three-way merge option | Write | |||
| MergePullRequestByFastForward | Grants permission to close a pull request and attempt to merge it into the specified destination branch for that pull request at the specified commit using the fast-forward merge option | Write | |||
| MergePullRequestBySquash | Grants permission to close a pull request and attempt to merge it into the specified destination branch for that pull request at the specified commit using the squash merge option | Write | |||
| MergePullRequestByThreeWay | Grants permission to close a pull request and attempt to merge it into the specified destination branch for that pull request at the specified commit using the three-way merge option | Write | |||
| OverridePullRequestApprovalRules | Grants permission to override all approval rules for a pull request, including approval rules created by a template | Write | |||
| PostCommentForComparedCommit | Grants permission to post a comment on the comparison between two commits | Write | |||
| PostCommentForPullRequest | Grants permission to post a comment on a pull request | Write | |||
| PostCommentReply | Grants permission to post a comment in reply to a comment on a comparison between commits or a pull request | Write | |||
| PutFile | Grants permission to add or update a file in a branch in an AWS CodeCommit repository, and generate a commit for the addition in the specified branch | Write | |||
| PutRepositoryTriggers | Grants permission to create, update, or delete triggers for a repository | Write | |||
| TagResource | Grants permission to attach resource tags to a CodeCommit resource ARN | Write | |||
| TestRepositoryTriggers | Grants permission to test the functionality of repository triggers by sending information to the trigger target | Write | |||
| UntagResource | Grants permission to disassociate resource tags from a CodeCommit resource ARN | Write | |||
| UpdateApprovalRuleTemplateContent | Grants permission to update the content of approval rule templates; does not grant permission to update content of approval rules created specifically for pull requests | Write | |||
| UpdateApprovalRuleTemplateDescription | Grants permission to update the description of approval rule templates | Write | |||
| UpdateApprovalRuleTemplateName | Grants permission to update the name of approval rule templates | Write | |||
| UpdateComment | Grants permission to update the contents of a comment if the identity matches the identity used to create the comment | Write | |||
| UpdateDefaultBranch | Grants permission to change the default branch in an AWS CodeCommit repository | Write | |||
| UpdatePullRequestApprovalRuleContent | Grants permission to update the content for approval rules created for a specific pull requests; does not grant permission to update approval rule content for rules created with an approval rule template | Write | |||
| UpdatePullRequestApprovalState | Grants permission to update the approval state for pull requests | Write | |||
| UpdatePullRequestDescription | Grants permission to update the description of a pull request | Write | |||
| UpdatePullRequestStatus | Grants permission to update the status of a pull request | Write | |||
| UpdatePullRequestTitle | Grants permission to update the title of a pull request | Write | |||
| UpdateRepositoryDescription | Grants permission to change the description of an AWS CodeCommit repository | Write | |||
| UpdateRepositoryName | Grants permission to change the name of an AWS CodeCommit repository | Write | |||
| UploadArchive [permission only] | Grants permission to the service role for AWS CodePipeline to upload repository changes into a pipeline | Write |
Resources Defined by AWS CodeCommit
The following resource types are defined by this service and can be used in the
Resource
element of IAM permission policy statements. Each action in the Actions table identifies the resource types that can be specified with that action. A resource
type can also define which condition keys you can include in a policy. These
keys are displayed in the last column of the table. For details about the columns
in the following table, see The Resource Types Table.
| Resource Types | ARN | Condition Keys |
|---|---|---|
| repository |
arn:${Partition}:codecommit:${Region}:${Account}:${RepositoryName}
|
Condition Keys for AWS CodeCommit
AWS CodeCommit defines the following condition keys that can be used in the
Condition
element of an IAM policy. You can use these keys to further refine the conditions
under which the policy statement applies. For details about the columns in the
following table, see The Condition Keys Table.
To view the global condition keys that are available to all services, see Available Global Condition Keys in the IAM Policy Reference.
| Condition Keys | Description | Type |
|---|---|---|
| aws:RequestTag/${TagKey} | Filters actions based on the presence of tag key-value pairs in the request | String |
| aws:ResourceTag/${TagKey} | Filters actions based on tag key-value pairs attached to the resource | String |
| aws:TagKeys | Filters actions based on the presence of tag keys in the request | String |
| codecommit:References | Filters access by Git reference to specified AWS CodeCommit actions | String |


This directory contains test plans for Maqetta. Initially, there is a basic test plan that does a breadth-wise test of basic functionality. Longer-term, we will add detailed tests for various feature areas.
To see the top-level file for the basic test plan:
To see the various folders that correspond to Maqetta's different feature areas:


Harris
This page contains an index of all the individuals in the database with the surname of Harris. Selecting the person’s name will take you to that person’s individual page.
| Given Name | Birth | Death | Partner | Parents |
|---|---|---|---|---|
| Ellen | Cook, George Keningale | |||
| Ellen Louise | 1898 | 1975-10-13 | Henderson, Ernest Frank | Harris, William George married Annie L. |
| Isabella Blanche | about 1910 | 1912-04-01 | Harris, Lewis John Gerrard, Beatrice Jones | |
| Lewis John | about 1882 | 1910-02-04 | Gerrard, Beatrice Jones | Harris, William Edward (Master Marriner) Gilpin, Tryphina |
| Mabel | 1871-01-00 | Harris, Lewis John Gerrard, Beatrice Jones | ||
| Mabel Louisa | 1907-10-19 | 1982-03-26 | Toseland, Stanley Gilbert | Harris, Lewis John Gerrard, Beatrice Jones |
| Raymond J. | Mackenzie, Elsie M. | |||
| Robert George | 1910-10-30 | 1985-02-28 | Bridges, Irene Lillian | Harris, Robert John Conway, Rose |
| Robert John | 1890 | 1945 | Conway, Rose | |
| Sarah Ann | 1826-05-08 | Cruwys, John George (Timekeeper) | ||
| Thomas Stanley | 1906-05-23 | 1978-07-03 | Wyatt, Ethel Mary | Harris, Lewis John Gerrard, Beatrice Jones |
| William | ||||
| William Edward, (Master Marriner) | Gilpin, Tryphina | Harris, William | ||
| William Francis | Osbourn, Emily Ann | |||
| William George, married Annie L. | ||||
| [Living] | Powell, Thomas William | Harris, Thomas Stanley Wyatt, Ethel Mary | ||
| [Living] | Francombe, [Living] | Harris, Thomas Stanley Wyatt, Ethel Mary | ||
| [Living] | Coleman, [Living] | Harris, Thomas Stanley Wyatt, Ethel Mary | ||
| [Living] | Harris, [Living] Criddle, [Living] | |||
| [Living] | Criddle, [Living] | Harris, [Living] Francombe, [Living] | ||
| [Living] | ???, [Living] | Harris, [Living] Francombe, [Living] | ||
| [Living] | Harris, Lewis John Gerrard, Beatrice Jones | |||
| [Living] | Harris, Lewis John Gerrard, Beatrice Jones | |||
| [Living] | Harris, Lewis John Gerrard, Beatrice Jones | |||
| [Living] | Woodrow, Claude Hamilton | Harris, Raymond J. Mackenzie, Elsie M. | ||
| [Living] | Bowen, Rodney Warren, Smith, [Living] | Harris, Robert George Bridges, Irene Lillian | ||
| [Living] | Harris, Robert George Bridges, Irene Lillian | |||
| [Living] | Harding, [Living] | Harris, Robert George Bridges, Irene Lillian | ||
| [Living] | McGrath, [Living] | Harris, Robert George Bridges, Irene Lillian | ||
| [Living] | Hudson, David Barry | |||
| [Living] | Harris, [Living] McGrath, [Living] | |||
| [Living] | Harris, [Living] McGrath, [Living] | |||
| [Living] | Harris, [Living] McGrath, [Living] |


<%= __("You seem to be using an unsupported browser.") %>
<%= __("Please use one of following browsers for a better experience") %>
Google Chrome Version 66+
Mozilla Firefox Version 52+
Apple Safari Version 11.2+
Opera Version 55+
Microsoft Edge Version 17+
<%= __("Weak network signal") %>
<%= __("This process only works with a connection speed of at least") %>
<%= __("This process only works with an upload connection speed of at least") %>
.
<%= __("It appears your network signal is too weak.") %>
<%= __("Good network signal") %>
<%= __("This process only works with a connection speed of at least") %>
.
<%= __("so make sure you maintain a good connection.") %>
<%= __("Let’s scan your face now") %>
<%= __("Position yourself in a good lighting and follow the instructions on the next screen.") %>
<%= __("It's ok if you’re wearing eyeglasses.") %>
<%= __("Camera Access") %>
<%= __("In order to authenticate you, we need access to your phone's camera. Sounds good ?") %>
<%= __("No camera access") %>
<%= __("We need access to your phone’s camera. Click Allow on the popup or enable it in your privacy settings.") %>
<%= __("Oops!   Please try again...") %>


--- permalink: /404.html --- {%- comment -%} * * Any 404.html at the root of your _site directory will be served automatically * by GitHub Pages and the local WEBrick development server. * https://jekyllrb.com/tutorials/custom-404-page/ * * You may see the running code here: * https://chetabahana.github.io/404-page/ * {%- endcomment -%}


| 906 | (A) | that man leuede in his Mageste monethes bot thre |
| 912 | (C) | ¶ That man in his mageste . was monethes but thre |
| 898 | (D) | That man in his mageste was monthis but thre |
| 875 | (E) | & he in his maieste . was but thre monthes |
| (Ex) | ---- no text ---- | |
| 930 | (L) | þe man in his maieste was monþes bot þre |
| 848 | (P) | þat man in his magiste was monethes bot thre |
| 884 | (U) | That man in his maieste / nys but monethes thre |
| (V) | ---- no text ---- |


{% extends "/layout/layout.html" %} {% block content %}
That's where you need to be patient and persevere and see where things lead.


ZeroMQ Patterns
One node can bind a socket and multiple other nodes can connect to it.
Every socket has a specific type supporting interactions with other types.
Most important patterns:
Req-Rep
- REQ sends a synchronous request.
- REP responds synchronously.
- Multiple REQs and multiple REPs possible.
Pub-Sub
- Subscribers SUB connect to a publisher PUB.
- PUB sends a message to all connected nodes asynchronously.
- Multiple publishers possible.
Pipeline
- Parallelizable tasks are distributed to worker nodes.
- A sink node collects all results.
Exclusive Pair
- Connects two architecturally stable peers.
- Allows at most one connection.
- Used for inter-thread communication.


Call the Marketing Cloud APIs
Username
where is this?
Secret
Method
Endpoint
San Jose
Dallas
London
Singapore


{% extends 'layout.html' %} {% block body %}
Open maps will offer interactive visualization of scientific data projected on 2D maps. It will be developped based on the use of open packages such as Python libraries. Users will be able to upload their raw data files containing spatio-temporal measurements, explore them interactively and generate graphics and reports on a “what you see is what you get” basics.
{% endblock %}


Featuresedit
This client provides:
- Full support for all Elasticsearch APIs.
- HTTP backend (blocking and asynchronous with https://metacpan.org/module/Search::Elasticsearch::Async).
- Robust networking support which handles load balancing, failure detection and failover.
- Good defaults.
- Helper utilities for more complex operations, such as bulk indexing, scrolled searches and reindexing.
- Logging support via Log::Any.
- Compatibility with the official clients for Python, Ruby, PHP and JavaScript.
- Easy extensibility.


Free TON Solidity Language for Visual Studio Code
Solidity Language support to Visual Studio Code, via the vssolidity.
The source code is available at https://github.com/Pruvendo/vssolidity.git.
Developed by Pruvendo
Features
- Syntax highlighting
- Snippets
- Code completion for all contracts / libraries in the current file and all referenced imports
Requirements
- VsCode 1.30.0 or more recent
Installation
Before the installation remove all the Solidity syntax highlighing plugins installed in you VSCode.
The recommended way to install VSSolidity is via the Visual Studio Marketplace.
In case of manual build use the following sequence of actions:
- Install latest npm
- Install vsce (sudo npm -g vsce)
- Prepare the package (vsce pack) (run from the root directory of the project)
- In VSCode select Preferences/Extensions
- Select Install from VSIX
- Select the .vsix file generated by vsce
Detailed documentation
Motivation
At the present time there is a number of sophisticated VSCode syntax highlishters for Solidity, such as juanblanco.solidity, however, all of them are designed for Ethereum that is different than Free TON version of this language.
An option to adopt one of the existing open-source plugins was considered however their complexity convinced us to develop a Free TON Solidity syntax highlighter from scratch.
Syntax highlight
The following elements are automatically highlighted:
- Comments
- Block comments (
/* */
) - Line comments (
//
) - The following tags are also specially highlighted inside the comments:
- Commented lines that start with TODO, FIXME, CHANGED, XXX, IDEA, HACK, NOTE, REVIEW, NB, BUG, QUESTION, COMBAK, TEMP, SUPRESS, LINT.
- Commented lines with metatags such as @title, @author, @notice, @dev, @param, @return
- Block comments (
- Operators
- Logical (
<
,==
,>
,<=
,>=
,!=
,&&
,||
) - Arithmetic (
+
,-
,/
,*
) - Binary (
^
,&
,|
) - Mapping (
=>
) - Assignment (
=
)
- Logical (
- Control flow
- Conditions (
if
,else
) - Loops (
for
,while
,do
,continue
,break
) - Exceptions (
try
,catch
,finally
) -
return
operators
- Conditions (
- Constants
- Logical (
true
,false
) - Temporal (
seconds
,minutes
,hours
,days
,weeks
,years
) - Financial (
ton
) - Numbers (decimal and hexadecimals)
- Strings
- Logical (
- Types
- Primitive types -
bool
,uint_<size>
,int_<size>
,address
,string
,bytes
,hash_<size>
- Complex types (
struct
,enum
,mapping
, arrays)
- Primitive types -
- Built-in constructions
- variables (
this
,super
,abi
,msg.sender
,msg
,block
,tx
,now
,tx.origin
,tx.gasprice
,msg.data
,msg.sig
,msg.value
) - functions (
require
,assert
,revert
,selfdestruct
,suicide
,addmod
,mulmod
,keccak256
,sha256
,sha3
,ripemd1t60
,ecrecover
,unicode
,blockhash
,gasleft
,type
)
- variables (
- Modifiers
- Access modifiers (
internal
,external
,private
,public
,inline
) - Payable modifiers (
payable
,nonpayable
) immutable
- Extended modifiers (
pure
,view
,inherited
,indexed
,storage
,memory
,virtual
,calldata
,override
,abstract
,responsible
) - Custom modifiers
- Access modifiers (
- User identifiers
- Punctuation characters (
{
,}
,;
,.
,,
,[
,]
,(
,)
) - Specific constructions
- imports
- pragmas
- contracts and interfaces
- constructors
-
function
andmodifier
-
new
anddelete
- events
emit
using ... for
unchecked
-
assembly
andlet
All the syntax highlighting rules are defined at client/syntaxes/solidity.tmLanguage.json
The example of the highlighted source code is provided below:
Code snippets
The snippets allow to automatically insert some fragments of code. For example, if the user starts to enter enum keyword the suggestion to use the snippet automatically appears. In case of agreement the following code is generated:
enum Name {item1, item2 }
Currently the following snippets are supported (the word in parentheses indicates what should be typed (fully or partially) to switch the snippet suggestion on):
- contract declaration (
contract
) - constructor declaration (
constructor
) - enum declaration (
enum
) - error declaration (
error
) - event declaration (
event
) -
for
statement (for
) - function declaration (
function
) - function return declaration (
function-return
) - function view declaration (
function-view
) - function view return declaration (
function-view-return
) - function pure declaration (
function-pure
) - function pure return declaration (
function-pure-return
) - function inline return declaration (
function-inline-return
) - function functionID declaration (
function-functionID
) - function externalMsg declaration (
function-externalMsg
) - function internalMsg declaration (
function-internalMsg
) -
if
statement (if
) -
if ... else
statement (ife
) -
import
(import
) - interface declaration (
interface
) - interface returns declararion (
interface-returns
) - library declaration (
library
) -
mapping
declaration (mapping
) -
modifier
declaration (modifier
) -
pragma ton-solidity
(pragma
) -
pragma ton-solidity
example (pragma-ex
) -
pragma ignoreIntOverflow
(pragma-ig
) -
pragma AbiHeader
(pragma-ab
) -
pragma msgValue
(pragma-ms
) -
require
(require
) -
unchecked
(unchecked
) -
receive
declaration (receive
) -
fallback
declaration (fallback
) -
onBounce
declaration (onBounce
) -
onTickTock
declaration (onTickTock
) -
onCodeUpgrade
declaration (onCodeUpgrade
) -
afterSignatureCheck
declaration (afterSignatureCheck
) -
selfdestruct
declaration (selfdestruct
) -
sha256
declaration (sha256
) -
gasToValue
declaration (gasToValue
) -
valueToGas
declaration (valueToGas
) - help runtime error codes (
help-runtime-error-codes
)
The present list of snippets is rather experimental and was not tested in real development. All the users are more than welcomed to provide their suggestions how to make it more useful and efficient.
The complete list of snippet rules is located at ./client/snippets/solidity.json
Code completion
The present implementation provides the limited functionality for code completion. A few examples are below:
Further plans
For the next version it's planned to implement a real deep grammar analysis of the code that will let:
- Discover the syntax errors
- Implement the movement to the function implementations
- Discover unused identifiers
- ... and much more
Feedback
The developers welcome any feedback and suggestions about improvement of the current functionality and setup. Feel free to contact the project lead Sergey Egorov or the key developer Ruben Akhayan.


Manage
Room :
Add New Item
Name
Type
Brand
Warranty Start
Warranty End
Actions
Name
Type
Brand
Warranty Start
Warranty End
Back


In addition to importing a complete database, Proximity lets you import individual containers and attributes. This feature lets Proximity users share data and results and store data off line. To import additional data into an existing database, use the import-xml.sh script (import-xml.bat for Windows) to import a Proximity XML data file containing the new data.
By default, you cannot import
objects or
links
into an existing database if
it already contains any items of that type. That is, you cannot
import any additional objects if you have previously created at least one
object in the database and you cannot import any additional links if
you have previously created at least one link in the database.
Similarly, you can only import new attributes. Once an attribute has
been defined for a database, you cannot add additional values for
that attribute. This behavior can be overridden through use of the
noChecks
flag, described in
“Importing XML data using noChecks
”.
Imported containers are always created at the top level
(directly under the root container), regardless of where the container
lived in the source database. Any nested containers within the
imported container retain their relative nesting, however. For
example, if you exported the /1d-clusters/samples
container, which includes nested containers
/1d-clusters/samples/0
and
/1d-clusters/samples/1
, and later imported that container
into another database, the destination database ends up with the
containers /samples/0
and
/samples/1
without the parent
1d-clusters container, regardless of whether the
destination database already includes a 1d-clusters container.
(The container hierarchy notation used in this paragraph is explained
in “Exporting Data to XML”.)
|
When importing attributes and containers, you are responsible for ensuring that object, link, subgraph, and container identifiers match those in the existing database. Proximity makes no checks to ensure that attributes are assigned to items that are actually present in the database. Errors in identifiers may result in inaccurate data being stored in the database. |
The following exercise walks through the process of importing a new attribute, url_hierarchy3, and its values into the existing ProxWebKB database. This attribute stores the third directory in the path after the domain name, extracted from the object’s URL. We can import this attribute into an existing database because the ProxWebKB database created in Exercise 3.1 does not include any values for the url_hierarchy3 attribute.
Exercise 3.2. Importing attribute values using XML:
Before beginning, make sure that you are serving the ProxWebKB database (created in Exercise 3.1) using Mserver. You must have completed Exercise 3.1 before running the current exercise. Data files must be on the same machine as that serving the database.
Uncompress the file containing the url_hierarchy3 attribute values.
>cd $PROX_HOME/doc/user/tutorial/examples
>gunzip url_hierarchy3_attr.xml.gz
Change to the $PROX_HOME
directory.
Import the url_hierarchy3 attribute data. (Substitute the appropriate port number if you are using a different port.)
> bin/import-xml.sh localhost:30000 \
$PROX_HOME/doc/user/tutorial/examples/url_hierarchy3_attr.xml
When the import process is finished, Proximity reports on the number of database entities created.
INFO app.ImportXMLApp: * done importing; counts: 0 objects, 0 links, 1 attributes, 868 attribute values, 0 containers, 0 subgraph items
Because many URLs do not include three levels of directories after the domain name, only 868 out of 4135 objects have a value for this attribute.


4
Select Room Type |
Select Passengers |
|
|---|---|---|
| CLEAR |
{include file='/book_tour/includes/header' /} {include file='/book_tour/includes/top_nav' /} "; $tourPax .= $pax . "|" . $ageCat ; $tourPax .= ""; } if($room_info_arr[$i]['charge_type'] == 2) { $child_bed = $room_info_arr[$i]['charge_num']; $is_status = ''.$child_bed.' x child/s need to pay bed charge'; } if($room_info_arr[$i]['charge_type'] == 1) { $single_bed = $room_info_arr[$i]['charge_num']; $is_status = 'This person needs to pay Single Supplement fee'; } $roomInfo.=("
$a. $type
Select Room Type |
Select Passengers |
|
|---|---|---|
| CLEAR |
Is Tip and Compulsory Program Pre-Paid ?


|
HamlPHP
Yet another Haml parser written in PHP
|
Functions | |
| __construct ($str) | |
| offsetExists ($offset) | |
| offsetGet ($offset) | |
| offsetSet ($offset, $value) | |
| offsetUnset ($offset) | |
| isBeginningOfLine () | |
| check ($pattern) | |
| checkUntil ($pattern) | |
| concat ($str) | |
| _getEos () | |
| eos () | |
| exist ($pattern) | |
| getch () | |
| inspect () | |
| match ($pattern) | |
| matched () | |
| getMatched () | |
| getMatchedSize () | |
| peek ($len) | |
| getPointer () | |
| getPos () | |
| setPointer ($i) | |
| setPos ($i) | |
| postMatch () | |
| preMatch () | |
| reset () | |
| getRest () | |
| hasRest () | |
| restSize () | |
| scan ($pattern) | |
| scanFull ($pattern, $advance_pointer, $return_string) | |
| scanUntil ($pattern) | |
| searchFull ($pattern, $advance_pointer, $return_string) | |
| skip ($pattern) | |
| skipUntil ($pattern) | |
| getString () | |
| setString ($str) | |
| terminate () | |
| unscan () | |
Variables | |
| $magic_get_methods | |
Magic Properties | |
| int | $pointer |
| Returns the current pointer position. | |
| $bol | |
| Returns true if the scan $pointer is at the beginning of a new line. | |
| $matched | |
| Returns true if the last match was successful. |
$bol [inherited] |
Returns true if the scan $pointer is at the beginning of a new line.
$matched [inherited] |
Returns true if the last match was successful.
int $pointer [inherited] |
Returns the current pointer position.
| __construct | ( | $ | str | ) | [inherited] |
Creates a new StringScanner object to scan over the given $string.
| string | $str |
Definition at line 196 of file StringScanner.php.
| _getEos | ( | ) | [protected, inherited] |
Definition at line 395 of file StringScanner.php.
| check | ( | $ | pattern | ) | [inherited] |
This returns the value that scan would return, without advancing the scan pointer. The match register is affected, though.
$s = new StringScanner("Fri Dec 12 1975 14:39"); $s->check('/Fri/); # -> "Fri" $s->pos; # -> 0 $s->matched; # -> "Fri" $s->check('/12/') # -> null $s->matched; # -> null
Mnemonic: it "checks" to see whether a scan will return a value.
| string | $pattern |
Definition at line 353 of file StringScanner.php.
| checkUntil | ( | $ | pattern | ) | [inherited] |
This returns the value that scanUntil() would return, without advancing the scan $pointer. The match register is affected, though.
$s = new StringScanner("Fri Dec 12 1975 14:39") $s->check_until('/12/'); # -> "Fri Dec 12" $s->pos; # -> 0 $s->matched; # -> 12
Mnemonic: it "checks" to see whether a scan_until will return a value.
| string | $pattern |
Definition at line 371 of file StringScanner.php.
| concat | ( | $ | str | ) | [inherited] |
Appends $str to the $string being scanned. This method does not affect scan $pointer.
$s = new StringScanner("Fri Dec 12 1975 14:39") $s->scan('/Fri /'); $s->concat(" +1000 GMT"); $s->string; // -> "Fri Dec 12 1975 14:39 +1000 GMT" $s->scan('/Dec/'); // -> "Dec"
| $str |
Definition at line 387 of file StringScanner.php.
| eos | ( | ) | [inherited] |
Returns true if the scan $pointer is at the end of the string.
$s = new StringScanner('test string'); echo $s->eos(); # => false $s->scan('/test/'); echo $s->eos(); # => false $s->terminate(); echo $s->eos(); # => true
Definition at line 412 of file StringScanner.php.
| exist | ( | $ | pattern | ) | [inherited] |
Looks ahead to see if the $pattern exists anywhere in the $string, without advancing the scan $pointer. This predicts whether a scanUntil() will return a value.
$s = new StringScanner('test string'); $s->exist /s/ # -> 3 $s->scan /test/ # -> "test" $s->exist /s/ # -> 2 $s->exist /e/ # -> null
| string | $pattern |
Definition at line 429 of file StringScanner.php.
| getch | ( | ) | [inherited] |
Scans one character and returns it. This method is multibyte character sensitive.
$s = new StringScanner("ab") $s->getch; # => "a" $s->getch; # => "b" $s->getch; # => null $s = new StringScanner("\244\242") $s->getch; # => "\244\242" # Japanese hira-kana "A" in EUC-JP $s->getch; # => null
Definition at line 483 of file StringScanner.php.
| getMatched | ( | ) | [inherited] |
Returns the last matched string.
$s = new StringScanner('test string'); $s->match('/\w+/'); # -> 4 $s->matched; # -> "test"
Definition at line 575 of file StringScanner.php.
| getMatchedSize | ( | ) | [inherited] |
Returns the size of the most recent match (see matched), or null if there was no recent match.
$s = new StringScanner('test string'); $s->check /\w+/ # -> "test" $s->matched_size; # -> 4 $s->check /\d+/ # -> null $s->matched_size; # -> null
Definition at line 592 of file StringScanner.php.
| getPointer | ( | ) | [inherited] |
Returns the character position of the scan $pointer. In the 'reset' position, this value is zero. In the 'terminated' position (i.e. the string is exhausted), this value is the size of the $string.
In short, it's a 0-based index into the $string.
$s = new StringScanner('test string'); $s->pos; # -> 0 $s->scan_until /str/ # -> "test str" $s->pos; # -> 8 $s->terminate(); # -> #<StringScanner fin> $s->pos; # -> 11
Definition at line 636 of file StringScanner.php.
| getPos | ( | ) | [inherited] |
Same as getPointer() Returns the character position of the scan $pointer. In the 'reset' position, this value is zero. In the 'terminated' position (i.e. the string is exhausted), this value is the size of the $string.
In short, it's a 0-based index into the $string.
$s = new StringScanner('test string'); $s->pos; # -> 0 $s->scan_until /str/ # -> "test str" $s->pos; # -> 8 $s->terminate(); # -> #<StringScanner fin> $s->pos; # -> 11
Definition at line 659 of file StringScanner.php.
| getRest | ( | ) | [inherited] |
Returns the "rest" of the string (i.e. everything after the scan pointer). If there is no more data (eos? = true), it returns ""
.
Definition at line 758 of file StringScanner.php.
| getString | ( | ) | [inherited] |
| hasRest | ( | ) | [inherited] |
Returns true if there is more data in the string. See #eos?. This method is obsolete; use #eos? instead.
$s = new StringScanner('test string'); $s->eos; # These two $s->rest; # are opposites.
Definition at line 774 of file StringScanner.php.
| inspect | ( | ) | [inherited] |
Returns a string that represents the StringScanner object, showing:
$s = new StringScanner("Fri Dec 12 1975 14:39") $s->inspect; # -> '#<StringScanner 0/21 @ "Fri D...">' $s->scan_until /12/ # -> "Fri Dec 12" $s->inspect; # -> '#<StringScanner 10/21 "...ec 12" @ " 1975...">'
Definition at line 510 of file StringScanner.php.
| isBeginningOfLine | ( | ) | [inherited] |
Returns true if the scan $pointer is at the beginning of the line. $bol
$s = new StringScanner("test\ntest\n"); $s->bol(); # => true $s->scan('/te/'); $s->bol(); # => false $s->scan('/st\n/'); $s->bol(); # => true $s->terminate(); $s->bol(); # => true
Definition at line 335 of file StringScanner.php.
| match | ( | $ | pattern | ) | [inherited] |
Tests whether the given $pattern is matched from the current scan $pointer. Returns the length of the match, or
null
. The scan $pointer is not advanced.
$s = new StringScanner('test string'); echo $s->match('/\w+/'); # -> 4 echo $s->match('/\w+/'); # -> 4 echo $s->match('/\s+/'); # -> null
| string | $pattern |
Definition at line 547 of file StringScanner.php.
| matched | ( | ) | [inherited] |
Returns true if the last match was successful.
$s = new StringScanner('test string'); $s->match('/\w+/'); # => 4 $s->matched; # => true $s->match('/\d+/'); # => null $s->matched; # => false
Definition at line 562 of file StringScanner.php.
| offsetExists | ( | $ | offset | ) | [inherited] |
Wether the n-th group was caught or not in the last match. 0 stands for the whole match. This method is executed when using isset() or empty().
| int | $offset |
Definition at line 274 of file StringScanner.php.
| offsetGet | ( | $ | offset | ) | [inherited] |
Implements ArrayAccess Return the n-th subgroup in the most recent match.
$s = new StringScanner("Fri Dec 12 1975 14:39"); $s->scan('/(\w+) (\w+) (\d+) /'); # -> "Fri Dec 12 " echo $s[0]; # -> "Fri Dec 12 " echo $s[1]; # -> "Fri" echo $s[2]; # -> "Dec" echo $s[3]; # -> "12" echo $s->post_match(); # -> "1975 14:39" echo $s->pre_match(); # -> ""
| int | $offset |
Definition at line 294 of file StringScanner.php.
| offsetSet | ( | $ | offset, |
| $ | value | ||
| ) | [inherited] |
Calling this method will throw an exception. You can't set the value of the last match.
Definition at line 303 of file StringScanner.php.
| offsetUnset | ( | $ | offset | ) | [inherited] |
Calling this method will throw an exception. You can't unset the value of the last match.
Definition at line 312 of file StringScanner.php.
| peek | ( | $ | len | ) | [inherited] |
Extracts a string corresponding to substr($string, $pos, $len)
, without advancing the scan pointer.
$s = new StringScanner('test string'); $s->peek(7) # => "test st" $s->peek(7) # => "test st"
| $len |
Definition at line 611 of file StringScanner.php.
| postMatch | ( | ) | [inherited] |
Return the post-match (in the regular expression sense) of the last scan.
$s = new StringScanner('test string'); $s->scan('/\w+/'); # -> "test" $s->scan('/\s+/'); # -> " " $s->pre_match; # -> "test" $s->post_match; # -> "string"
Definition at line 715 of file StringScanner.php.
| preMatch | ( | ) | [inherited] |
Return the pre-match (in the regular expression sense) of the last scan.
$s = new StringScanner('test string'); $s->scan('/\w+/'); # -> "test" $s->scan('/\s+/'); # -> " " $s->pre_match; # -> "test" $s->post_match; # -> "string"
Definition at line 735 of file StringScanner.php.
| reset | ( | ) | [inherited] |
Reset the scan pointer (index 0) and clear matching data.
Definition at line 746 of file StringScanner.php.
| restSize | ( | ) | [inherited] |
$s->restSize() is equivalent to mb_strlen($s->rest)
Definition at line 782 of file StringScanner.php.
| scan | ( | $ | pattern | ) | [inherited] |
Tries to match with $pattern at the current position. If there's a match, the scanner advances the scan $pointer and returns the matched string. Otherwise, the scanner returns
null
.
$s = new StringScanner('test string'); echo $s->scan('/\w+/'); # -> "test" echo $s->scan('/\w+/'); # -> null echo $s->scan('/\s+/'); # -> " " echo $s->scan('/\w+/'); # -> "string" echo $s->scan('/./'); # -> null
| string | $pattern |
Definition at line 801 of file StringScanner.php.
| scanFull | ( | $ | pattern, |
| $ | advance_pointer, | ||
| $ | return_string | ||
| ) | [inherited] |
Tests whether the given +pattern+ is matched from the current scan pointer. Advances the scan pointer if +advance_pointer_p+ is true. Returns the matched string if +return_string_p+ is true. The match register is affected.
"full" means "#scan with full parameters".
| string | $pattern | The regular expression |
| bool | $advance_pointer | Wheter to update the pointer or not |
| bool | $return_string | Wheter to return the matched string or the position |
Definition at line 819 of file StringScanner.php.
| scanUntil | ( | $ | pattern | ) | [inherited] |
Scans the string _until_ the +pattern+ is matched. Returns the substring up to and including the end of the match, advancing the scan pointer to that location. If there is no match, +null+ is returned.
$s = new StringScanner("Fri Dec 12 1975 14:39"); $s->scan_until('/1/'); # -> "Fri Dec 1" $s->pre_match(); # -> "Fri Dec " $s->scan_until('/XYZ/'); # -> null
| string | $pattern |
Definition at line 838 of file StringScanner.php.
| searchFull | ( | $ | pattern, |
| $ | advance_pointer, | ||
| $ | return_string | ||
| ) | [inherited] |
Scans the string _until_ the $pattern is matched. Advances the scan pointer if $advance_pointer, otherwise not. Returns the matched string if $return_string is true, otherwise returns the number of bytes advanced. This method does affect the match register.
| string | $pattern | The regular expression |
| bool | $advance_pointer | Wheter to update the pointer or not |
| bool | $return_string | Wheter to return the matched string or the position |
Definition at line 855 of file StringScanner.php.
| setPointer | ( | $ | i | ) | [inherited] |
Set the byte position of the scan pointer.
$s = new StringScanner('test string'); $s->pos = 7 # -> 7 $s->rest; # -> "ring"
| int | $i |
Definition at line 674 of file StringScanner.php.
| setPos | ( | $ | i | ) | [inherited] |
Same as setPointer() Set the byte position of the scan pointer.
$s = new StringScanner('test string'); $s->pos = 7 # -> 7 $s->rest; # -> "ring"
| int | $i |
Definition at line 699 of file StringScanner.php.
| setString | ( | $ | str | ) | [inherited] |
Changes the string being scanned to +str+ and resets the scanner.
| string | $str |
Definition at line 920 of file StringScanner.php.
| skip | ( | $ | pattern | ) | [inherited] |
Attempts to skip over the given +pattern+ beginning with the scan pointer. If it matches, the scan pointer is advanced to the end of the match, and the length of the match is returned. Otherwise, +null+ is returned.
It's similar to #scan, but without returning the matched string.
$s = new StringScanner('test string'); echo $s->skip('/\w+/'); # -> 4 echo $s->skip('/\w+/'); # -> null echo $s->skip('/\s+/'); # -> 1 echo $s->skip('/\w+/'); # -> 6 echo $s->skip('/./'); # -> null
| string | $pattern |
Definition at line 878 of file StringScanner.php.
| skipUntil | ( | $ | pattern | ) | [inherited] |
Advances the scan pointer until +pattern+ is matched and consumed. Returns the number of bytes advanced, or +null+ if no match was found.
Look ahead to match +pattern+, and advance the scan pointer to the _end_ of the match. Return the number of characters advanced, or +null+ if the match was unsuccessful.
It's similar to #scan_until, but without returning the intervening string.
$s = new StringScanner("Fri Dec 12 1975 14:39"); $s->skip_until('/12/'); # -> 10
| string | $pattern |
Definition at line 900 of file StringScanner.php.
| terminate | ( | ) | [inherited] |
Set the scan pointer to the end of the string and clear matching data.
Definition at line 930 of file StringScanner.php.
| unscan | ( | ) | [inherited] |
Set the scan pointer to the previous position. Only one previous position is remembered, and it changes with each scanning operation.
$s = new StringScanner('test string'); $s->scan('/\w+/'); # => "test" $s->unscan(); $s->scan('/../'); # => "te" $s->scan('/\d/'); # => null $s->unscan(); # ScanError: unscan failed: previous match record not exist
Definition at line 947 of file StringScanner.php.
$magic_get_methods [protected, inherited] |
array( 'bol' => 'isBeginningOfLine', 'beginningOfLine' => 'isBeginningOfLine' )
Definition at line 187 of file StringScanner.php.


Example cookies page based on Ministerio de Defensa de España.
Scroll or click anywere and cookies will be accepted.


DESIGN AND CHARACTERIZATION OF ZEOLITES
SUPPORTED COBALT CARBONYL CATALYSTS
by
Melissa Clare Connaway
Dissertation submitted to the Faculty of the Virginia Polytechnic Institute and State University in partial fulfillment of the requirements for the degree of
OOCTOR OF PHILOSOPHY ia
Chemistry
A? PROVED: 8. BE. Hanson, Chairman J. G. Dillard - 2b 1g LD J. M. Tanko M. E. Davis
July, 1987
Blacksburg, Virginia


|
|
IFXMesh Class ReferenceThis object represents a single mesh (3D surface).
More...
Inheritance diagram for IFXMesh:
List of all members.
|
Public Member Functions |
| virtual IFXRESULT IFXAPI | Allocate (IFXVertexAttributes vaAttribs, U32 uNumVertices, U32 uNumFaces)=0 |
| virtual IFXRESULT IFXAPI | Copy (IFXMesh &rSrcMesh)=0 |
| virtual IFXRESULT IFXAPI | FastCopy (IFXMesh &rSrcMesh, U32 uStartVertex, U32 uNumVertices, U32 uStartFace, U32 uNumFaces)=0 |
| virtual IFXRESULT IFXAPI | TransferData (IFXMesh &rSrcMesh, IFXMeshAttributes uTransferAttr, IFXMeshAttributes uCopyAttr)=0 |
| virtual IFXRESULT IFXAPI | IncreaseSize (U32 uNumNewFaces, U32 uNumNewVerts)=0 |
| virtual IFXRESULT IFXAPI | GetVertexIter (IFXVertexIter &iter)=0 |
| IFXRESULT IFXAPI | GetPositionIter (IFXVector3Iter &iter) |
| IFXRESULT IFXAPI | GetNormalIter (IFXVector3Iter &iter) |
| IFXRESULT IFXAPI | GetTexCoordIter (IFXIterator &iter, U32 uLayer=0) |
| virtual IFXRESULT IFXAPI | GetVectorIter (IFXenum eType, IFXIterator &iter)=0 |
| virtual IFXRESULT IFXAPI | GetFaceIter (IFXFaceIter &iter)=0 |
| virtual IFXRESULT IFXAPI | GetU16FaceIter (IFXU16FaceIter &iter)=0 |
| virtual IFXRESULT IFXAPI | GetU32FaceIter (IFXU32FaceIter &iter)=0 |
| virtual IFXRESULT IFXAPI | GetLineIter (IFXLineIter &iter)=0 |
| virtual IFXRESULT IFXAPI | GetU16LineIter (IFXU16LineIter &iter)=0 |
| virtual IFXRESULT IFXAPI | GetU32LineIter (IFXU32LineIter &iter)=0 |
| virtual IFXRESULT IFXAPI | GetMeshData (IFXenum eMeshAttribute, IFXInterleavedData *&pMeshData)=0 |
| virtual IFXRESULT IFXAPI | SetMeshData (IFXenum eMeshAttribute, IFXInterleavedData *pMeshData)=0 |
| virtual IFXRESULT IFXAPI | GetInterleavedVertexData (IFXInterleavedData *&pMeshData)=0 |
| virtual IFXRESULT IFXAPI | PurgeRenderData ()=0 |
| virtual IFXRESULT IFXAPI | GetVersionWord (IFXenum eMeshAttribute, U32 &uVersionWord)=0 |
| virtual IFXRESULT IFXAPI | UpdateVersionWord (IFXenum eMeshAttribute)=0 |
virtual IFXVertexAttributes
IFXAPI | GetAttributes ()=0 |
| virtual U32 IFXAPI | GetNumAllocatedVertices ()=0 |
| virtual U32 IFXAPI | GetMaxNumVertices ()=0 |
| virtual U32 IFXAPI | GetNumVertices ()=0 |
| virtual U32 IFXAPI | GetNumAllocatedFaces ()=0 |
| virtual U32 IFXAPI | GetMaxNumFaces ()=0 |
| virtual U32 IFXAPI | GetNumFaces ()=0 |
| virtual IFXRESULT IFXAPI | AllocateLines (U32 uNumLines)=0 |
| virtual U32 IFXAPI | GetNumAllocatedLines ()=0 |
| virtual U32 IFXAPI | GetMaxNumLines ()=0 |
| virtual U32 IFXAPI | GetNumLines ()=0 |
| virtual IFXRESULT IFXAPI | SetMaxNumVertices (U32 uNumVertices)=0 |
| virtual IFXRESULT IFXAPI | SetMaxNumFaces (U32 uNumFaces)=0 |
| virtual IFXRESULT IFXAPI | SetMaxNumLines (U32 uNumLines)=0 |
| virtual IFXRESULT IFXAPI | SetNumVertices (U32 uNumVertices)=0 |
| virtual IFXRESULT IFXAPI | SetNumFaces (U32 uNumFaces)=0 |
| virtual IFXRESULT IFXAPI | SetNumLines (U32 uNumLines)=0 |
| virtual IFXRESULT IFXAPI | GetBoundingSphere (IFXVector4 &vBoundSphere)=0 |
| virtual IFXRESULT IFXAPI | SetBoundingSphere (const IFXVector4 &vBoundSphere)=0 |
| virtual IFXRESULT IFXAPI | CalcBoundingSphere ()=0 |
| virtual BOOL IFXAPI | IsColorBGR (U32 uColorNum=0)=0 |
| virtual IFXRESULT IFXAPI | SwizzleDiffuseColors ()=0 |
| virtual IFXRESULT IFXAPI | SwizzleSpecularColors ()=0 |
| virtual U32 IFXAPI | GetId () const =0 |
| virtual U32 IFXAPI | NewId ()=0 |
| virtual void IFXAPI | SetId (U32 id)=0 |
| virtual IFXRESULT IFXAPI | SetRenderTexCoordsInUse (IFXMeshAttributes eTexCoordBits)=0 |
virtual IFXMeshAttributes
IFXAPI | GetRenderTexCoordsInUse ()=0 |
| virtual IFXRESULT IFXAPI | SetNumTextureCoords (U32 uNumTextureCoords)=0 |
| virtual U32 IFXAPI | GetNumTextureCoords () const =0 |
virtual IFXUVMapParameters
&IFXAPI | GetUVMapParameters (U32 uTexLayer)=0 |
| virtual IFXRESULT IFXAPI | ReverseNormals ()=0 |
| virtual IFXRESULT IFXAPI | GetOffsetTransform (IFXMatrix4x4 *pMatrix) const =0 |
| virtual IFXRESULT IFXAPI | SetOffsetTransform (IFXMatrix4x4 *pMatrix)=0 |
| virtual EIFXRenderable IFXAPI | GetRenderableType () const =0 |
| virtual void IFXAPI | SetRenderableType (EIFXRenderable type)=0 |
Protected Member Functions |
| | IFXMesh () |
| virtual | ~IFXMesh () |
Detailed Description
This object represents a single mesh (3D surface).
The surface contains indexed triangle lists. The triangle vertices contain a variable number of vertex attributes that are specified upon allocation. These attributes can include positions, normals, colors, and texture coordinates. The triangles are defined by an array of triangle faces, with each face containing three vertex indices. These indices will be 32 bits in size if the number of allocated vertices are more than 65536, otherwise the indices will be 16 bits in size.
The mesh is divided into two or more distinct memory pools: vertices and faces. There could also be additional vertex pools for storing texture coordinates depending upon the settings of the IFXVertexAttributes object passed in during IFXMesh::Allocate(). These pools of memory are contained in IFXInterleavedData objects.
Constructor & Destructor Documentation
| IFXMesh::IFXMesh |
( |
|
) |
[inline, protected] |
|
| virtual IFXMesh::~IFXMesh |
( |
|
) |
[inline, protected, virtual] |
|
Member Function Documentation
|
|
Allocates (or reallocates) memory for the vertex and face pools depending on the vertex attributes and the number of vertices and faces that were passed in.
- Parameters:
-
| vaAttribs | Input IFXVertexAttributes object that specifies what data is stored in each vertex. |
| uNumVertices | Input U32 specifying how many vertices to allocate space for. The size of each vertex is dependent on the settings of vaAttribs. |
| uNumFaces | Input U32 specifying the number of faces to allocate space for. The size of each face is dependent on how many vertices are being allocated. If there are less than 65536 vertices, each face is 6 bytes, otherwise each face is 12 bytes. |
- Returns:
- IFXRESULT.
- Return values:
-
| IFX_OK | No error. |
| IFX_E_OUT_OF_MEMORY | There is not enough memory available to complete this method. The mesh is in an undefined state when this occurs. |
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::AllocateLines |
( |
U32 |
uNumLines |
) |
[pure virtual] |
|
| virtual IFXRESULT IFXAPI IFXMesh::CalcBoundingSphere |
( |
|
) |
[pure virtual] |
|
| virtual IFXRESULT IFXAPI IFXMesh::Copy |
( |
IFXMesh & |
rSrcMesh |
) |
[pure virtual] |
|
|
|
Copies the entire mesh data that lives in rSrcMesh into this mesh object.
Data that exists in the current mesh that does not get replaced with data in rSrcMesh will be preserved. If this mesh object does not have enough memory allocated for the data, this mesh will be reallocated.
- Parameters:
-
| rSrcMesh | Input IFXMesh reference containing mesh data that will be copied into this mesh object. |
- Returns:
- IFXRESULT.
- Return values:
-
| IFX_OK | No error. |
| IFX_E_OUT_OF_MEMORY | There is not enough memory available to complete this method. The mesh is in an undefined state when this occurs. |
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::FastCopy |
( |
IFXMesh & |
rSrcMesh, |
|
|
U32 |
uStartVertex, |
|
|
U32 |
uNumVertices, |
|
|
U32 |
uStartFace, |
|
|
U32 |
uNumFaces |
|
) |
[pure virtual] |
|
|
|
Copies a portion of rSrcMesh into the current mesh object.
The vertex attributes of rSrcMesh and this mesh must be identical. This method allows a fast memcpy() data copy rather than working element by element. This method will clamp the number of vertices copied to what is allocated in the target mesh.
- Parameters:
-
| rSrcMesh | Input Reference to an IFXMesh containing mesh data to be copied into this mesh. |
| uStartVertex | Vertex index that begins the range of vertex data to copy. |
| uNumVertices | Number of vertices to copy. |
| uStartFace | Face index that begins the range of face data to copy. |
| uNumFaces | Number of faces to copy. |
- Returns:
- IFXRESULT.
- Return values:
-
| IFX_OK | No error. |
| IFX_E_INVALID_POINTER | The vertex attributes of rSrcMesh are not compatible with this mesh. |
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::GetBoundingSphere |
( |
IFXVector4 & |
vBoundSphere |
) |
[pure virtual] |
|
| virtual IFXRESULT IFXAPI IFXMesh::GetFaceIter |
( |
IFXFaceIter & |
iter |
) |
[pure virtual] |
|
|
|
Retrieves an IFXFaceIter that will work with both 16 and 32 bit vertex indices.
This iterator can be used to iterate over the faces in this mesh. This will be slower than using GetU16FaceIter() or GetU32FaceIter().
- Parameters:
-
| iter | Ouptut IFXFaceIter reference that will iterate over the faces contained in the mesh, regardless of face index size. |
- Returns:
- IFXRESULT.
- Return values:
-
Implemented in CIFXMesh. |
| virtual U32 IFXAPI IFXMesh::GetId |
( |
|
) |
const [pure virtual] |
|
|
|
Gets the unique ID number for this mesh.
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::GetInterleavedVertexData |
( |
IFXInterleavedData *& |
pMeshData |
) |
[pure virtual] |
|
| virtual IFXRESULT IFXAPI IFXMesh::GetLineIter |
( |
IFXLineIter & |
iter |
) |
[pure virtual] |
|
|
|
Retrieves an IFXLineIter that will work with both 16 and 32 bit vertex indices.
This iterator can be used to iterate over the lines in this mesh. This will be slower than using GetU16LineIter() or GetU32LineIter()
- Parameters:
-
| iter | Ouptut IFXLineIter reference that will iterate over the Lines contained in the mesh, regardless of Line index size. |
- Returns:
- IFXRESULT.
- Return values:
-
Implemented in CIFXMesh. |
| virtual U32 IFXAPI IFXMesh::GetMaxNumFaces |
( |
|
) |
[pure virtual] |
|
| virtual U32 IFXAPI IFXMesh::GetMaxNumLines |
( |
|
) |
[pure virtual] |
|
| virtual U32 IFXAPI IFXMesh::GetMaxNumVertices |
( |
|
) |
[pure virtual] |
|
|
|
Retrieves an iterator to iterate over the mesh's vertex normal data.
- Parameters:
-
| iter | Output reference to an IFXVector3Iter that can be used to iterate over the vertex normal data of the mesh. |
- Returns:
- An IFXRESULT value.
- Return values:
-
| IFX_OK | No error. |
| IFX_E_INVALID_RANGE | The mesh does not contain vertex normals. |
|
| virtual U32 IFXAPI IFXMesh::GetNumAllocatedFaces |
( |
|
) |
[pure virtual] |
|
| virtual U32 IFXAPI IFXMesh::GetNumAllocatedLines |
( |
|
) |
[pure virtual] |
|
| virtual U32 IFXAPI IFXMesh::GetNumAllocatedVertices |
( |
|
) |
[pure virtual] |
|
| virtual U32 IFXAPI IFXMesh::GetNumFaces |
( |
|
) |
[pure virtual] |
|
| virtual U32 IFXAPI IFXMesh::GetNumLines |
( |
|
) |
[pure virtual] |
|
| virtual U32 IFXAPI IFXMesh::GetNumTextureCoords |
( |
|
) |
const [pure virtual] |
|
|
|
Gets the number texture coordinates in use.
Implemented in CIFXMesh. |
| virtual U32 IFXAPI IFXMesh::GetNumVertices |
( |
|
) |
[pure virtual] |
|
| virtual IFXRESULT IFXAPI IFXMesh::GetOffsetTransform |
( |
IFXMatrix4x4 * |
pMatrix |
) |
const [pure virtual] |
|
|
|
Returns the offset transform for a mesh.
- Parameters:
-
| pMatrix | The pointer to the transformation matrix |
- Returns:
- An IFXRESULT value.
- Return values:
-
Implemented in CIFXMesh. |
| IFXINLINE IFXRESULT IFXMesh::GetPositionIter |
( |
IFXVector3Iter & |
iter |
) |
|
|
|
|
Retrieves an iterator to iterate over the mesh's vertex position data.
- Parameters:
-
| iter | Output reference to an IFXVector3Iter that can be used to iterate over the vertex position data of the mesh. |
- Returns:
- IFXRESULT.
- Return values:
-
| IFX_OK | No error. |
| IFX_E_INVALID_RANGE | The mesh does not contain vertex positions. |
|
| virtual EIFXRenderable IFXAPI IFXMesh::GetRenderableType |
( |
|
) |
const [pure virtual] |
|
|
|
Returns the type of renderable which produced the mesh.
- Returns:
- An EIFXRenderable value.
Implemented in CIFXMesh. |
|
|
Gets the set of render texture coordinates in use.
Implemented in CIFXMesh. |
| IFXINLINE IFXRESULT IFXMesh::GetTexCoordIter |
( |
IFXIterator & |
iter, |
|
|
U32 |
uLayer = 0 |
|
) |
|
|
|
|
Retrieves an iterator to iterate over the mesh's vertex texture coordinate data.
The iter parameter can be any type of iterator. However, if the iterator type is bigger than the size of the texture coordinates (i.e. an IFXVector3Iter to iterate over two component texture coordinates), then this method will fail.
- Parameters:
-
| iter | Output reference to an IFXIterator that can be used to iterate over the texture coordinate data of the mesh. |
| uLayer | Input U32 representing which texture coordinate layer (0-7) to iterate over. The default is 0. |
- Returns:
- An IFXRESULT value.
- Return values:
-
| IFX_OK | No error. |
| IFX_E_INVALID_RANGE | The mesh does not contain the specified texture coordinate layer uLayer, or the iter object is too big for the allocated texture coordinates. |
|
| virtual IFXRESULT IFXAPI IFXMesh::GetU16FaceIter |
( |
IFXU16FaceIter & |
iter |
) |
[pure virtual] |
|
|
|
Retrieves an IFXU16FaceIter to iterate over the mesh's face data.
This method will fail if the mesh contains 32 bit face indices. The IFXU16FaceIter is much faster than using IFXFaceIter for the same data.
- Parameters:
-
| iter | Output IFXU16FaceIter that can be used to iterate over this mesh's face data. |
- Returns:
- IFXRESULT.
- Return values:
-
| IFX_OK | No error. |
| IFX_E_INVALID_RANGE | The mesh contains 32 bit face indices, which are incompatible with IFXU16FaceIter. |
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::GetU16LineIter |
( |
IFXU16LineIter & |
iter |
) |
[pure virtual] |
|
|
|
Retrieves an IFXU16LineIter to iterate over the mesh's Line data.
This method will fail if the mesh contains 32 bit Line indices. The IFXU16LineIter is much faster than using IFXLineIter for the same data.
- Parameters:
-
| iter | Output IFXU16LineIter that can be used to iterate over this mesh's Line data. |
- Returns:
- IFXRESULT.
- Return values:
-
| IFX_OK | No error. |
| IFX_E_INVALID_RANGE | The mesh contains 32 bit Line indices, which are incompatible with IFXU16LineIter. |
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::GetU32FaceIter |
( |
IFXU32FaceIter & |
iter |
) |
[pure virtual] |
|
|
|
Retrieves an IFXU32FaceIter to iterate over the mesh's face data.
This method will fail if the mesh contains 16 bit face indices. The IFXU16FaceIter is much faster than using IFXFaceIter for the same data.
- Parameters:
-
| iter | Output IFXU32FaceIter that can be used to iterate over this mesh's face data. |
- Returns:
- IFXRESULT.
- Return values:
-
| IFX_OK | No error. |
| IFX_E_INVALID_RANGE | The mesh contains 16 bit face indices, which are incompatible with IFXU32FaceIter. |
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::GetU32LineIter |
( |
IFXU32LineIter & |
iter |
) |
[pure virtual] |
|
|
|
Retrieves an IFXU32LineIter to iterate over the mesh's Line data.
This method will fail if the mesh contains 16 bit Line indices. The IFXU16LineIter is much faster than using IFXLineIter for the same data.
- Parameters:
-
| iter | Output IFXU32LineIter that can be used to iterate over this mesh's Line data. |
- Returns:
- IFXRESULT.
- Return values:
-
| IFX_OK | No error. |
| IFX_E_INVALID_RANGE | The mesh contains 16 bit Line indices, which are incompatible with IFXU32LineIter. |
Implemented in CIFXMesh. |
|
|
Gets the IFXUVMapParameters last used for this texture layer.
- Parameters:
-
| uTexLayer | 0 based texture layer index (0-IFX_MAX_TEXUNITS). |
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::GetVectorIter |
( |
IFXenum |
eType, |
|
|
IFXIterator & |
iter |
|
) |
[pure virtual] |
|
|
|
Retrieves a vector iterator that will iterate over a portion of the vertex data associated with the mesh.
This method will fail if the iterator type (say IFXVector4Iter) that is passed in is bigger than the data it is iterating over (for example, Positions, which are IFXVector3 in size).
- Parameters:
-
| eType | Input IFXenum value that specifies what the iterator should iterate over. Possible values are:
- IFX_MESH_POSITION: Iterate over vertex positions.
- IFX_MESH_NORMAL: Iterate over vertex normals.
- IFX_MESH_DIFFUSE_COLOR: Iterate over vertex diffuse colors.
- IFX_MESH_SPECULAR_COLOR: Iterate over vertex specular colors.
- IFX_MESH_TC0: Iterate over texture coordinate layer 0.
- IFX_MESH_TC1: Iterate over texture coordinate layer 1.
- IFX_MESH_TC2: Iterate over texture coordinate layer 2.
- IFX_MESH_TC3: Iterate over texture coordinate layer 3.
- IFX_MESH_TC4: Iterate over texture coordinate layer 4.
- IFX_MESH_TC5: Iterate over texture coordinate layer 5.
- IFX_MESH_TC6: Iterate over texture coordinate layer 6.
- IFX_MESH_TC7: Iterate over texture coordinate layer 7.
|
| iter | Output IFXIterator reference that will be set up to iterate over the data specified with eType. |
- Returns:
- IFXRESULT.
- Return values:
-
| IFX_OK | No error. |
| IFX_E_INVALID_RANGE | Either the attribute specified by eType does not exist in the mesh, or the passed in iter is too big for the data element that would be iterated over. |
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::GetVersionWord |
( |
IFXenum |
eMeshAttribute, |
|
|
U32 & |
uVersionWord |
|
) |
[pure virtual] |
|
|
|
Returns the current version word on a mesh or mesh element.
By comparing this value to a cached version word, we can tell when that element changes, and only update data depending on that element when it changes.
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::GetVertexIter |
( |
IFXVertexIter & |
iter |
) |
[pure virtual] |
|
|
|
Retrieves an iterator to traverse the mesh's vertex data.
- Parameters:
-
| iter | Output reference to an IFXVertexIterator that can be used to iterate over the mesh's vertex data. |
- Returns:
- IFXRESULT.
- Return values:
-
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::IncreaseSize |
( |
U32 |
uNumNewFaces, |
|
|
U32 |
uNumNewVerts |
|
) |
[pure virtual] |
|
|
|
Increases the size of the MaxNumberVertices and MaxNumberFaces.
If necessary, new vertex and face memory pools will be allocated. All data contained in the mesh will be preserved.
If the current number of vertices is less than 65536 and the new number of vertices is greater than 65536, the faces will be converted from 16 bit indices to 32 bit indices. In this case, the index numbers that currently exist will be preserved.
- Parameters:
-
| uNumNewFaces | Number of new faces to increase the face pool by. |
| uNumNewVerts | Number of new vertices to increase the vertex pool by. |
- Returns:
- IFXRESULT.
- Return values:
-
| IFX_OK | No error. |
| IFX_E_OUT_OF_MEMORY | There is not enough memory available to complete this method. The mesh is in an undefined state when this occurs. |
Implemented in CIFXMesh. |
| virtual BOOL IFXAPI IFXMesh::IsColorBGR |
( |
U32 |
uColorNum = 0 |
) |
[pure virtual] |
|
|
|
Indicates whether the color is BGR or not.
Implemented in CIFXMesh. |
| virtual U32 IFXAPI IFXMesh::NewId |
( |
|
) |
[pure virtual] |
|
| virtual IFXRESULT IFXAPI IFXMesh::PurgeRenderData |
( |
|
) |
[pure virtual] |
|
| virtual IFXRESULT IFXAPI IFXMesh::ReverseNormals |
( |
|
) |
[pure virtual] |
|
| virtual IFXRESULT IFXAPI IFXMesh::SetBoundingSphere |
( |
const IFXVector4 & |
vBoundSphere |
) |
[pure virtual] |
|
| virtual void IFXAPI IFXMesh::SetId |
( |
U32 |
id |
) |
[pure virtual] |
|
| virtual IFXRESULT IFXAPI IFXMesh::SetMaxNumFaces |
( |
U32 |
uNumFaces |
) |
[pure virtual] |
|
| virtual IFXRESULT IFXAPI IFXMesh::SetMaxNumLines |
( |
U32 |
uNumLines |
) |
[pure virtual] |
|
| virtual IFXRESULT IFXAPI IFXMesh::SetMaxNumVertices |
( |
U32 |
uNumVertices |
) |
[pure virtual] |
|
| virtual IFXRESULT IFXAPI IFXMesh::SetNumFaces |
( |
U32 |
uNumFaces |
) |
[pure virtual] |
|
| virtual IFXRESULT IFXAPI IFXMesh::SetNumLines |
( |
U32 |
uNumLines |
) |
[pure virtual] |
|
| virtual IFXRESULT IFXAPI IFXMesh::SetNumTextureCoords |
( |
U32 |
uNumTextureCoords |
) |
[pure virtual] |
|
|
|
Sets the number of texture coordinates in use.
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::SetNumVertices |
( |
U32 |
uNumVertices |
) |
[pure virtual] |
|
| virtual IFXRESULT IFXAPI IFXMesh::SetOffsetTransform |
( |
IFXMatrix4x4 * |
pMatrix |
) |
[pure virtual] |
|
|
|
Sets the offset transform for a mesh.
- Parameters:
-
| pMatrix | The pointer to the transformation matrix |
- Returns:
- An IFXRESULT value.
- Return values:
-
Implemented in CIFXMesh. |
| virtual void IFXAPI IFXMesh::SetRenderableType |
( |
EIFXRenderable |
type |
) |
[pure virtual] |
|
|
|
Sets the type of renderable producing the mesh.
- Parameters:
-
- Returns:
- An IFXRESULT value.
- Return values:
-
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::SetRenderTexCoordsInUse |
( |
IFXMeshAttributes |
eTexCoordBits |
) |
[pure virtual] |
|
|
|
Sets the set of render texture coordinates in use.
This should be a combination of IFX_MESH_RENDER_TCx_BIT flags.
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::SwizzleDiffuseColors |
( |
|
) |
[pure virtual] |
|
|
|
Switches the diffuse color channel from BGR to RGB and vice versa.
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::SwizzleSpecularColors |
( |
|
) |
[pure virtual] |
|
|
|
Switches the specular color channel from BGR to RGB and vice versa.
Implemented in CIFXMesh. |
|
|
Conditionally duplicates the source mesh, copying some interleaved data elements and referencing others.
This allows meshes to be copied quickly, with only the data arrays that are going to be changed being duplicated. All the other data will be referenced from the source mesh. If an attribute that is present in the source mesh is not included in the Transfer or the Copy Attr Bits, it will not be included in the new mesh.
- Parameters:
-
| rSrcMesh | Input reference to an IFXMesh containing mesh data to be copied into this mesh. |
| uTransferAttr | Bits representing the attributes that should be referenced from the Src Mesh. Specifing bits that are not present in Src mesh has no effect. |
| uCopyAttr | Bits representing the attributes of the source mesh that should be copied and not just referenced from the source mesh. Specifying bits that reflect attributes not present in the source mesh will cause the new attribute arrays to be created. In this case, Texture coordinates inserted this way will default to 2D. |
- Returns:
- IFXRESULT.
- Return values:
-
| IFX_OK | No error. |
| IFX_E_INVALID_POINTER | The vertex attributes of rSrcMesh are not compatible with this mesh. |
Implemented in CIFXMesh. |
| virtual IFXRESULT IFXAPI IFXMesh::UpdateVersionWord |
( |
IFXenum |
eMeshAttribute |
) |
[pure virtual] |
|
|
|
Updates the version word on a mesh attribute, marking it as dirty to any other parts of the system that are watching for that mesh attribute to change.
Implemented in CIFXMesh. |
© 1999 - 2006 Intel Corporation. All rights reserved.
* Other names and brands may be claimed as the property of others.
|
|


Track Case Project |
Top Previous Next |
|
The Track Case Project submodule is where users track the progress of the actual project tasks. A project consists of many tasks that are a part of a defined workflow that is created and submitted under the Submit New Project process. If a user performs a Change Project process under the My Cases module, all of the changes to the workflow and workflow instructions will be dynamically updated in the Track Project submodule.
There are two ways to enter the Track Project submodule from the Case Project submodule:
1. Select the icon in the Status field in the grid display
2. Select a project in the grid display and select Track Project node in the left section
Track Project Process: |


I served as a 'cryptographic IT guy' in the US Air Force for awhile, and meeting those challenges taught me to enjoy troubleshooting technical problems. This experience, plus years spent tinkering with computers and software, eventually lead me to the vocational programming school where I'm learning to write production-grade code full time.
After moving to Oregon (and before deciding to learn how to program) I studied neuroscience and earned a BS in Psychology at Portland State University. Currently I'm fascinated by the web technologies I learn and use daily, and the expanding arena of cloud services. I live in Southeast Portland with:
I helped move Top Secret data securely in the USAF, and now I like to write code.
Beer occurs when certain yeasts find a sugary fluid to eat and then they make alcohol. Portland has more breweries than any other city (so the hipsters claim).
 It's basically homemade soda without the sugar and with many more nutrients. Many more.


I had the same question a couple years back and there wasn't a reliable source I could find when I doing my own searching, so I thought that I should just compile a list together with the research I've done, so that I save time for other people doing the same.
Now, let's go through what each account has to offer!
Features |
smartaccount |
ISIC Student Account |
|---|---|---|
| Minimum Monthly income | AED 0 | AED 0 |
| Age | 18+ | 13+ |
| Minimum Balance | AED 0 AED 5000 for interest |
AED 0 AED 5000 for interest |
| Monthly Charges | AED 0 | AED 0 |
| Closure Fee before 12 months | AED 100 | AED 100 |
| Closure Fee after 12 months | AED 0 | AED 0 |
| Number of withdrawals per month | N/A | N/A |
| Cash withdrawal limit | up to AED 30000 | N/A |
| Interest rate p.a.(%) | Up to 0.50% | Up to 0.36% |
| Debit card | Yes | Yes |
| Number of debits per month | Over AED 100000 | up to AED 100000 |
| Transfer fees | 1 free domestic and international transfer per month AED 1 locally AED 25 internationally |
N/A |
| Rewards or Discounts | smartdeals (over 1500 deals and discounts) Every AED 1000 spent to win a Tesla |
International database with more than 125,000 discounts 25% off on select restaurants andr retailers |
| Hidden fees | No | No |
| More Information | More Information |
Features |
University Student Account |
Hayyak |
|---|---|---|
| Minimum Monthly income | AED 0 | AED 0 |
| Age | 18+ | 21+ |
| Minimum Balance | AED 1500 | AED 3000 |
| Monthly Charges | AED 0 | AED 0 |
| Closure Fee before 12 months | AED 105 | AED 105 |
| Closure Fee after 12 months | AED 105 | AED 105 |
| Number of withdrawals per month | 6 | N/A |
| Cash withdrawal limit | N/A | AED 5000 |
| Interest rate p.a.(%) | 0 | Up to 0.10% |
| Debit card | Yes | Yes |
| Number of debits per month | N/A | up to AED 100000 |
| Transfer fees | N/A | AED 1.05 locally AED 105 internationally |
| Rewards or Discounts | No | ADCB Touchpoints rewards program. |
| Hidden fees | No | No |
| More Information | More Information |
Features |
Youth Package |
Liv |
|---|---|---|
| Minimum Monthly income | AED 0 | AED 0 |
| Age | 18+ | 18+ |
| Minimum Balance | AED 0 | AED 2500 |
| Monthly Charges | AED 0 | AED 0 |
| Closure Fee before 12 months | AED 105 | AED 50 |
| Closure Fee after 12 months | AED 0 | AED 0 |
| Number of withdrawals per month | 8 | N/A |
| Cash withdrawal limit | N/A | AED 15000 |
| Interest rate p.a.(%) | 0 | Up to 1.50% |
| Debit card | Yes | Yes |
| Number of debits per month | N/A | N/A |
| Transfer fees | AED 5.25 locally AED 78.75 internationally |
AED 1 locally AED 20 internationally |
| Rewards or Discounts | RTA Nol Card built into Debit Card Lots of rewards in retail, restaurants and movies |
Tons of offers which include shopping, dining, entertainment and leisure |
| Hidden fees | AED 26.25 fall below fee | AED 15 fall below fee |
| More Information | More Information |
Features |
Neo Savings |
|---|---|
| Minimum Monthly income | AED 0 |
| Age | 18+ |
| Minimum Balance | AED 3000 |
| Monthly Charges | AED 10 unless spending AED 1000 or maintaining AED 3000 balance |
| Closure Fee < 6 months | AED 105 |
| Closure Fee after 12 months | AED 0 |
| Number of withdrawals per month | N/A |
| Cash withdrawal limit | AED 15000 |
| Interest rate p.a.(%) | Up to 0.15% |
| Debit card | Yes |
| Number of debits per month | Unlimited |
| Transfer fees | AED 1 locally AED 25 internationally |
| Rewards or Discounts | Assured AED 100 on each referral. Travel, dining and lifestyle benefits |
| Hidden fees | AED 25 fall below fee AED 2 for withdrawal at non Mashreq ATMs |
| More Information |
Features |
Savings Account |
Esaver Account |
Digi Account |
|---|---|---|---|
| Minimum Monthly income | AED 0 | AED 0 | AED 0 |
| Age | 18+ | 18+ | 18+ |
| Minimum Balance | AED 5000 | AED 0 | AED 0 |
| Monthly Charges | AED 0 | AED 0 | AED 0 |
| Closure Fee before 12 months | AED 105 | AED 105 | AED 0 |
| Closure Fee after 12 months | AED 105 | AED 105 | AED 0 |
| Number of withdrawals per month | N/A | N/A | N/A |
| Cash withdrawal limit | AED 10000 | N/A | AED 5000 initially |
| Interest rate p.a.(%) | Up to 1.50% | Up to 1.50% | Up to 0.15% |
| Debit card | Yes | No | Yes |
| Number of debits per month | N/A | 3 | Unlimited |
| Transfer fees | AED 1.05 locally AED 10.50 internationally |
AED 1.05 locally AED 10.50 internationally |
AED 1.05 locally 2 free before AED 10.50 internationally |
| Rewards or Discounts | Attijari Points Rewards Complimentary access to over 10 VIP lounges in GCC |
No | 20% cashback every month on select e-commerce transactions Travel, dining and lifestyle benefits |
| Hidden fees | AED 25 fall below fee | No | No |
| More Information | More Information | More Information |
Features |
Digital Account |
|---|---|
| Minimum Monthly income | AED 0 |
| Age | 18+ |
| Minimum Balance | AED 0 |
| Monthly Charges | AED 0 |
| Closure Fee < 6 months | AED 105 |
| Closure Fee after 12 months | AED 105 |
| Number of withdrawals per month | N/A |
| Cash withdrawal limit | N/A |
| Interest rate p.a.(%) | Up to 1.5% |
| Debit card | Yes |
| Number of debits per month | N/A |
| Transfer fees | AED 5.25 locally AED 115.5 internationally (Free to India and Pakistan) |
| Rewards or Discounts | No |
| Hidden fees | No |
| More Information |
Copyright © 2021 DeviousLab


DISCO ROOTS
CART (0)
We grow plants for you
to love in your home
Hello world! This is HTML5 Boilerplate.


public class MainController
extends java.lang.Object
DBConnector
and MainModel
. It gets
Properties
from properties file located at given location. It
provides possibility to exit the program (closing database connection and
writing current properties into properties file). The tables to be used in
the program have to be edited manually.| Constructor and Description |
|---|
MainController(java.lang.String propertiesLocation) |
| Modifier and Type | Method and Description |
|---|---|
void |
exit()
Close database connection, write current properties into properties file.
|
MainModel |
getMainModel() |
java.util.Properties |
getProperties() |


{[ extends "admin/base.html" ]} {[ section "content" ]} {{ include "admin/_info.html" }} {% local modelUrl = urlConf:baseUri().."/"..urlConf:capture(1) %}