JChem Examples
Code examples
- JChem Base code examples for practical use can be found here.
- Customized comparing - using MolComparator - is enabled during search. Brief instructions for running examples.
Implementation examples
Implementation examples can be found in the examples
subdirectory of the jchem
directory.
- A JSP example for searching, inserting and modifying compounds
can be found under "examples\db_search".
See the
setup instructions for details.
Copyright © 1999-2016
ChemAxon Ltd.
All rights reserved.


--- layout: post title: Updated OData Client for Objective-C date: 2011-04-12 17:37:39.000000000 +08:00 categories: - iOS tags: [] status: publish type: post published: true author: OData.org Archive ---
I am pleased to announce the second bug fix release of the OData Client for Objective-C library. This V1.2 release contains fixes for 36 bugs reported on codeplex.com since the last September release. This also adds support for basic authentication with Windows Azure MarketPlace DataMarket, formerly code named "Dallas", along with a new sample to demonstrate this feature. Notable fixes includes better handling of nil datatypes, namespace prefixes, and improved error and memory management.
Source code for all the components is provided with the download. The source code has continues to be made available under the Apache 2.0 license and is available for download at http://odataobjc.codeplex.com
I encourage you to continue developing using OData on all platforms, reporting your feedback, and sharing what iOS apps you are building.
Thanks,
Abu Obeida Bakhach


|
Drake
|
Classes | |
| class | RandomClutterGenerator |
| Given a RigidBodyTree containing a given scene, the RandomClutterGenerator can repeatedly generate bounded random poses/configurations on selected model instances within the tree. More... | |
| class | SimulatePlantToRest |
| Given a RigidBodyPlant, this class allows the construction and execution of a simulation which enables the state of the plant to come to a rest from a specified initial condition. More... | |
Functions | |
| const Vector3< double > | kClutterCenter (0.0, 0.0, 0.0) |
| const Vector3< double > | kClutterSize (0.2, 0.4, 1.6) |
| TEST_F (ClutterGeneratorTest, TestClutterIkValidity) | |
| TEST_F (ClutterGeneratorTest, TestClutterIkCost) | |
| TEST_F (ClutterGeneratorTest, TestPlantToRest) | |
Variables | |
| const char | kPath [] = "examples/kuka_iiwa_arm/models/objects/" |
| const char | kContainer [] = "open_top_box.urdf" |
| const char | kObject1 [] = "big_robot_toy.urdf" |
| const char | kObject2 [] = "block_for_pick_and_place.urdf" |
| const int | kNumRepetitions = 2 |
| const int | kNumBodiesInClutter = 2 * kNumRepetitions |
| const double | kZHeightCost = 100.0 |
| const int | kNumTrials = 2 |
| drake::manipulation::scene_generation::TEST_F | ( | ClutterGeneratorTest | , |
| TestClutterIkValidity | |||
| ) |
| drake::manipulation::scene_generation::TEST_F | ( | ClutterGeneratorTest | , |
| TestClutterIkCost | |||
| ) |
| drake::manipulation::scene_generation::TEST_F | ( | ClutterGeneratorTest | , |
| TestPlantToRest | |||
| ) |
| const char kContainer[] = "open_top_box.urdf" |
| const int kNumBodiesInClutter = 2 * kNumRepetitions |
| const int kNumRepetitions = 2 |
| const int kNumTrials = 2 |
| const char kObject1[] = "big_robot_toy.urdf" |
| const char kObject2[] = "block_for_pick_and_place.urdf" |
| const char kPath[] = "examples/kuka_iiwa_arm/models/objects/" |
| const double kZHeightCost = 100.0 |


Senate Banking Committee holds hearing on "Examining Facebook's Proposed Digital Currency and Data Privacy Considerations." Head of Facebook's Calibra David ...
ComputerGenie 👴👴👴16-Jul-19 06:36 PM
There's nothing like that hearing to show that Congress doesn't understand what crypto even is
and how many just want to kill FB and don't even care about the actual topic


Verify throwable in formatted message:
This inspection reports that a Throwable
is in the argument list of
the method call, although message formatting is applied to the log message.
Some log frameworks do not support formatting messages and handling throwables at once.
Whether this inspection is enabled or not depends on the features of the used log framework.
Powered by Log Support


@* * Copyright 2021 HM Revenue & Customs * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. *@ @import config.ApplicationConfig @import include._ @import model.Crumb @import uk.gov.hmrc.urls.Link @import domain.models.applications.Permissions.SandboxOrAdmin @import model.ApplicationViewModel @import domain.models.developers.DeveloperSession @this(devMain: DevMain, leftHandNav: LeftHandNav) @(applicationViewModel: ApplicationViewModel, redirectUris: Seq[String])(implicit request: play.api.mvc.Request[Any], loggedIn: DeveloperSession, messagesProvider: MessagesProvider, applicationConfig: ApplicationConfig, navSection: String = "redirects") @application = @{applicationViewModel.application} @devMain( title = "Manage redirect URIs", userFullName = loggedIn.loggedInName, breadcrumbs = Seq( Crumb("Manage redirect URIs"), Crumb.application(application), Crumb.viewAllApplications, Crumb.home ), leftNav = Some(leftHandNav(Option(applicationViewModel), Option(navSection))), developerSession = Some(loggedIn) ) {
You need admin rights to change redirect URIs.
}Your application needs your user's permission to interact with HMRC on their behalf when accessing @Link.toInternalPage( url = s"${applicationConfig.apiDocumentationFrontendUrl}/api-documentation/docs/authorisation/user-restricted-endpoints", value = Some("user-restricted endpoints")).toHtml. Users must sign in to their Government Gateway account to grant this authority.
Afterwards, redirect URIs tell us where to return your users in your application.
Learn more about @Link.toInternalPage(url = s"${applicationConfig.apiDocumentationFrontendUrl}/api-documentation/docs/reference-guide#redirect-uris", value = Some("redirect URIs")).toHtml.
| Redirect URIs | |
|---|---|
| @uri | @if(application.permits(loggedIn.developer, SandboxOrAdmin)){ @helper.form(action = controllers.routes.Redirects.changeRedirect(application.id), 'class -> "form inline-controls") { @helper.CSRF.formField } @helper.form(action = controllers.routes.Redirects.deleteRedirect(application.id), 'class -> "form inline-controls") { @helper.CSRF.formField } } |
This is the maximum number of redirect URIs. To add another, delete one first.
} } }


VC and MORE
Open Camera and Audio
;
Create Room
Join Room
End Call
Share Your screen
Screen Share Settings:-
Aspect Ratio:
Default
16:9
4:3
21:9
14:10
19:10
Frame Rate:
Default
30
25
15
5
Resolutions:
Default
Fit Screen
4K
1080p
720p
Cursor:
Default
always
never
motion
Display Surface:
Default
monitor
window
application
browser
Logical Surface:
Default
true
Your Room Id is
GAMES
Heads UP!!
Heads Up Rules
Heads up Rules
×
A movie will pop up on your screen. You have to act it out in 1 min. Then the timer goes off and your partner has to guess the movieby typing it in the prompt.Sounds Cool !?


{% extends "layout.html" %} {% block body %}
This is the log on page for Awesome Appliance. If you log on as a customer, you're directed to a page where you can request repairs. If you log on as an administrator, you're directed to a page where you can view requests and update data in the database.
There are three users built in:
| username | password | role |
|---|---|---|
| ad1 | ad1pw | administrator |
| cust1 | cpw1 | customer |
| cust2 | cpw2 | customer |
Click here to reset the database to the default sample data:
Error: {{ error }}
{{ message }}


Destination
{{#with shipping.address}}
{{address1}}
{{address2}}
{{city}}, {{region}} {{postal}} {{country}}
{{phone}}
{{/with}}
Shipment
{{shipping.shipmentMethod.method.label}}
Payment
{{#each payment.paymentMethod}}
{{storedCard}}
Ref:
{{transactionId}}
{{/each}}
{{itemCount}}
item(s) from
{{shopName}}


Simple and relaxing game with minimalistic style. Over 100 levels, different bubbles behavior, two color themes. No pressure, no hurry, no time limits. Just tap on screen solving puzzles.
Simple and relaxing game with minimalistic style. Over 100 levels, different bubbles behavior, two color themes. No pressure, no hurry, no time limits. Just tap on screen solving puzzles.


Ethereum (ETH) Bulls Eyeing Further Upsides, Bitcoin Facing Hurdles
- Ethereum price is trading nicely above the $185 and $186 support levels against the US Dollar.
- Bitcoin is holding the $9,200 support, but it is facing hurdles near the $9,400 level.
- Yesterday’s highlighted key bullish trend line is active with support near $186 on the hourly chart of ETH/USD (data feed via Kraken).
- The pair is showing positive signs and it is likely to accelerate higher towards the $195 and $200 levels.
Ethereum price is gaining pace above $186 versus the US Dollar, while bitcoin is facing hurdles. ETH price is likely to accelerate gains once it clears the $200 barrier.
Ethereum Price Analysis
After yesterday’s upward move, Ethereum corrected a few points below the $186 support against the US Dollar. ETH price corrected below the $185 level, but the 100 hourly simple moving average acted as a strong support.
A swing low was formed near $183 and the price recently started a fresh increase. The price gained pace and broke the $185 and $186 resistance levels. Moreover, there was a break above the $190 resistance.
A new weekly high was formed near $192 and Ethereum price again corrected below $190. Besides, there was a break below the 23.6% Fib retracement level of the recent move from the $183 swing low to $192 swing high.
However, the previous resistance near $188 is acting as a support. Additionally, the 50% Fib retracement level of the recent move from the $183 swing low to $192 swing high is also near the $188 level. Lastly, yesterday’s highlighted key bullish trend line is active with support near $186 on the hourly chart of ETH/USD.
At the moment, the price is climbing higher towards the $190 and $192 resistance levels. If there is a successful break above the $192 level, Ethereum is likely to accelerate towards the $195 and $200 resistance levels.
Conversely, if there is another dip, the price could find support near the $188 level. The main support is near the $186 and $185 levels, below which there is a risk of an extended decline towards the $180 support area.
Looking at the chart, Ethereum price is clearly trading nicely above the $188 and $186 support levels. Therefore, as long as the price is above $186, there are high chances of upside continuation. The main resistances on the upsides are near $200, above which the price is likely to accelerate towards $220.
ETH Technical Indicators
Hourly MACD – The MACD for ETH/USD is slowly gaining pace in the bullish zone.
Hourly RSI – The RSI for ETH/USD is currently above the 55 level, with a bullish angle.
Major Support Level – $185
Major Resistance Level – $192


Sighash Noinput
Transcript By: Bryan Bishop
Tags: Bitcoin core
Category: Conference
Bryan Bishop
https://twitter.com/kanzure/status/1049510702384173057
SIGHASH_NOINPUT (BIP118)
Dev++ / BC2 - October 4th-5th 2018 - Keio University, Tokyo, Japan
https://bitcoinedge.org/event/keio-devplusplus-2018
https://keio-devplusplus-2018.bitcoinedge.org/#schedule
video: https://www.youtube.com/watch?v=HlMZWvAHYno&t=2250s
Hi, my name is Bryan, I’m going to be talking about SIGHASH NOINPUT. It was something that I was asked to speak about. It is currently not deployed, but it is an active proposal.
So, just really brief about who I am. I have a software development background. I just left LedgerX last week, so that is an exciting change in my life. Also, I contribute to bitcoin core, usually as code review.
In order to talk about what the SIGHASH_NOINPUT proposal is, I’m going to talk about SIGHASH flags. To talk about SIGHASH flags, this goes back to how a transaction is structured. The data structure for a bitcoin transaction. In script sigs where you have a signature for proving that you have authorization to spend a coin these signatures are constructed in a certain way and there is a single byte appended to a signature that specifies in what way the transaction was signed. So there is a few SIGHASH flags that are implemented and have been deployed since the beginning. The most common one that I use is SIGHASH_ALL, that means sign everything except for the scriptsigs. There are some others as well like, SIGHASH_ANYONECANPAY, where you only sign a current input and everything else in the transaction is not considered part of the signature, it is not covered under the commitment.
So, there have been many proposed improvements for these SIGHASH types where you say well maybe you only want to sign certain aspects of the transaction, and you could say, I’m interested in spending these coins under these conditions, but I’m also not interested in these other details which we are going to ignore. And so many different SIGHASH flags have been proposed for how to do this including SIGHASH_NOINPUT, but also others such as. Basically imagine masking out different parts of the transaction. So any part of the data in the transaction that you can imagine there has been a proposal for a SIGHASH flag for either considering it super important or completely irrelevant in that you are fine with any sort of alternatives being proposed on the network without causing your signature to become invalid.
 Very early on in 2015 this was actually proposed as a malleability fix before SegWit was proposed as a malleability fix, the problem was that SIGHASH_NOINPUT was actually somewhat dangerous, especially in the context of a malleability fix. So it was not selected by the community, and then we got SegWit.
There is a proposal, bip118, written by Christian Decker.
Alright well this is a bunch of text, about something called application specific pubkeys, which is basically the malleability fix because it is actually quite dangerous. And this is because any input can be swapped into the transaction as long as it has a valid signature and the signature with SIGHASH_NOINPUT says you do not actually care about which input it is as long as the amount is correct.
Specifically, SIGHASH_NOINPUT has received attention because the lightning developers would like to use it for something called watchtowers. And I believe there is either a lightning talk today or tomorrow and that will make more sense, essentially you want to be able to broadcast certain transactions to enforce the rules of the lightning protocol. I already mentioned the malleability fix. There is also another lightning network proposal called eltoo which is very confusing because the name is ambiguous and refers to layer 2 or “L2” but it’s not spelled that way. I think it was supposed to be a pun but it is really just confusing.
So, there were two other SIGHASH_NOINPUT proposals. One was for an opcode, and there was also one from I think Johnson Lau for either script v2 or SIGHASH v2, I think that is possibly using a bit mask approach, at the very least a bitmask sighash type was implemented for Elements project. And that is the overview of SIGHASH_NOINPUT. I will be back later for other talks.


WITNESS LIST Education Committee August 23, 2004 - 9:00A Interim Charge #3 ON: Landry, Susan Dir. State Center Early Childhood (State Center for Early Childhood Development), Houston, TX Registering, but not testifying: On: Rislov, George Managing Director, Cirriculum (Texas Education Agency), Austin, TX Interim Charge #4 ON: Barnes, Susan Assoc. Comm. for Standards & Prog. (Texas Education Agency), Austin, TX Charley, Mary Director of Credentialing (State Board for Educator Certification), Austin, TX Chartock, Jonas Executive Director (Teach For America), Houston, TX Cooper, Connie Mgr., Loan Svcs. (Texas Higher Education Coordinating Board), Austin, TX Dawn-Fisher, Lisa Asst. Dir. of State Funding (Texas Education Agency), Austin, TX Eaton, Holly Dir. of Pro. Development & Advocacy (Texas Classroom Teachers Association), Austin, TX Fallon, Gayle (Houston Federation of Teachers), Houston, TX Fuery, Sharon Dir. of Sec. HR-Northside ISD (TASB, TASA, and TAPSA), Austin, TX Gavin, David Asst. Chief, Administration (D.P.S.), Austin, TX Gray, Sharon (ACT/RGV), McAllen, TX Green, Cory Sr. Dir. for NCLB Program Coordination (Texas Education Agency), Austin, TX Hartman, Eric Legislative Director (Texas Federation of Teachers), Austin, TX Hashke, Donna President (Texas State Teachers Association), Austin, TX Herbert, Karen Research Specialist (State Board for Educator Certification), Austin, TX Jackson, Sharon Deputy Assoc. Comm. for Standards & Algn (Texas Education Agency), Austin, TX Janysek, Michelle Program Administrator (State Board for Educator Certification), Austin, TX Jolly, Deborah Director of Gov. Relations (Texas A&M University), College Station, TX Jung, Ronnie Executive Director (Teacher Retirement System), Austin, TX Kettler, Meryl (Troops To Teachers), Austin, TX Long, David President (Texas State Affordable Housing Corporation), Austin, TX Lorenz, Mary Program Administrator (State Board for Educator Certification), Austin, TX Marder, Michael (UTeach/UT Austin), Austin, TX McCown, Gaynor Executive Director (The Teaching Commission), New York City, NY Palacios, Rebecca A. V.C. NBPTS, Nat. Board Cert. Teacher (National Board for Professional Teaching Standards (NBPTS)), Corpus Christi, TX Phillips, Doug Director (State Board for Educator Certification), Austin, TX Rankin, Mary Ann Dean, Natural Sciences (University of Texas at Austin), Austin, TX Rhee, Michelle CEO (The New Teacher Project), New York, NY Robbins, Rosemary Teaching and Learning Specialist (Texas State Teacher Association), Austin, TX Smith, Herman Executive Director (State Board for Educator Certification), Austin, TX Thompson, Ph. D., Randy V.P.-Marketing (American Board, Inc.), Washington, DC Trevino, Ramona Principal/CEO (The University of Texas Elementary School), Austin, TX Wale, William (State Board for Educator Certification), Austin, TX Whelan, Lauren (Association of Texas Professional Educators), Austin, TX Wurzbach, Linda President, Resources for Learning (Texas Beginning Educator Support System), Austin, TX Registering, but not testifying: On: Contreras, Albert (Texas Higher Education Coordinating Board), Austin, TX Ford, Kathryne Program Technician (Texas Higher Education Coordinating Board), Austin, TX Rogers, Tom Legislative Comm. Co-Chair TRTA (Austin Retired Teachers Assn & Texas Retired Teachers Assn), Austin, TX Providing written testimony: On: Marcum Gerlach, Jeanne Assoc VP K-16 Edu & Dean, Col. of Edu (University of Texas at Arlington, College of Education), Arlington, TX Vinger, Dr. Kathleen (ACT-RGV), McAllen, TX


Smashing Podcast Episode 5 With Jason Pamental: What Are Variable Fonts?
A roundup of Advent Calendar sites of interest to web designers and developers. From accessibility to UX, coding challenges to Perl, there really is something for everyone this December
Today, Rachel Andrew spoke about how to build a CSS layout. Follow along and learn how to use Grid and Flexbox, as well as why Rachel makes certain decisions as she builds out the layout.
Brand illustrations are an adaptable and effective way to build a company’s visual brand. In this article, Yihui Liu outlines her process for developing a strong brand illustration system. Her approach has been refined over 10 years of study and professional experience in China and Europe, and draws examples from her latest work as Lead Designer at Spacebase.
A friendly community that keeps this website alive. With books, webinars, discounts and networking — for just 1 coffee a month. Join the family
Every website or PWA you build should automate as much prospecting and selling as possible. The only thing is that visitors enter websites with various mindsets, depending on which part of the buying stage they’re at. This means that you can’t just...
In this tutorial, you will write the game mechanics for a virtual reality game, which is closely coupled with the real-time multiplayer elements of the game.
When you are working on a design, do you struggle with all of the possibilities, like whether to make some text block bigger or smaller, or increase (or decrease) the amount of white space around an element. And what about this color: Should it be...
Heydon Pickering’s new book “Inclusive Components” is here, and it’s shipping worldwide. The book explores accessible, robust solutions for the interface patterns we use every day.
A channel where seasoned developers show how they design, build, work and play. Coming up next: Form Design Patterns With Adam Silver with Adam Silver (Jan 15.)
Our new practical book on building accessible and robust interfaces.
From accordions and buttons to
modals and tables. With bulletproof
code samples. Written by Heydon Pickering.
Rick Viscomi (@rick_viscomi) is a Senior Web Developer Programs Engineer at Google. Passionate about web transparency, he maintains the Chrome User Experience Report and the open-source HTTP Archive project. To bring meaning to the raw stats and trends that the HTTP Archive has been collecting, Rick published the first issue of the Web Almanac this year, a yearly report on the state of the web, backed up by real data and trusted web experts. Rick is also the co-author of Using WebPage Test and host of the video series The State of the Web. Thank you for everything you do for the web community, dear Rick!
december 18, 2019 — How do you build a design system for 45 platforms — including a phone and a fridge? The design team at Spotify gives insights into Encore, Spotify’s new approach to design systems.
december 17, 2019 — Rob Weychert came up with a rational system for generating thousands of possible color schemes. It’s dynamic, date-based, and uses JavaScript, HSL, and CSS variables..
december 17, 2019 — Rob Weychert came up with a rational system for generating thousands of possible color schemes. It’s dynamic, date-based, and uses JavaScript, HSL, and CSS variables.
december 17, 2019 — Rob Weychert came up with a rational system for generating thousands of possible color schemes. It’s dynamic, date-based, and uses JavaScript, HSL, and CSS variables.
december 17, 2019 — Rob Weychert came up with a rational system for generating thousands of possible color schemes. It’s dynamic, date-based, and uses JavaScript, HSL, and CSS variables.
december 11, 2019 — To celebrate the 100th anniversary of Bauhaus, the designers at The New York Times implemented a Bauhaus-inspired baseline grid using CSS. Gabriel Gianordoli shares a look behind the scenes.
Meet Design Systems, a recent Smashing book in which Alla Kholmatova explores how to set up an effective design system to create great digital products. With common traps, gotchas and lessons learned.


What is Projectile?
Projectile is designed with just one goal - to help students apply for projects easily.
You shouldn't have to worry about setups, communication, emails or even the time hassle. Projectile gets out of the way to enable you to do what you do best.
For Students
For Professors


A B C D E F G H I K L M O P S T V Z
A
- activateKafkaMessaging() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainBenchmark
-
Activate Kafka messaging, including a producer and a consumer of tamper-evident payloads.
- activateKafkaMessaging() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemo
-
Activate Kafka messaging, including a producer and a consumer of tamper-evident payloads.
- activateKafkaMessaging() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainEncryptionDemo
-
Activate Kafka messaging, including a producer and a consumer of tamper-evident payloads.
- activateKafkaMessaging() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemo
-
Activate Kafka messaging, including a producer and a consumer of tamper-evident payloads.
- append(byte[], byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Appends two bytes array into one.
- append(LoggingEvent) - Method in class com.ai_blockchain.kafka_bc.TEKafkaLog4jAppender
-
Append the given logging event to the topic for this log.
- appendSerializable(Serializable) - Method in class com.ai_blockchain.kafka_bc.TEHashChain
-
Appends the given serializable object to the tamper-evident hash chain.
- appendTEObject(TEObject) - Method in class com.ai_blockchain.kafka_bc.TEHashChain
-
Verifies the given tamper evident object and adds it to this tamper evident hash chain.
- areEqual(byte[], byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Compares two byte arrays for equality.
- areEqual(Byte[], Byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Compares two byte arrays for equality.
B
- benchmarkKafkaBlockchain() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainBenchmark
-
Creates demonstration payloads and puts them into a Kafka blockchain.
- BLOCKCHAIN_NAME - Static variable in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemo
- ByteArrayComparator() - Constructor for class com.ai_blockchain.kafka_bc.ByteUtils.ByteArrayComparator
- byteArrayToInt(byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Convert the byte array to an int.
- byteArrayToInt(byte[], int) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Convert the byte array to an int starting from the given offset, and continuing for up to four bytes.
- ByteUtils - Class in com.ai_blockchain.kafka_bc
- ByteUtils.ByteArrayComparator - Class in com.ai_blockchain.kafka_bc
-
Provides a byte array comparator with respect to each byte as a signed integer.
C
- close() - Method in class com.ai_blockchain.kafka_bc.KafkaAccess
-
Closes this object and releases its resources.
- close() - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Disconnect from the ZooKeeper cluster.
- com.ai_blockchain.kafka_bc - package com.ai_blockchain.kafka_bc
- com.ai_blockchain.kafka_bc.samples - package com.ai_blockchain.kafka_bc.samples
- compare(Byte[], Byte[]) - Method in class com.ai_blockchain.kafka_bc.ByteUtils.ByteArrayComparator
-
Compares the two given byte arrays with respect to each byte as a signed integer.
- compareTo(byte[], byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Compares two byte arrays as specified by
Comparable
with respect to each byte as a signed integer. - compareTo(SHA256Hash) - Method in class com.ai_blockchain.kafka_bc.SHA256Hash
-
Compares this SHA256Hash object with another one.
- compareTo(Byte[], Byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Compares two Byte arrays as specified by
Comparable
with respect to each byte as a signed integer. - connect() - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Connect to the default ZooKeeper instances located at host "zookeeper:2181".
- connect(String) - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Connect to the ZooKeeper instances identified by entries in the given connection string.
- CONNECTION_TIMEOUT_MILLIS - Static variable in class com.ai_blockchain.kafka_bc.KafkaProperties
- create(String, byte[], List<ACL>, CreateMode) - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Create a node with the given path.
- createTopic(String, int, short) - Method in class com.ai_blockchain.kafka_bc.KafkaAccess
-
Creates the given topic.
D
- decode(byte[]) - Method in class com.ai_blockchain.kafka_bc.SymmetricEncryption
-
Decode a byte array which has first been encrypted with AES.
- DEFAULT_PORT - Static variable in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
- delete(String, int) - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Delete the node with the given path.
- deleteRecursive(String) - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Recursively delete the node with the given path.
- deserialize(byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Deserializes the given byte array into an object.
- deserialize(byte[]) - Static method in class com.ai_blockchain.kafka_bc.Serialization
-
Deserializes the given byte array into an object.
E
- encode(byte[]) - Method in class com.ai_blockchain.kafka_bc.SymmetricEncryption
-
Encode a byte array with AES.
- equals(Object) - Method in class com.ai_blockchain.kafka_bc.KafkaBlockchainInfo
-
Returns whether another object equals this one.
- equals(Object) - Method in class com.ai_blockchain.kafka_bc.SHA256Hash
-
Returns whether this object equals the given object.
- equals(Object) - Method in class com.ai_blockchain.kafka_bc.TEHashChain
-
Returns whether this object equals another one.
- equals(Object) - Method in class com.ai_blockchain.kafka_bc.TEObject
-
Returns whether another object equals this one.
- ERROR_STATUS - Static variable in class com.ai_blockchain.kafka_bc.KafkaBlockchainVerifier
- exists(String) - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Returns whether the given path exists.
- exists(String, boolean) - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Return the stat of the node of the given path.
F
- finalization() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainBenchmark
-
Closes the open resources.
- finalization() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemo
-
Closes the open resources.
- finalization() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemoVerification
-
Closes the open resources.
- finalization() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainEncryptionDemo
-
Closes the open resources.
- finalization() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemo
-
Closes the open resources.
- finalization() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemoVerification
-
Closes the open resources.
- from2HexDigits(String) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
- from8BitString(String) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns the corresponding bytes of the given compact string.
- fromHex(char) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns the integer represented by the given hex digit character.
- fromHex(String) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns the byte represented by the two hex digits.
G
- getBlockchainName() - Method in class com.ai_blockchain.kafka_bc.KafkaBlockchainInfo
-
Gets the blockchain name.
- getBytes() - Method in class com.ai_blockchain.kafka_bc.SHA256Hash
-
Returns a copy of the immutable byte array
- getChildren(String, boolean) - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Return the list of the children of the node of the given path.
- getData(String, boolean, Stat) - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Return the data and the stat of the node of the given path.
- getDataString(String) - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Gets the string data found at the given path".
- getKafkaBrokerSeedHostsString() - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Gets the Kafka broker seed hosts string, of the form "host1:port1, host2:port2, ...".
- getKafkaHostAddresses() - Method in class com.ai_blockchain.kafka_bc.KafkaBlockchainVerifier
-
Gets the production Kafka host IP address .
- getKafkaTopicInfo(String, Properties) - Static method in class com.ai_blockchain.kafka_bc.KafkaUtils
-
Gets the previous blockchain tip hash and serial number from Kafka, for the given remote container name
- getNbrPartitionsForTopic(String, Properties) - Static method in class com.ai_blockchain.kafka_bc.KafkaUtils
-
Gets the number of partitions for the given topic.
- getPayload() - Method in class com.ai_blockchain.kafka_bc.TEObject
-
Returns the deserialized payload object.
- getPayloadBytes() - Method in class com.ai_blockchain.kafka_bc.TEObject
-
Returns a copy of the immutable payload bytes.
- getPreviousHash() - Method in class com.ai_blockchain.kafka_bc.TEObject
-
Gets the SHA256 hash of the previous tamper-evident object, which is not present for the first such object in the hash chain.
- getSerialNbr() - Method in class com.ai_blockchain.kafka_bc.KafkaBlockchainInfo
-
Gets the serial number.
- getSerialNbr() - Method in class com.ai_blockchain.kafka_bc.TEObject
-
Returns the serial number.
- getSHA256Hash() - Method in class com.ai_blockchain.kafka_bc.KafkaBlockchainInfo
-
Gets the hash of the current chain tip.
- getSHA256Hash() - Method in class com.ai_blockchain.kafka_bc.TEHashChain
-
Gets the SHA-256 hash of the last tamper-evident item on the hash chain, or null if the chain is empty.
- getTEObject(int) - Method in class com.ai_blockchain.kafka_bc.TEHashChain
-
Gets the tamper-evident object at the specified index location.
- getTEObjectHash() - Method in class com.ai_blockchain.kafka_bc.TEObject
-
Gets the SHA256 hash of the previous hash plus the hash of the payload.
- getTimestamp() - Method in class com.ai_blockchain.kafka_bc.KafkaBlockchainInfo
-
Gets the timestamp.
H
- hashCode() - Method in class com.ai_blockchain.kafka_bc.KafkaBlockchainInfo
-
Returns a hash code for this object.
- hashCode() - Method in class com.ai_blockchain.kafka_bc.SHA256Hash
-
Returns the last four bytes of the wrapped hash as the integer Java hash code.
- hashCode() - Method in class com.ai_blockchain.kafka_bc.TEHashChain
-
Provides a hash code for this object.
- hashCode() - Method in class com.ai_blockchain.kafka_bc.TEObject
-
Returns a hash code for this object.
- hexStringToByteArray(String) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns the byte array represented by the given hex string.
I
- incrementSerialNbr() - Method in class com.ai_blockchain.kafka_bc.KafkaBlockchainInfo
-
Increments the serial number.
- isEmpty() - Method in class com.ai_blockchain.kafka_bc.TEHashChain
-
Returns whether the tamper-evident hash chain is empty.
- isNonZero(byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns true if the given byte array is not all zeros.
- isNonZero(Byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns true if the given byte array is not all zeros.
- isValid() - Method in class com.ai_blockchain.kafka_bc.TEHashChain
-
Validates the tamper-evident hash chain beginning at the indexed item, assuming the prior chain items are valid.
- isValid() - Method in class com.ai_blockchain.kafka_bc.TEObject
-
Return whether this tamper evident object's fields can be rehashed to the recorded value.
- isValid(int) - Method in class com.ai_blockchain.kafka_bc.TEHashChain
-
Validates the tamper-evident hash chain beginning at the indexed item, assuming the prior chain items are valid.
- isValidSuccessor(TEObject) - Method in class com.ai_blockchain.kafka_bc.TEObject
-
Returns whether this tamper-evident object is a valid successor to the previous TEObject, which is checked only for valid deserialization and reserialization.
- isZero(byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns true if the given byte array is all zeros.
- isZero(Byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns true if the given byte array is all zeros.
K
- KAFKA_DEMO_BLOCKCHAIN - Static variable in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemo
- KAFKA_HOST_ADDRESSES - Static variable in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainBenchmark
- KAFKA_HOST_ADDRESSES - Static variable in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemo
- KAFKA_HOST_ADDRESSES - Static variable in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemoVerification
- KAFKA_HOST_ADDRESSES - Static variable in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainEncryptionDemo
- KAFKA_HOST_ADDRESSES - Static variable in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemo
- KAFKA_HOST_ADDRESSES - Static variable in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemoVerification
- KAFKA_PRODUCER_BUFFER_SIZE - Static variable in class com.ai_blockchain.kafka_bc.KafkaProperties
- KAFKA_SERVER_PORT - Static variable in class com.ai_blockchain.kafka_bc.KafkaProperties
- KafkaAccess - Class in com.ai_blockchain.kafka_bc
-
KafkaAccess.java Description: Provides Kafka access utilities, notably the ability to create a topic.
- KafkaAccess(String) - Constructor for class com.ai_blockchain.kafka_bc.KafkaAccess
-
Constructs a new KafkaAccess instance.
- KafkaBlockchainBenchmark - Class in com.ai_blockchain.kafka_bc.samples
- KafkaBlockchainBenchmark() - Constructor for class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainBenchmark
-
Constructs a new KafkaBlockchainBenchmark instance.
- KafkaBlockchainDemo - Class in com.ai_blockchain.kafka_bc.samples
- KafkaBlockchainDemo() - Constructor for class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemo
-
Constructs a new KafkaBlockchainDemo instance.
- KafkaBlockchainDemoVerification - Class in com.ai_blockchain.kafka_bc.samples
- KafkaBlockchainDemoVerification() - Constructor for class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemoVerification
-
Constructs a new KafkaBlockchainDemoVerification instance.
- KafkaBlockchainEncryptionDemo - Class in com.ai_blockchain.kafka_bc.samples
- KafkaBlockchainEncryptionDemo() - Constructor for class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainEncryptionDemo
-
Constructs a new KafkaBlockchainEncryptionDemo instance.
- kafkaBlockchainInfo - Variable in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainBenchmark
- KafkaBlockchainInfo - Class in com.ai_blockchain.kafka_bc
- KafkaBlockchainInfo(String, SHA256Hash, long) - Constructor for class com.ai_blockchain.kafka_bc.KafkaBlockchainInfo
-
Constructs a new KafkaBlockchainInfo instance.
- KafkaBlockchainMultiplePartitionDemo - Class in com.ai_blockchain.kafka_bc.samples
- KafkaBlockchainMultiplePartitionDemo() - Constructor for class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemo
-
Constructs a new KafkaBlockchainDemo instance.
- KafkaBlockchainMultiplePartitionDemoVerification - Class in com.ai_blockchain.kafka_bc.samples
- KafkaBlockchainMultiplePartitionDemoVerification() - Constructor for class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemoVerification
-
Constructs a new KafkaBlockchainDemoVerification instance.
- KafkaBlockchainVerifier - Class in com.ai_blockchain.kafka_bc
- KafkaBlockchainVerifier() - Constructor for class com.ai_blockchain.kafka_bc.KafkaBlockchainVerifier
-
Constructs a new KafkaBlockchainVerifier instance.
- KafkaProperties - Class in com.ai_blockchain.kafka_bc
- KafkaUtils - Class in com.ai_blockchain.kafka_bc
L
- listTopics() - Method in class com.ai_blockchain.kafka_bc.KafkaAccess
-
List the topics available in the cluster with the default options.
M
- main(String[]) - Static method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainBenchmark
-
Executes this Kafka blockchain demonstration.
- main(String[]) - Static method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemo
-
Executes this Kafka blockchain demonstration.
- main(String[]) - Static method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemoVerification
-
Executes this Kafka blockchain demonstration.
- main(String[]) - Static method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainEncryptionDemo
-
Executes this Kafka blockchain demonstration.
- main(String[]) - Static method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemo
-
Executes this Kafka blockchain demonstration.
- main(String[]) - Static method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemoVerification
-
Executes this Kafka blockchain demonstration.
- makeSHA256Hash(Serializable) - Static method in class com.ai_blockchain.kafka_bc.SHA256Hash
-
Makes a SHA256Hash instance by hashing the given serializable object.
- makeUUIDBytes() - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns the array of bytes resulting from a new UUID.
O
- onCompletion(RecordMetadata, Exception) - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainBenchmark
-
A callback method the user can implement to provide asynchronous handling of request completion.
- onCompletion(RecordMetadata, Exception) - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemo
-
A callback method the user can implement to provide asynchronous handling of request completion.
- onCompletion(RecordMetadata, Exception) - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainEncryptionDemo
-
A callback method the user can implement to provide asynchronous handling of request completion.
- onCompletion(RecordMetadata, Exception) - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemo
-
A callback method the user can implement to provide asynchronous handling of request completion.
- onCompletion(RecordMetadata, Exception) - Method in class com.ai_blockchain.kafka_bc.TEKafkaLog4jAppender
-
A callback method the user can implement to provide asynchronous handling of request completion.
P
- produce(Serializable, String) - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainBenchmark
-
Wraps the given payload as a tamper-evident object, computes the next blockchain hash and sends the tamper-evident object to the Kafka broker.
- produce(Serializable, String) - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemo
-
Wraps the given payload as a tamper-evident object, computes the next blockchain hash and sends the tamper-evident object to the Kafka broker.
- produce(Serializable, String) - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemo
-
Wraps the given payload as a tamper-evident object, computes the next blockchain hash and sends the tamper-evident object to the Kafka broker.
- produce(Serializable, String, byte[]) - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainEncryptionDemo
-
Encrypts and wraps the given payload as a tamper-evident object, computes the next blockchain hash and sends the tamper-evident object to the Kafka broker.
- produceDemoBlockchain() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemo
-
Creates demonstration payloads and puts them into a Kafka blockchain.
- produceDemoBlockchain() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemo
-
Creates demonstration payloads and puts them into a Kafka blockchain.
- produceDemoEncryptedBlockchain() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainEncryptionDemo
-
Creates demonstration payloads, encrypts and puts them into a Kafka blockchain.
S
- seekToBeginning(KafkaConsumer, String) - Static method in class com.ai_blockchain.kafka_bc.KafkaUtils
-
Positions the given KafkaConsumer at the beginning of its partitions for the given topic.
- Serialization - Class in com.ai_blockchain.kafka_bc
- serialize(Serializable) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Serializes the given object into a byte array.
- serialize(Serializable) - Static method in class com.ai_blockchain.kafka_bc.Serialization
-
Serializes the given object into a byte array.
- serializeDeserialize(Serializable) - Static method in class com.ai_blockchain.kafka_bc.Serialization
- setData(String, byte[], int) - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Set the data for the node of the given path if such a node exists and the given version matches the version of the node (if the given version is -1, it matches any node's versions).
- setDataString(String, String) - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Sets the string data at the given path, creating the path if needed.
- setKafkaBrokerSeedHostsString(String) - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Sets the Kafka broker seed hosts string.
- setLogger(String, String, Logger) - Static method in class com.ai_blockchain.kafka_bc.TEKafkaLog4jAppender
-
Sets the given logger to include logging to the Kafka message network.
- setRawKeyData(byte[]) - Method in class com.ai_blockchain.kafka_bc.SymmetricEncryption
-
Sets the raw bytes of the key, maximum of 256 bits = 32 bytes.
- setSerialNbr(long) - Method in class com.ai_blockchain.kafka_bc.KafkaBlockchainInfo
-
Sets the serial number.
- setSha256Hash(SHA256Hash) - Method in class com.ai_blockchain.kafka_bc.KafkaBlockchainInfo
-
Sets the hash of the current chain tip.
- setTimestamp(Date) - Method in class com.ai_blockchain.kafka_bc.KafkaBlockchainInfo
-
Sets the timestamp.
- SHA256_LENGTH - Static variable in class com.ai_blockchain.kafka_bc.SHA256Hash
- SHA256Hash - Class in com.ai_blockchain.kafka_bc
- SHA256Hash(byte[]) - Constructor for class com.ai_blockchain.kafka_bc.SHA256Hash
-
Construct a new SHA256Hash instance from the given hash bytes.
- SHA256Hash(String) - Constructor for class com.ai_blockchain.kafka_bc.SHA256Hash
-
Creates a new instance that wraps the given hash value (represented as a hex string).
- size() - Method in class com.ai_blockchain.kafka_bc.TEHashChain
-
Returns the size of the tamper-evident hash chain.
- SymmetricEncryption - Class in com.ai_blockchain.kafka_bc
- SymmetricEncryption(byte[]) - Constructor for class com.ai_blockchain.kafka_bc.SymmetricEncryption
-
Constructs a new SymmetricEncryption instance.
T
- TEHashChain - Class in com.ai_blockchain.kafka_bc
- TEHashChain() - Constructor for class com.ai_blockchain.kafka_bc.TEHashChain
-
Constructs a new TEHashChain instance.
- TEKafkaLog4jAppender - Class in com.ai_blockchain.kafka_bc
-
A tamper evident log4j appender that produces log messages to Kafka
- TEKafkaLog4jAppender() - Constructor for class com.ai_blockchain.kafka_bc.TEKafkaLog4jAppender
- TEObject - Class in com.ai_blockchain.kafka_bc
- TEObject(Serializable, SHA256Hash, long) - Constructor for class com.ai_blockchain.kafka_bc.TEObject
-
Constructs a new TEObject instance.
- TEObject(Serializable, TEObject, long) - Constructor for class com.ai_blockchain.kafka_bc.TEObject
-
Constructs a new TEObject instance.
- to8BitString(byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns a compact string from the given bytes.
- toByteArray(Byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns an array of bytes for the given Byte object array.
- toByteObjectArray(byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns an array of Byte objects for the given byte array.
- toByteObjectArray(UUID) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns an array of Byte objects for the given UUID.
- toBytes(int) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns a 4-byte array built from an int.
- toBytes(long) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns a 8-byte array built from a long.
- toBytes(UUID) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns the 16-byte array from the given UUID.
- toHex(byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns a hexadecimal string representation of the given byte array.
- toHex(Byte) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns a string representation of the given byte.
- toLong(byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Builds a long from first 8 bytes of the array.
- toString() - Method in class com.ai_blockchain.kafka_bc.KafkaBlockchainInfo
-
Return a string representation of this object.
- toString() - Method in class com.ai_blockchain.kafka_bc.SHA256Hash
-
Returns a string representation of this object.
- toString() - Method in class com.ai_blockchain.kafka_bc.TEHashChain
-
Returns a string representation of this object.
- toString() - Method in class com.ai_blockchain.kafka_bc.TEObject
-
Returns a string representation of this object.
- toString() - Method in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Returns a string representation of this object.
- toUint32LittleEndian(byte[]) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns a non-negative long from the given 4 byte array, which is represented in a little-endian manner.
- toUnsignedByte(int) - Static method in class com.ai_blockchain.kafka_bc.ByteUtils
-
Returns the lower 8 bits of the given int as a byte.
V
- verifyDemoBlockchain() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemoVerification
-
Verify that the sequential topic records form a valid blockchain.
- verifyDemoBlockchain() - Method in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemoVerification
-
Verify that the sequential topic records form a valid blockchain.
- verifyKafkaBlockchain(Collection<String>) - Method in class com.ai_blockchain.kafka_bc.KafkaBlockchainVerifier
-
Verify the given blockchains.
Z
- ZK_GENESIS_PATH_PREFIX - Static variable in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainBenchmark
- ZK_GENESIS_PATH_PREFIX - Static variable in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemo
- ZK_GENESIS_PATH_PREFIX - Static variable in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainDemoVerification
- ZK_GENESIS_PATH_PREFIX - Static variable in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainEncryptionDemo
- ZK_GENESIS_PATH_PREFIX - Static variable in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemo
- ZK_GENESIS_PATH_PREFIX - Static variable in class com.ai_blockchain.kafka_bc.samples.KafkaBlockchainMultiplePartitionDemoVerification
- ZK_KAFKA_BROKER_HOSTS - Static variable in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
- ZOOKEEPER_CONNECT_STRING - Static variable in class com.ai_blockchain.kafka_bc.ZooKeeperAccess
- ZooKeeperAccess - Class in com.ai_blockchain.kafka_bc
-
When adding SSL security, refer to https://cwiki.apache.org/confluence/display/ZOOKEEPER/ZooKeeper+SSL+User+Guide .
- ZooKeeperAccess() - Constructor for class com.ai_blockchain.kafka_bc.ZooKeeperAccess
-
Constructs a new ZooKeeperAccess instance.


#include <gim_box_set.h>
Public Member Functions | |
| SIMD_FORCE_INLINE void | update () |
| this attemps to refit the box set. | |
| SIMD_FORCE_INLINE void | buildSet () |
| this rebuild the entire set | |
| SIMD_FORCE_INLINE bool | boxQuery (const GIM_AABB &box, gim_array< GUINT > &collided_results) const |
| returns the indices of the primitives in the m_primitive_manager | |
| SIMD_FORCE_INLINE bool | boxQueryTrans (const GIM_AABB &box, const btTransform &transform, gim_array< GUINT > &collided_results) const |
| returns the indices of the primitives in the m_primitive_manager | |
| SIMD_FORCE_INLINE bool | rayQuery (const btVector3 &ray_dir, const btVector3 &ray_origin, gim_array< GUINT > &collided_results) const |
| returns the indices of the primitives in the m_primitive_manager | |
| SIMD_FORCE_INLINE bool | hasHierarchy () const |
| tells if this set has hierarcht | |
| SIMD_FORCE_INLINE bool | isTrimesh () const |
| tells if this set is a trimesh | |
| SIMD_FORCE_INLINE GUINT | getNodeCount () const |
| node count | |
| SIMD_FORCE_INLINE bool | isLeafNode (GUINT nodeindex) const |
| tells if the node is a leaf |
This class offers an structure for managing a box tree of primitives. Requires a Primitive prototype (like GIM_PRIMITIVE_MANAGER_PROTOTYPE ) and a Box tree structure ( like GIM_BOX_TREE).
Definition at line 215 of file gim_box_set.h.
| SIMD_FORCE_INLINE void GIM_BOX_TREE_TEMPLATE_SET< _GIM_PRIMITIVE_MANAGER_PROTOTYPE, _GIM_BOX_TREE_PROTOTYPE >::update | ( | ) | [inline] |
this attemps to refit the box set.
node manager prototype functions
Definition at line 281 of file gim_box_set.h.


Ping Pong
Add a number to the box bellow. It will :
Make numbers divisible by 3 are replaced with "ping"
Make numbers divisible by 5 are replaced with "pong"
Make numbers divisible by 15 are replaced with "pingpong"
Please put in a number!
Submit!


--- layout: page title: About header-img: "img/about-bg.png" ---
Currently living in Philadelphia, I spent the first four years out of college teaching high school math in a neighborhood public school and a private Catholic school. Now I'm moving towards a career in computer programming as a student in the Flatiron Software Engineering program.


Joseph Christian Leyendecker was one of the preeminent American illustrators of the early 20th century


"Hmm, nothing here. Please add something."
"Hmm, nothing here. Please add something."
"Hmm, nothing here. Please add something."
Take a moment to allow Jesus to embrace us in his merciful love
"Hmm, nothing here. Please add something."
{{x.title}}
{{x.title}}
{{x.title}}
{{x.title}}


Research Scientist, Montreal Children's Hospital and Douglas University Mental Health Institute
Mayada Elsabbagh, Ph.D. is Assistant Professor in Psychiatry at McGill University. Her research, in the area of early infancy and developmental disorders, is focused on understanding the brain basis of behavioural genetic disorders. Prior to returning to Canada from the UK in 2011, Mayada supported the successful launch of collaborative research networks in autism including BASIS and ESSEA, aimed at accelerating the pace of discovery in early autism.
Mayada is active in the area of knowledge translation locally and internationally. She currently manages the Knowledge Translation portfolio for NeuroDevNet, a Canadian national Network of Center’s of Excellence. She was the recipient of the 2010 UK Economic and Social Research Council Neville Butler Memorial Prize for Longitudinal Research awarded in recognition of the public value and social relevance of her research.
Autism affects over 50 million children worldwide. Research into the condition is increasingly international, presenting opportunities and challenges towards a tangible impact, locally and globally. Dr. Elsabbagh will discuss key global themes including the need to understand the underlying biology, diversity and variable impact across those affected, and the critical role of supportive families and communities. Development of innovative models for research and services which consider diverse communities will be beneficial to our own society and the rest of the world.


"Just a bit more Cornish...." Across: 1. After engagement, settle in Fowey and London (9 6) 9. From Iowa, I, Kiki and Elton fly to Honolulu (7) 10. Forces deserter in between barred cover (7) 11. Bring up to be high-ranking officer by 18 (4) 12. Ease off one degree, note (5) 13. New pub placed behind farm building (4) 16. Lively in semi-barren place up-river from Restormel Castle (7) 17. Hold boats fast with reconstituted corn ash (7) 18. Almost look up to boy with officer (7) 21. Self-contained, I stand in river after gold sign.... (7) 23. ....Gold held by Hard Left is a catch! (4) 24. In The Iliad a vital role is performed by the vessel bearer (5) 25. Tax collectors performing in club (4) 28. I shall have nothing before backing horse near Redruth (7) 29. Ex-President is pawn of the French (7) 30. Cher, getting mixed up with unholy Skoda, comes to trust estate (10 5) Down: 1. What hearty drill, climbing up from Polmear! (11 4) 2. Sam and Lian can be beasts! (7) 3. Top-notch artist returns with song (4) 4. Head's smile takes me and French actress in (7) 5. Crowds flock to Fowey for this and see Queen return gun with thanks (7) 6. We hear this may open up part of Fowey harbour (4) 7. Fiddles with mania to play music lively! (7) 8. Urge and hug and kiss people in silly sporting event (3 3 5 4) 14. Mostly honest before turning up gold in Cornish city (5) 15. Dollop of ice cream is good story for "Cornish Guardian" (5) 19. Two girls, weakly sentimental, coming up to 30 (7) 20. Student left listener with no return (7) 21. Miss Ice is earth-shaking! (7) 22. New rich upstart near St Blazey has five points suitable for all (7) 26. First letters from urban guerillas last year could be dangerous! (4) 27. Unruly Hank makes old Egyptian cross (4)


Learn exactly how to build your own iPhone app
Anton Sepetov
December 10, 2014
The Complete iOS8 and Swift Course shows you how to build apps like Instagram or Snapchat in only 6 weeks
If you've ever wanted to learn how to build your own app, I have something very special for you today.
The Complete iOS8 and Swift Course is THE ultimate course on how to build your own fully-functioning iPhone app, made specifically for beginners.
Unlike other passive teaching methods, you'll be learning by doing. Together you'll build 15 apps and go through:
- The basics: How to work effortlessly with Xcode and Swift (Apple's new programming language) to build your own apps
- Building apps: How to build apps and games using web content, animation and geolocation
- Developing live applications: You'll work together to build Snapchat and Instagram clones
- Much much much more
The course is divided into 7 easy-to-navigate sections with over 19 hours of clear, engaging video tutorials and practical challenges.
The course is taught by Rob Percival, creator of the incredibly popular and highly-rated Complete Web Developer Course, which thousands of you sumo-lings absolutely loved.
You'll also join a community forum of over 36,800+ students to support you every step of the way and have personal access to Rob if you need any help.
This course has HUNDREDS of 5-star reviews. Just check out what some of the students had to say:
Regularly, this course sells for $199.
For the next 6 days only, we're giving you lifetime access to this course for only $15 (that's 93% off!)
Not only that, but you'll also get access to all these bonuses:
- Unlimited web hosting for one year (worth $200)
- Rob's eBook "How To Earn $10,000 While Learning To Code" (rated 5-stars on Amazon)
- Over 1,000 graphical assets to use in your apps (worth $300)
If you've ever wanted to build your own iPhone app ... now's the time.
67 Comments & Reviews
Most Helpful ▼ / Most Recent / Highest Rating


What do you like to use to get to work? (Select all that apply):
What board do you use to get around? (Select all that apply):


three.js
webgl - baked + real-time illumination - using
js-openctm
- camaro by
dskfnwn
- skybox by
Paul Debevec


The 3 main conference days offer almost 100 talks, an Expo Hall where you can visit our sponsors, and events including an academic poster session, a Job Fair, and an annual benefit auction.
The final 4 days are our developer sprints, where developers both veteran and novice enjoy several days of rare in-person collaboration on their favorite open source projects.
The companies and organizations who sponsor PyCon make the conference possible, and get to connect with a wide array of Python programmers.
Thanks to Mike Pirnat for the talk photo used above!
{% endblock %}


Batwoman Showrunner Explains Why the Show's Julia Pennyworth is White
by Samuel GelmanThis past week's episode of Batwoman saw the debut of Julia Pennyworth (The Royals' Christina Wolfe), Alfred Pennyworth's daughter. However, the Arrowverse's version of the character is white rather mixed race like the current comic incarnation.
Showrunner Caroline Dries recently spoke to Entertainment Weekly and explained that the reason for the change had to do with the specific story of the episode.
"Yeah, we stressed about that a lot," she said. "And the reason is we knew we wanted a character to come in [and] put on the Batwoman suit so we could fool Sophie, and we also fell in love with the idea of using Julia Pennyworth. Then when we realized that Sophie would not be fooled by a mixed race Batwoman, we were like, 'Oh s–t, you know, but we decided just to own it and go with it anyway.'"
Click the button below to start this article in quick view.
The episode, titled "Tell Me the Truth," revealed that Julia trained Kate during her self-imposed exile, and even began a romantic relationship with her. Julia left Gotham at the end of the episode to purse The Rifle, but, considering that she is the daughter of Batman's trusty butler, it is highly likely that we will see her again in the future.
Created by Caroline Dries and developed by Berlanti Productions and Warner Bros. Television, Batwoman stars Ruby Rose, Rachel Skarsten, Meagan Tandy, Camrus Johnson, Dougray Scott, Elizabeth Anweis and Nicole Kang. The series airs Sundays at 8 p.m. ET/PT on The CW.
https://schema.orgBreadcrumbListListItem1Homehttps://www.cbr.com/ListItem2TVhttps://www.cbr.com/category/tv/ListItem3TV Newshttps://www.cbr.com/category/tv/news-tv/ListItem4Batwoman Showrunner Explains Why the Show's Julia Pennyworth is Whitehttps://www.cbr.com/batwoman-julia-pennyworth-white/


Samsung’s new Galaxy S10 and Galaxy S10+ are powerful phones filled with neat features. You’ll love the huge Infinity display, quick software and triple cameras on the back, but that isn’t all the S10 has to offer. In fact, here are 10 cool things the Galaxy S10 can do so you can enjoy it to the fullest. Simply put, one of the best things about the Galaxy S10e, Galaxy S10, and Galaxy S10+ is the simple fact that there is a Galaxy S10e, a Galaxy S10, and a Galaxy S10+. Samsung copied Apple’s 2018 smartphone strategy with its 2019 Galaxy S phone lineup. The South Korean tech giant hasn’t been copying Apple as much these days, but we’re certainly glad it borrowed this idea from its top rival. The Galaxy S10 and Galaxy S10+ line up with Apple’s iPhone XS and iPhone XS Max, while the lower-cost Galaxy S10e fills the same space that was filled last year by Apple’s iPhone XR. The Galaxy S10 series offers something for everyone. You can get a $750 phone that still features just as much power as a top-of-the-line model, or you can spring for the $1600 Galaxy S10+ with 1TB of storage and a whopping 12GB of RAM. The Galaxy S10e and S10 are reasonably compact and are comfortable to use with one hand, while phablet lovers will swoon over the massive 6.4-inch Quad HD+ Dynamic AMOLED screen on the S10+. All the bases are covered, and each Galaxy S10 model has key advantages over the others.
4.6/5 Average Rating Based on 3000 Ratings.


0.1.0
An HashIO instance reads and writes the hash part of the URL (what is after '#'). The read mode: the user can specify some arguments in the URL to specify the resolution level, the position and the rotation. Here is how the URL should look like: mydomain.com/quadView.html#5/1.01,1.02,1.03/0.1,0.2,0.3 Where: 5 is the resolution level 1.01,1.02,1.03 is the x,y,z position of the intersection plane 0.1,0.2,0.3 is the x,y,z Euler angle rotation of the intersection plane
The write mode: everytime the intersection plane is moved, the hash is refreshed so that the url can be used to come back to a specific position within the dataset.
A QuadScene is a THREE js context where the viewport is split in 4 windows, for each window comes a QuadView. Originally, the purpose of the QuadScene is to display 3 orthogonal views usin othometric cameras, and one additional view using a perspective camera. The later is supposed to be more free of movement, giving an flexible global point of view. The 3 ortho cam are more likely to be in object coordinate so that rotating the main object wont affect what is shown on this views.
(String)
ID of div to show the QuadScene
(Object)
{datatype: String, url: String} where datatype is the input data type ("octree_tiles" is the only available for the moment) and url is the URL of the JSON config file.
[PRIVATE] Initialize the 4 QuadView instances. The 3 first being ortho cam and the last being a global view perspective cam.
(any)
return the quadview interaction. Useful to specify interaction callback from the outside.
QuadViewInteraction
:
Refreshes a counter of frame to send uniforms. Usually, sending new uniforms only once is not enought to get them to GPU, so we have to do it n times.
LevelManager
:
so that the UI can query info
Shortcut function to set the multiplane position. Handy because accessible from the onReady callback.
(any)
(any)
(any)
Shortcut function to set the multiplane position. Handy because accessible from the onReady callback.
(any)
(any)
(any)
[PRIVATE] Initialize the planeManager, so that we eventually have something to display here!
PlaneManager
:
the instance of PlaneManager, mainly for UI things.
Add a statistics widget
[PRIVATE] Update the renderer with new window size if they changed.
ColorMapManager
:
the colormap manager
[PRIVATE] To feed the animation feature built in WebGL.
[PRIVATE] Typical rendering function, necessary in THREE js
OrientationHelper
:
the instance of OrientationHelper used in Quadscene.
BoundingBoxHelper
:
the bounding box helper
Entry point to load data (texture chunk octree or mesh collection)
(any)
[PRIVATE]
(any)
[PRIVATE] Initialize the level manager and run some local init method when the lvl manager is ready.
(any)
So that the perspective cam targets the object container center
(any)
Updates the frustrum of the 3 ortho cam by adjusting a factor relative to the level of resolution. This ensure we keep the same image ratio.
Initialize the orientation helper and adds it to the scene (and not to the main object, because it is not supposed to rotate)
(any)
Synchronize the orientation helper position based on the main object position.
(any)
Triggered when the resolution level changes to keep the orientation helper the right size.
Specify a callback for when the Quadscene is ready.
(Callback)
a function to be call with the object
this
in param (the current QuadScene instance).
[PRIVATE] Defines the callback for interacting with the views
Defines the callback for whenever the lvl, rotation or position changes
(any)
Defines a function if an error occures when loading the config file has some trouble to load (but not necessary an error). Function called with 2 args: url and status code. The status code will define if it corresponds to an error or not.
(any)
AnnotationCollection
:
instance of the annotation collection
A QuadView is a projection of a rendered scene on a quarter of the viewport, typically: top_left, top_right, bottom_left or bottom_right. A QuadView instance is part of a QuadScene, where are renderer 4 QuadViews.
(THREE.Scene)
the main scene to be used by aggregation here.
(THREE.Renderer)
the main renderer to be used by aggregation here.
(Number)
Considering the object is centered on origin, this is a distance to be used so that the camera are not within the object. Example: 2 times the largest diagonal.
Define the point the camera is supposed to look at. By default, this is in world coordinates but if you place the current camera into an object, this will be in object-related coordinates. If unchanged, [0, 0, 0]
Init the current view as the top left view of the quad view
Init the current view as the top right view of the quad view
Init the current view as the Bottom left view of the quad view
Init the current view as the Bottom right view of the quad view
Build an orthographic camera for this view.
Build a perspective camera for this view.
[PRIVATE] Ends the building of the camera, using the settings from _config.
Adds an orbit control so that the user can play easily
(any)
(any)
Render the view, should be called when the main renderer is rendering.
To use to embed the camera of this QuadView into an existing object, so that it can profit from this object space transformation without further work. We use it to embed a orthographic camera to planes so that the wole system can rotate and move all at once.
(any)
Used for perspective cameras. If a Control is enabled, the center of rotatation (target) will also be set.
(THREE.Vector3)
3D position to look at and to turn around.
Update the control. This control needs to be updated from an "animate" function (like every frames) but not from a render function. If the control is a TrackballControls, updateControl needs to be called at every loop.
If the control ( trackball) was initialized, it enables it. (Can be called even though it was already enabled, this is NOT a toggle)
If the control (trackball) was initialized, it disables it. (Can be called even though it was already enabled, this is NOT a toggle)
Ask if a specific normalized coordinates are in the window boundaries of this view.
(Number)
horizontal coordinate normalized to the screen, so within
[
0, 1
]
. Origin on the left.
(Number)
vertical coordinate normalized to the screen, so within
[
0, 1
]
. Origin on the bottom.
any
:
true if (x, y) are
Return the camera of this view (unsafe, can be changed).
Update the ratio of the camera. Most likely to happen when the windows is resized. Depends if the cam is ortho of persp.
(any)
(any)
any
:
true if the camera of this view is a perspective camera.
The LevelManager is above the ChunkCollection and contain them all, one for each resolution level. LevelManager also acts like an interface to query chunk data.
The array of ChunkCollection instances, one per resolution level.
the directory containing the config file (JSON) and the resolution level folders
The level of resolution, defines which octree to dig into. Is a positive integer.
Size of the bounding box that wraps the entire dataset
size of a chunk, considering it's always cubic
For testing purpose, this is a callback that will be called when the config file will be loaded.
(any)
[PRIVATE] Load the config description object, sort its multiple resolution levels so that the poorer goes first and the finer goes last. Then, for each level calls _addChunkCollectionLevel().
Get the nth chunk collection
(Number)
The index of the requested chunk collection
ChunkCollection
:
the collection, or null if asked a bad index
[PRIVATE] Adds a ChunkCollection instance to this._chunkCollections, corresponding to the resolution level in argument.
(Number)
positive integer (or zero)
(Array)
Entire number of voxel to form the whole 3D dataset at this level of resolution. This will be translated into the size of the 3D matrix of chunk (basically divided by 64 and rounded to ceil).
(String)
Type of data, but for now only "octree_tiles" is ok.
(Number)
the size of the lowest resolution level
Change the level of resolution. Boundaries and "integrity" are checked.
(any)
(any)
any
:
the resolution level currently in use
any
:
the size of the chunks currently in use, in world coord
The bounding box may be used for different things, like checking inside/outside or simply to show a bounding box with a box. The size data is available at every resolution level, we'll just take the info from the first level (0) since the size remains consistant all along.
(Object)
config data
Defines the callback called when the config file was not found/able to load. This callback will be called with 2 args: {string} The config file url {Number} The error code (most likely 0 rather than 404. Didn't dig why)
(any)
Contains only static methods to load various kind of data with an AJAX request.
Loads a text file and makes its content available thru a String.
(String)
URL of the file to load
(callback)
function to call when the file is loaded. Called with one String argument.
(callback)
function to call when the file failed to load. Called with a Number argument (http status).
Check if Pako lib (for reading gz files) is available.
any
:
true if available, or false if not
The Chunk Collection is the container for all the chunks at a given resolution level. The resolutionLevel goes from 0 to 6, 0 being the poorer and 6 the sharper. ChunkCollection should not be asked anything directly, LevelManager should be the interface for that.
Constructor
(number)
The level of resolution, the lower the level, the lower the resolution. Level n has a metric resolution per voxel twice lower/poorer than level n+1, as a result, level n has 8 time less chunks than level n+1, remember we are in 3D!.
(Number)
Size of the lowest rez level (most likely 128)
(Array)
Number of chunks in each dimension
[
x, y, z
]
that are supposedly available.
(String)
The folder containing the config file (JSON) and the resolution level folder
(String)
Type of data, but for now only "octree_tiles" is ok.
The chunks of the same level. A map is used instead of an array because the chunks are loaded as they need to display, so we prefer to use an key (string built from the index3D) rather than a 1D array index.
The folder containing the config file (JSON) and the resolution level folder
Number of chunks in each dimension [x, y, z] that are supposedly available.
Level from 0 to 6, possibly more in the future.
Number of voxel per side of the chunk (suposedly cube shaped). Used as a constant.
World size of a chunk at level 0. Used as a constant.
Size of a chunk in 3D space (aka. in world coordinates)
Keeps a track of how many textures are supposed to be loaded, how many failed to load and how many eventually loaded successfully
[PRIVATE] init the chunk for the given index3D. Adds it to the collection AND returns it in case of immediate need.
(Array)
[
x, y, z
]
index of the chunk, where x, y and z are integer.
Does not perform any kind of verification (already exists, out of bound, etc.).
TextureChunk
:
the newly created texture chunk.
any
:
the size of chunks in world coord in this collection
Get a chunk at a given position, not necessary the origin
(any)
Get the THREE.Texture for the chunk at index3D. Build the chunk if it's not already done.
(Array)
[
x, y, z
]
index of the chunk, where x, y and z are integer.
THREE.Texture
:
Possibly a fake texture if we are asking out of bound.
(any)
any
:
underscore joined index3D as a string
[PRIVATE] Creates a fake texture of size 1 to send to the shader in case we are out of bound or to complete the Sampler2D array for the fragment shader.
return the 8 texture data for the 8 closest chunks to the given position. The texture data are ordered so that if some are invalid (out of bound, fake texture) they will be placed in the end of the array.
(Array)
An arbitrary position in world coordinates.
object
:
the object contains 1 array of textures, one array of chunks origins and one integer to inform how many of these textures are valid. This may seem a strange data structure but it's the closest from what can take the fragment shader and will require no further work. Remember we are potentially speaking of thousands of chunks being loaded!
(any)
[PRIVATE] Called when a chunk is loaded or failed to load. When to total number number of toLoad Vs. Loaded+failed is equivalent, a callback may be called (with no argument) if defined by onChunkLoaded().
Defines a callback for when all the requested chunks are loaded. This will be called every time we ask for a certain number of chunks and they eventually all have a loading status (success or fail)
(any)
Defines a callback for when all the required tile of the current level are loaded. Called with no argument.
(any)
Represent a cubic chunk of texture. Should be part of a LevelManager.
Initialize a TextureChunk object, but still, buildFromIndex3D() or buildFromWorldPosition() needs to be called to properly position the chunk in world coord.
(number)
The level of resolution, the lower the level, the lower the resolution. Level n has a metric resolution per voxel twice lower/poorer than level n+1, as a result, level n has 8 time less chunks than level n+1, remember we are in 3D!.
(Number)
Number of pixel/voxel per side of the chunk, most likely 64.
(Number)
Size of the chunk in world coordinates. Most likely 1/2^resolutionLevel.
(String)
The folder containing the config file (JSON) and the resolution level folder.
(String)
the string ID this chunk has within the ChunkCollection. This is used by the callbacks when succeding or failing to load the texture file.
(String)
Type of data, but for now only "octree_tiles" is ok
(Array)
Number of chunks in each dimension
[
x, y, z
]
that are supposedly available.
the string ID this chunk has within the ChunkCollection. This is used by the callbacks when succeding or failing to load the texture file
Number of voxel per side of the chunk (suposedly cube shaped). Used as a constant.
The level of resolution, the lower the level, the lower the resolution. Level n has a metric resolution per voxel twice lower/poorer than level n+1, as a result, level n has 8 time less chunks than level n+1 (remember we are in 3D!).
Size of a chunk in 3D space (aka. in world coordinates)
The actuall THREE.Texture
True only if totally build, with index and world coordinates origin
in case the texture file was unable to load, this flag goes true
callback when a texture is successfully load. Defined using onTextureLoaded( ... )
callback when a texture failled to be loaded. Defined using onTextureLoadError( ... )
The texture loader takes this in argument because it will need some local info but depending on the datatype, different info may be asked
any
:
this._voxelPerSide
any
:
a copy of the this_index3D (Array)
any
:
the working directory
any
:
the resolution level
Set the texture
(THREE.Texture)
Texture loaded by a TextureLoader
The index position in the octree. Each members are interger.
[PRIVATE] Finds a chunk origin using its _index3D and _sizeWC. the origin is used by the shader.
Origin of the chunk in world cooridnates. Is a [x, y, z] Array. Is computed from the sizeWC and the index3D
Called by a TextureLoader when the texture is loaded successfully
called by a TextureLoader when the texture fails to load
Alternative to _loadTexture but decode the jpeg strip in JS using a JS lib. It's pretty slow and should maybe be put in a webworker -- to be tested!
Return true if the chunk was not able to load its texture.
(any)
(any)
A TextureLoaderOctreeTiles is a specialization of TextureLoaderInterface. It loads a texture for a texture chunk directly from a image file in an octree 3D tiling architecture.
Extends TextureLoaderInterface
Texture file, build from its index3D and resolutionLevel
Generic interface to load texture and give them to the TextureChunk
A OrientationHelper is a sphere surrounding the orthogonal planes that will show the direction of left/right, posterior/anterior and inferior/superior.
(any)
Add the local helper mesh to obj.
(THREE.Object3D)
container object to add the local helper.
Resize the helper depending on the resolution level
(any)
Set the position of the orientation helper.
(THREE.Vector3)
The position as a vector to clone.
Show the helper if hidden, hide it if shown.
A QuadViewInteraction instance knows all the QuadView instance (aggregated in an array) and deals with all the interaction/controller side that a QuadView may need. This includes mouse/keyboard interaction on each view (independently) and possibly orbit/trackball control for QuadViews which enabled it.
Because we dont want to be querying window.innerWidth and window.innerHeight all the time. This is supposed to be called by a QuadScene, at the same moment we update the window size for the renderer.
Updates the position of the mouse pointer with x and y in [0, 1] with origin at the bottom left corner. Updating the mouse position may trigger some events like orbit/trackball control activation
(any)
[PRIVATE] callback to the mousedown event
(any)
[PRIVATE] callback to the mouseup event
(any)
[PRIVATE] Callback to the event onkeydown, aka. when a keyboard key is pressed
(any)
[PRIVATE] Callback to the event onkeyup, aka. when a keyboard key is released
(any)
[PRIVATE] For each QuadView instance, trigger things depending on how the mouse pointer interact with a quadview.
Callback when one of the QuadView is grabed. The callback will be called with 2 arguments: {Object} distance {x:, y: } - the distance along x and y in normalized space {Number} QuadView index
(any)
Defines the callback called when click on a view holding the R keyboard key and move the mouse. It performs a rotation around the normal vector of the current view/plane. The callback is called with 2 arguments: {Number} angle in radian {Number} direction, is 1-always +1 or -1 {Number} QuadView index
(any)
Defines the callback called when click on a view holding the T keyboard key and move the mouse. It performs a transverse rotation. {Object} distance {x:, y: } - the distance along x and y in normalized space {Number} QuadView index
(any)
Defines the callback for when the arrow_down keyboard key is down. Usually for travelling along the normal of the plane/view. Called with 1 argument: {Number} QuadView index
(any)
Defines the callback for when the arrow_up keyboard key is down. Usually for travelling along the normal of the plane/view. Called with 1 argument: {Number} QuadView index
(any)
Callback called when a key of a mouse button is released
(any)
Set the plane container, so that we can perform raycasting
(any)
[PRIVATE] perform a raycaster intersection from the perspective camera to the multiplane container. If impact, call a callback with the point coordinates.
An instance of ColorMapManager is used to load color maps and retrive them. A certain amount of default color maps is available but curtom maps can also be added. Each texture is stored as a THREE.Texture and are loaded with THREE.TextureLoader.
Loads the default colormaps.
any
:
the colormap that is currently in use as an object {id, colormap}
any
:
true if a colormap is supposed to be used, returns false if not
Activates color mapping. If no colormap has ever been explicitly mentioned as "in use", then the first of the default colormaps is the one to go with.
any
:
a list of available colormaps IDs.
An instance of PlaneManager creates ans give some access to 2 small collections of ProjectionPlane instances. Each "collection" contains 3 ProjectionPlane instances (that are orthogonal to each other in the 3D space) and there is a collection for Hi resolution and a collection for Low resolution.
(ColorMapManager)
a built instance of ColorMapManager
(THREE.Object3D)
a parent object to place the planes in.
THREE.Object3D
:
the multiplane container
[PRIVATE] Generic method to enable a layer. Should no be used, use enableLayerHiRez or enableLayerLoRez instead.
[PRIVATE] Generic method to disable a layer. Should no be used, use enableLayerHiRez or enableLayerLoRez instead.
Defines a LevelManager instance for all the ProjectionPlane of all sub collection (hi rez + lo rez)
(LevelManager)
a built instance of LevelManager.
[PRIVATE] A rather generic method to set the LevelManager instance to an whole array of ProjectionPlane instances. Written in case more collection of ProjectionPlanes would be added.
(LevelManager)
a built instance of LevelManager.
(Array)
array of ProjectionPlane instances to which we want to set the level manager.
[PRIVATE] Generic function for whatever array of ProjectionPlane instances to update its scale.
Update the uniform of all the ProjectionPlane instances.
any
:
the size of the plane diagonal in world dimensions.
Translate the main object container along the u and v vector relative to the x plane instead of the regular coordinate system X.
Translate the main object container along the u and v vector relative to the y plane instead of the regular coordinate system Y.
Translate the main object container along the u and v vector relative to the z plane instead of the regular coordinate system Z.
[PRIVATE] Moves the main object container using a the u and v local unit vector of a specific plane. The u and v vector are orthogonal to the plane's normal (even in an oblique context).
MemoryStorage is a semi-global shared memory space to set values in a record. (not accessible from global scope, just accessible from shaderNavigator's scope) This is helpful to share some data between objects that are unrealated enough to make it irrelevant sending arguments
A ProjectionPlane instance is a portion of a 3D plane, defined as a rectangular surface. It is subdivided in a certain amount of sub-planes that are square-shaped. Each sub-plane is the size of half a texture chunk of the current resolution level. Example: if a texture chunk at level 3 is of size 1/8 x 1/8 x 1/8 in world coordinates, the csub-planes will be 1/16 x 1/16. This ensure that we dont have to many texture (Sampler2D) to send the the fragment shader of each sub-planes because, even in critical cases, a sub-plane of this size wont intersect more than 8 texture chunks.
Build all the subplanes with fake textures and fake origins. The purpose is just to create a compatible data structure able to receive relevant texture data when time comes.
Defines the level manager so that the texture chunks can be fetched for each sub-plane.
(LevelManager)
the level manager
Debugging. Chanfe the color of the mesh of the plane, bit first, the plane material has to be set as a mesh.
(any)
fetch each texture info, build a uniform and
Like updateUniforms but instead of using the 8 closest, it uses only the ones that are involved.
[PRIVATE] Update the uniform of a specific sub-plane using the texture data. This will automatically update the related fragment shader.
any
:
the main plane, containing all the sub-planes
Compute and return the normal vector of this plane in world coordinates using the local quaternion.
THREE.Vector3
:
a normalized vector.
[PRIVATE] Transform a local vector (local to the plane) into a world coodinate vector.
(THREE.Vector3)
a local vector
THREE.Vector3
:
a vector in world coodinates
Enable a given layer in the visibility mask, so that it's visible by a camera with the same layer activated.
(any)
Disable a given layer in the visibility mask, so that it's not visible by a camera with a different layer activated.
(any)
Hide this plane (the THEE.Object3D)
Show this plane (the THEE.Object3D)
Constructor of the MeshCollection instance.
(any)
(any)
[PRIVATE] Start to read the configuration, containing an extensive list of mesh with their description.
(Object)
a small config object {datatype: String, url: String}
[PRIVATE]
(any)
[PRIVATE] Creates a three mesh out of a mniObjReader instance
(MniObjReader)
must have called parse() on it first
THREE.Mesh
:
a mesh based on the mni obj parsed data
[PRIVATE] Expands the collection bounding box with a new mesh.
(THREE.Mesh)
a mesh to expand the collection bounding box
MniObjReader is a parser of mniobj surface files. This version is an atempt of making a free from dependency independant module. It is based on the code witten by Nicolas Kassis and Tarek Sherif for BrainBrowser (https://brainbrowser.cbrain.mcgill.ca).
Since mniobj file can be huge, it may be a good idea to call that froma worker.
Constructor of the MniObjReader.
Copy an existing MniObjReader instance. This is particularly usefull in the context of a worker, if an MniObjReader is returned, it is using a JSON format to transfer, meaning all the methods are lost and only remains the data. This is to rebuild a proper MniObjReader.
(MniObjReader)
the instance to copy the data from.
[PRIVATE] Rearange the data from _tempResult to _shapeData
[PRIVATE] From a single color, make a typed array (Uint8) of colors.
[PRIVATE] Parse surface properties from the raw data.
[PRIVATE] Parse the vertices from the raw data.
[PRIVATE] Parse the normal vector from the raw data.
[PRIVATE] Parse the color from the raw data.
[PRIVATE] Not sure how useful endIndices are, it was used in BrainBrowser so I kept them. (is that useful?)
[PRIVATE] Reads the vertices indices to use to make triangles.
[NOT USED] This is legacy code I left from the reader in BrainBrowser. Since splitHemispheres is hardcoded to false, this is not called.
any
:
the number of shapes encoded in the file
Returns the index of vertices to be used to make triangles, as a typed array.
(any)
Uint32Array
:
Since triangles have 3 vertices, the array contains index such as
[
i0, i1, i2, i0, i1, i2, ...
]
.
Returns the vertice position as a typed array.
Float32Array
:
of points encoded like
[
x, y, z, x, y, z, ...
]
Returns the normal vectors as a typed array.
Float32Array
:
of normal vector encoded like
[
x, y, z, x, y, z, ...
]
Get the colors encoded like [r, g, b, a, r, g, b, a, ...]
Float32Array
:
of size 4 or of size 4xnumOfVertices
[PRIVATE] Adds buttons to the widget
[PRIVATE] Action to toggle the rotation helper
[PRIVATE] Action to toggle the bounding box helper
Update the UI with a new resolution level. This does not do anything but refreshing the display (iow. calling this method does NOT change the rez lvl)
(any)
Update the UI from rotation, position and rez lvl (later is not used here)
(Object)
{ resolutionLvl: Number, position:
[
x, y, z
]
, rotation:
[
x, y, z
]
}
[PRIVATE] update the description of resolution level
(any)
(any
(default ""
)
)
[PRIVATE] callback Update the colormap list box and the dedicated callback for when the colormap changes.
[PRIVATE] Create the pannel dedicated to annotaion management
[PRIVATE] Builds the HTML edit panel for annotations
[PRIVATE] Builds the pannel with buttons to create a new annotation
Display annotation info in the text box.
(Annotation)
an instance of annotation,
most likely the temporary one from the collection.
A BoundingBoxHelper instance shows the limits of the dataset in a visual way. A bounding box can be built only once.
Constructor
(THREE.Object3D)
THREE js object to add the boinding box
Show the bounding box
Hide the bounding box
Show the bounding box if it's hidden, hide if it's shown.
An annotation collection contains uniquely named Annotation instances as well as a container for their 3D representations. When adding a new annotation, its name must not be already in the collection. Still, when a name is not specified, a timestamp-based name is automatically picked.
Build an empty collection
Add an annotation to the collection
(String)
name, suposedly unique
([Object](default {}))
all kind of options:
isClosed {Boolean} makes the diff between a linestring and a polygon - default: false,
description {String} optionnal - default: '',
color {String} - default: "FF0000",
eulerAngle {Array} rotation correction
[
x, y, z
]
- default:
[
0, 0, 0
]
,
scale {Array} scale correction
[
x, y, z
]
- default:
[
1, 1, 1
]
,
position {Array} offset
[
x, y, z
]
- default:
[
0, 0, 0
]
(any)
Get an annotation from the collection
(String)
name/ID of the annotation within the collection
Annotation
:
the requested annotation object
Add to collection the temporary annotation that is currently being created.
[PRIVATE] returns an incremental fake name so that our annotation does not remain unnamed.
Read and parse the content if a File object containg json annotations.
(File)
HTML5 File object, most likely opened using a file dialog
(any)
[PRIVATE] Generic method to load the string content of an annotation file. This way we can use it no matter if loading from url/ajax or from html5File/dialog.
(any)
Init a temporary annotation with a single point.
(THREE.Vector3)
a threejs vector
Delete the temporaray annotation, meaning reseting the logic object but also clearing up its graphical representation.
Get the temporary annotation.
Annotation
:
Enable the begning of creating a new annotation
Disable the annotation creation
any
:
true if the annottaion creation process has started
An Annotation can be a single point, a segment, a linestring or a polygon. Each coordinate is in 3D [x, y, z] and can be represented in a 3D space after being converted into a proper THREEjs object.
Constructor of an annotation.
(String)
name, suposedly unique
([Object](default {}))
all kind of options: isClosed {Boolean}, description {String}, color {String} hexa like "#FF0000", eulerAngle {Array} rotation correction
[
x, y, z
]
, scale {Array} scale correction
[
x, y, z
]
, position {Array} offset
[
x, y, z
]
(any)
Routine to validate an annotation. An annotation is valid if it contains at least one point and if this point contains 3 value (for x, y, z)
Remove the last point of the annot and adapt the shape if it becomes a point or even of length 0.
Get the THREE Object that represent the annotation. Build it if not already built.
THREE.Object3D
:
[PRIVATE] Build a THREE js object that hollows this annotation if it's a point
[PRIVATE] Build a THREE js object that hollows this annotation if it's a linestring or a polygon
[PRIVATE] Builds the annotation, no matter if point or line.
[PRIVATE] remove all the childrens from the graphic representation of this annot. This is useful when a single-point annot turns into a line annot and vice-versa.
When we want to close a linstring. Basically adds a point at the end and switch the isClosed boolean.


Message from the Chair
Welcome to the Department of Electrical and Computer Engineering at the University of California, Riverside. Having graduated our first class in May 1994, in May 2017 ECE@UCR will be graduating our 24th undergraduate class. In the intervening years ECE has grown to house about 300 EE and 250 CEN undergraduates, and about 200 graduate students. The 2016 US News ranking for the UCR ECE program was in the top 29% (#55 of 190) among all universities and top 26% (#31 of 121) among all public institution.
The Department of Electrical and Computer Engineering has 30 faculty members: 10 IEEE Fellows, 7 AAAS Fellows, 10 NSF Career Awardees, 3 ARO or ONR Young Investigator Awardees, 1 OSA and 1 APS Fellow. In 2014, three professors were president of their IEEE society. The latest NRC S-Ranking placed the UCR EE department in the top quartile.
Research funding, exceeding $500k per faculty in contract & grant research expenditures, provides many funded research positions for graduate and undergraduate students.
More
Latest Releases
UCR Researchers Demonstrate Acoustic Phonon Confinement Effects - Nature Communications Report
November 18, 2016 | Full Article
RIVERSIDE, Calif. (www.ucr.edu) — Controlling the flow of heat through semiconductor materials is an important challenge in developing smaller and faster computer chips, high-performance solar panels, and better lasers and biomedical devices. For....Read More
UC Riverside Awarded $3.2 Million to Develop Innovative Smart Buses
November 17, 2016 | Full Article
Research team will develop new technologies that decrease energy consumption of transit buses through connectivity and automation
RIVERSIDE, Calif. (www.ucr.edu) — Matthew Barth, a professor of engineering in UC Riverside’s Bourns College....Read More
Barth Receives IEEE Intelligent Transportation Systems Outstanding Research Award
November 17, 2016 | Full Article
The Institute of Electrical and Electronic Engineers (IEEE) Intelligent Transportation System Society recently awarded CE-CERT Director and Professor Matthew Barth with its 2016 Outstanding Research Award. The IEEE ITS society confers annually the Outstanding....Read More
UCR Team Wins at ClimateLaunchpad
October 28, 2016 | Full Article
A material created by two UCR engineers won second place overall and the “audience favorite” award at the 2016 ClimateLaunchpad competition, held by Climate-KIC, a European public-private innovation partnership focused on climate change.....Read More
From Ancient Fossils to Future Cars
October 24, 2016 | Full Article
RIVERSIDE, Calif. (www.ucr.edu) — UC Riverside engineers are developing cheap, energy-efficient lithium-ion batteries for electric vehicles from silicon in diatomaceous earth.
Professors Cengiz and Mihri Ozkan, at the University of California,....Read More
Hardware Vulnerability used to Bypass Operating System Defense
October 20, 2016 | Full Article
UCR's Nael Abu-Ghazaleh with collaborators Dmitry Ponomarev and Dmitry Evtyushkin from Binghamton University developed a new attack that enables hackers to bypass an important Operating System defense called ASLR (Address Space Layout Randomization).....Read More
Prof. Kassas Receives $750K Grant from ONR
October 6, 2016 | Full Article
Prof. Zak Kassas received a three-year $750,000 grant from the Office of Naval Research (ONR). Prof. Kassas is the PI on this grant and Prof. Ping Liang is the Co-PI. The grant will fund developing an integrated research and training program in resilient....Read More
Ph.D. Students Kimia Shamaei and Joe Khalife and Prof. Zak Kassas receive best paper presentation award in ION GNSS+ 2016
October 6, 2016 | Full Article
Ph.D. students Kimia Shamaei and Joe Khalife and their Ph.D. advisor Prof. Zak Kassas received the best paper presentation award in the “Complementary Positioning, Navigation, and Timing (PNT)" Session at the 2016 Institute....Read More


Good
Food Restaurant
Big News
Good Food Restaurant is opening a new location!
3456 State Road, Akron, OH 44444
Menu
Contact Us
Restaurant description:
Welcome to our restaurant page. Here you will find what our restaurant has to offer. Our goal is to provide the best food quality and customer service experience to our customers.