|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface JCoRepository
JCo metadata repositories are needed to get the technical description of functions and parameters used for fulfilling RFC calls.
This interface covers the implementation of basic repository functionality such as
caching and the persistence of metadata.
The JCoCustomRepository serves as a base interface for more elaborate repositories.
To fetch the metadata at runtime from a back-end system use the JCoRepository instance
returned by a JCoDestination.
Keep in mind, that the functions and parameter definitions are always the same inside of one
cluster of SAP application server hosts, but can differ from other clusters.
JCoCustomRepository
| Method Summary | |
|---|---|
void |
clear()
Clear allows to empty both the function template cache as well as the record metadata cache completely. All metadata will be looked up again in the original source, which is generally much more expensive than looking it up in the cache. |
java.lang.String[] |
getCachedClassMetaDataNames()
Returns the names of the cached classes as a string array. |
java.lang.String[] |
getCachedFunctionTemplateNames()
Returns the names of the cached functions as a string array. |
java.lang.String[] |
getCachedRecordMetaDataNames()
Returns the names of the cached structures as a string array. |
JCoClassMetaData |
getClassMetaData(java.lang.String className)
Returns the metadata for the passed class/interface name. |
JCoFunction |
getFunction(java.lang.String functionName)
Returns a JCoFunction with initial parameters for the passed function name. |
JCoListMetaData |
getFunctionInterface(java.lang.String functionName)
Returns the metadata for the passed function. |
JCoFunctionTemplate |
getFunctionTemplate(java.lang.String functionName)
Returns the template for the passed function. |
JCoRepositoryMonitor |
getMonitor()
Returns a newly created or available monitor instance for the repository. |
java.lang.String |
getName()
Returns the repository name. |
JCoRecordMetaData |
getRecordMetaData(java.lang.String recordName)
Returns the metadata for the passed structure/table name. |
JCoRequest |
getRequest(java.lang.String functionName)
Returns a JCoRequest with initial parameters for the passed function name. |
JCoRecordMetaData |
getStructureDefinition(java.lang.String structureName)
Returns the metadata for the passed structure/table name. |
boolean |
isUnicode()
Returns whether the repository contains both Unicode and non-Unicode metadata. Repositories containing metadata for SAP systems running on non-Unicode codepages cannot contain metadata for unicode structures. |
void |
load(java.io.Reader reader)
Loads the repository from the given reader. Note that the existing cache is cleared completely before reading. |
void |
removeClassMetaDataFromCache(java.lang.String className)
Removes a class metadata instance from the local cache. |
void |
removeFunctionTemplateFromCache(java.lang.String functionName)
Removes a function template from the local cache. |
void |
removeRecordMetaDataFromCache(java.lang.String recordName)
Removes a record metadata from the local cache. |
void |
save(java.io.Writer writer)
Saves this repository using the given writer. This method does not close the given writer. |
| Method Detail |
|---|
java.lang.String getName()
JCoFunctionTemplate getFunctionTemplate(java.lang.String functionName) throws JCoException
functionName
- the name of the function for which the template
is being returned
JCoException
- if another error occurred during the retrieval
of the function interface with the group field set appropriatelyJCoFunction getFunction(java.lang.String functionName) throws JCoException
functionName
- the name of the function for which the JCoFunction
is being returned
JCoException
- if another error occurred during the retrieval
of the function interface with the group field set appropriatelyJCoRequest getRequest(java.lang.String functionName) throws JCoException
functionName
- the name of the function for which the request
is being returned.
JCoException
- if another error occurred during the retrieval
of the function interface with the group field set appropriatelyJCoListMetaData getFunctionInterface(java.lang.String functionName) throws JCoException
functionName
- the name of the function for which the metadata
is being returned
JCoException
- if an error occurred during the retrieval
of the function interfaceJCoRecordMetaData getRecordMetaData(java.lang.String recordName) throws JCoException
recordName
- the name of the structure or table for which the metadata
is being returned
JCoException
- if an error occurred during the retrieval
of the data structure definitionJCoRecordMetaData getStructureDefinition(java.lang.String structureName) throws JCoException
structureName
- the name of the structure or table for which the metadata
is being returned
JCoException
- if an error occurred during the retrieval
of the data structure definitionJCoClassMetaData getClassMetaData(java.lang.String className) throws JCoException
className
- the name of the class or interface for which the metadata
is being returned
JCoException
- if an error occurred during the retrieval
of the class metadata definitionvoid removeFunctionTemplateFromCache(java.lang.String functionName)
functionName
- the name of the function to be removed from the cachevoid removeRecordMetaDataFromCache(java.lang.String recordName)
recordName
- the name of the structure to be removed from the cachevoid removeClassMetaDataFromCache(java.lang.String className)
className
- the name of the class to be removed from the cachejava.lang.String[] getCachedFunctionTemplateNames()
java.lang.String[] getCachedRecordMetaDataNames()
java.lang.String[] getCachedClassMetaDataNames()
boolean isUnicode()
void clear()
JCoRepositoryMonitor getMonitor()
void load(java.io.Reader reader) throws java.io.IOException
reader
- the reader to be used for loading this repository
java.io.IOException
- if an I/O error occurs
JCoRuntimeException
- with key JCO_ERROR_REPOSITORY_SERIALIZATION if the read data
is syntactically or semantically incorrectvoid save(java.io.Writer writer) throws java.io.IOException
writer
- the writer used to save this repository
java.io.IOException
- if an I/O error occurs
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |


Welcome to Great Neck Library's inaugural hackathon! Compete in small teams against your fellow teens to try and see who in a total of 10 hours can create the best, coolest, and most effective tech gizmos that try to solve our Hackathon Challenge. Even if you have never coded before or developed any type of software, this is still the right event for you. In the span of two nights you can begin to learn some of these skills and much more by working hands-on, trying to complete this challenge as you and your teammates feel is best.
To Pre-Register, click on the link below to complete our pre-registration form. Already know who you want to work with and they all want to come? Indicate in the form who else will be coming and working with you!
Learn something new via one of the tracks below!
Topics Covered: Git, HTML, CSS, JavaScript and Python
Topics Covered: Oculus Go and Rift, Unity
Topics Covered: Sphero, Little Bits, Scratch and JavaScript
| What’s a Hackathon? | Hackathons provide a venue for self-expression and creativity through technology. People with technical backgrounds come together, form teams around a problem or idea, and collaboratively code a unique solution from scratch — these generally take shape in the form of websites, mobile apps, and robots. |
|---|---|
| Who can participate? | Any student from the Great Neck community, grades 7 - 12, can register and participate in the hackathon. Even if you are unable to register for the hackathon ahead of time, all walk-ins will be welcome to participate. However, if you are able to, please register so you may be placed on a team! |
| Do I need experience? | Students of ALL experience levels are welcome! Whether you're a designer, coder, tinkerer or somewhere in-between, there will be dedicated events and mentors to ease your way through your first hackathon experience. If you've never programmed before, feel free to follow any of the Learn tracks! |
| Do I have attend the entire hackathon? | Attending both days of the hackathon is not mandatory. Students may attend either days of the event, or both days. To maximize the amount of time spent working with your team and on your projects, it is encouraged that students be there for both days. |
| Will there be food? | Yes, food will be provided for all of the participants of both days of the event. If you have any food related allergies, please make sure to notify us when registering for the hackathon. It is also strongly recommended that you bring some of your own snacks and drinks as you might get hungry or thirsty throughout the event. |
| Do I need a team or an idea to sign up? | Nope! Just come with a willingness to learn something new :) We encourage people to work in teams of up to four. If you can't find a team beforehand, worry not. We'll have a team-formation event at the beginning of the hackathon for the participants who are not already on a team. |
Coming Soon...
Interested in participating in GNL Hackathon, but have more questions? Know someone who'd make a great judge? Is your company interested in sponsoring us? Send an email to Adam Hinz.


How to Buy a Force Traveller? Including All Expenses in Malayalam Video
by AanavandiThe Force Traveller, also called Tempo Traveller, is a light commercial vehicle (LCV) made and distributed by Force Motors. This vehicle range was based on the popular Mercedes-Benz T1 range.
There are different configurations for different uses (commercial minibus, school bus, ambulance, Quick Response Vehicle, etc.).
Other options include high roof / low roof versions, the short chassis / long chassis versions and the Excel series of commercial transport vehicles.
From 10 to 20 passenger capacities, it is an alternative option to consider. Force Traveller series is more suited for tourism purposes and long route travels.
How to Buy a Force Traveller? Including All Expenses in Malayalam Video
Video – On The Wheels.
Low maintenance costs, high comfort levels, good mileage and low cost of ownership has made a favorite choice of travel operators, schools, hospitals etc. Many companies use Traveller vans as their staff bus too.
The Force Tempo Traveller is a popular choice of families going on holidays and fleet operators in India.
It is available in various sizes and is the best-selling bus in the segment. Even though there are luxurious alternative choices available in the market, people prefer buying the Force Traveller and then modify it to meet their requirements.


This intention converts a local variable declaration and consequence assignment to the same variable into one declaration


Zound
Online Store for Musical Instruments
Home
My Account
Customer Services
Contact Us
Visit Our Showroom at
No-212/5, Main Street, Badulla.
Contact Number
+944658352464
+946789765432
E-mail
<EMAIL_ADDRESS>Facebook
Twitter
No-212/5, Main Street, Badulla.
<EMAIL_ADDRESS>+944658352464
|
+946789765432
Zound©2k17


This document explains the format of the PAI files. PAI files are used in child databases to index the parent database. Each child database has a PAI file containing one module for each record, deleted or not. The module contains an entry for each record in the parent database that has an access key corresponding to the record in the child database. For example, the "Rock" record in the Genre child database has an associated PAI module, which contains entries for each song in the parent database in the "Rock" genre. This allows the Neuros to quickly display all of the tracks in a particular category quickly.
A record in a SAI file consists of a pointer to a MDB record, and to
its associated PAI module (if applicable). The pointer to the PAI
module does not point to the start of the module, however, but to the
location of the
| Word Offset | Size (words) | Description |
|---|---|---|
| 0 | 2 | Signature, "0x01162002" |
| 2 | 6 | Reserved (zero by default) |
| 8 | ... | Module #1 |
| ... | ... | ... |
| ... | ... | Module #N |
| Word Offset | Size (words) | Description |
|---|---|---|
| 0 | 1 | Size of this module in words (including this one). Note that the length of a PAI module must be multiple of 32 words. (M) |
| 1 | 1 |
16-bit flag describing the state of the module
|
| 2 | 1 | Total number of entries (N) |
| 3 | 3 | Reserved (0 by default) |
| 6 | 2 | Pointer to beginning of a MDB record. (Note: the PAI pointer in the SAI record associated with this whole module points to this word.) |
| ... | ... | ... |
| 6+2*(N-1) | 2 | Pointer to beginning of a MDB record. |
| ... | ... | Empty entries are marked with zeros |
| M-2 | 2 | Zeros, to mark the end of the module |


This simple demo app uses the textarea below to edit text files. You can use the menu bar below to open, save and create new files.


Elon Musk is working to revolutionize transportation both on Earth and in space.
His automaker, Tesla Motors, which was founded in 2003, is bringing fully-electric vehicles to the mass market.
He settled with the SEC in September 2018 for making alleged "false statements" about a plan to take Tesla private, and had to step down as chairman.
SpaceX, Musk's rocket company, is now valued at more than $20 billion.
He grew up in South Africa, then immigrated to Canada at age 17. He landed in the US as a transfer student at the University of Pennsylvania.
Read this book. Elon Musk: Tesla, SpaceX, and the Quest for a Fantastic Future
Career Milestones
1995 : Zip2
1999 : X.com and PayPal
2001 : SpaceX
2003 : Tesla, Inc. (originally Tesla Motors)
2013 : Solar City, then Gigafactory
2015 : Hyperloop
2015 : OpenAI
2016 : Neuralink
2016 : The Boring Company
If something is important enough you should try, even if the probable outcome is failure.
If something is important enough you should try, even if the probable outcome is failure.
— Elon Musk


This module extends the vocabulary of CSS with terms frequently used in certain domains, making it easier for authors to write understandable and maintainable style sheets.
CSS is a language for describing the rendering of structured documents
(such as HTML and XML)
on screen, on paper, etc.
Status of this document
This is a public copy of the editors’ draft.
It is provided for discussion only and may change at any moment.
Its publication here does not imply endorsement of its contents by W3C.
Don’t cite this document other than as work in progress.
GitHub Issues are preferred for discussion of this specification.
When filing an issue, please put the text “css-egg” in the title,
preferably like this:
“[css-egg] …summary of comment…”.
All issues and comments are archived,
and there is also a historical archive.
This document was produced by a group operating under
the W3C Patent Policy.
W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group;
that page also includes instructions for disclosing a patent.
An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.
As evidenced by the extraordinary variety of designs found on the web,
CSS is a very expressive language,
capable of describing unlimited styles and layouts.
However, one of the design goal of CSS was also to make it
easy to learn and to read by people.
Making it simple for untrained authors to read and guess
the meaning of a style sheet after only a basic introduction to CSS
has contributed greatly to the success of the language.
In addition, easy-to-read style sheets are also easier to maintain.
In this spirit, this specification introduces a few new values and units,
which, while not bringing significant new capabilities to the web platform,
makes it possible to write style sheets that are easier to read than ever before,
by enabling authors to use values and units that are familiar
and appropriate for the domain they are working on.
CSS provides several absolute length units such as cm or in,
as well as several <time> units such as s or ms They can all be converted between each other at fixed ratios, but are
nonetheless provided in recognition that it is most convenient for authors
to use units that they are most familiar with, or that some designs are
more naturally expressed in some units than others.
2.1. Astronomical units
This specification adds four absolute length units
which should be appreciated by authors
in fields such as astronomy and fundamental physics.
The new units are ls, pc and their sub multiples pls and apc.
They are defined as physical units.
Note: Lightsecond was chosen instead of the more familiar lightyear
to make sure that layouts computed during leap years
would be unambiguously identical
to those computed during non-leap years.
Note: This specification does not address relativistic effects
of scrolling or animations and transitions
at (or beyond) the speed of light.
When writing a page representing the inner solar system at scale, the following markup and style could be used.
The following is a disappointingly small sample rendering (not at scale)
of what this would look like.
With the new units and more space than this specification can offer,
this would instead be overwhelmingly awesome.
2.2. Traditional time units
While the s and ms units defined in [CSS3-VALUES] are appropriate for very short durations,
their use to express longer time spans is inadequate.
Moreover, authors may sometimes wish to use less dry terminology
and prefer more expressive and vivid language. This specification
therefore introduces two <time> units: ftn and its subdivision mftn.
This specification introduces an new dimension,
together with a new unit to be used with this dimension.
The <speech-rate> described the speed at which a text is read aloud.
It can be expressed using the tmbl unit, as defined below.
unit
name
definition
tmbl
Timble
This is the rate of speech of Sir Tim Berners-Lee
when delivering a speech.
Note: Authors are advised to be cautious when using this unit,
as it can easily lead to rates of speech that are too high
for the listener to follow. 1tmbl is generally considered to be about
the maximum rate a listener without special training can sustainably understand
while paying close attention.
Consider reducing the speed when the audience is distracted, tired,
or comprises many non-native speakers.
These factors are cumulative.
For dictation or during meetings for which live minutes are taken,
a rate of 0.3tmbl is more appropriate.
For languages other than English, should 1tmbl be defined as
the same number of words per minute as 1tmbl in English?
This seems problematic as we do not have a precise definition for word,
and because average word length can vary significantly per language.
Alternatively, defining 1tmbl as
the speed at which Tim Berners-Lee speaks in that language
is also problematic,
given that there are languages that He does not speak at all.
Tim Berners-Lee has provided an alternative definition of the timble, as documented by Doug Schepers: speech at more than 1 timble is difficult to understand;
speech below 1 timble is simply boring.
Doug himself defines it as the uppermost rate of speech
at which a normal person
can understand what’s being said in their native language.
[normal | x-slow | slow | medium | fast | x-fast |<speech-rate>] || <percentage>
Should negative values be allowed for <speech-rate> for reversed speech?
3. Double Rainbow
<gradient> allows sophisticated visual effects,
but they are tedious to write, review and maintain
as non trivial gradients cannot easily be visualised by merely reading the source.
This specification introduces a new syntax to describe a particular kind of <radial-gradient()>: double rainbows.
This spectacular visual effect which would improve most web pages
is currently underused due to the difficulty of specifying it correctly.
<length> or <percentage> gives the radius of the outermost circle of the double rainbow explicitly.
Percentages values are relative to the corresponding dimension of the gradient box.
Negative values are invalid.
If the second argument is omitted, the default value is farthest-side.
This feature was initially introduced by Opera Software.
The following page, when viewed in Opera (between version 11.60 and 12.16),
demonstrates tasteful use of double rainbows: http://media.opera.com/media/press/2011/unicorn/
Thanks especially to the following people for their ideas, feedback, and experimental implementations (in alphabetical order by first name):
Anne van Kesteren,
Bruce Lawson,
Chris Mills,
Doug Schepers,
Daniel Glazman,
Leif Arne Storset,
Paul Verbeek,
Peter Linss,
Tim Berners-Lee (assuming the quotation by Doug correctly records what Tim said).
Conformance
Document conventions
Conformance requirements are expressed with a combination of
descriptive assertions and RFC 2119 terminology. The key words “MUST”,
“MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”,
“RECOMMENDED”, “MAY”, and “OPTIONAL” in the normative parts of this
document are to be interpreted as described in RFC 2119.
However, for readability, these words do not appear in all uppercase
letters in this specification.
All of the text of this specification is normative except sections
explicitly marked as non-normative, examples, and notes. [RFC2119]
Examples in this specification are introduced with the words “for example”
or are set apart from the normative text with class="example",
like this:
This is an example of an informative example.
Informative notes begin with the word “Note” and are set apart from the
normative text with class="note", like this:
Note, this is an informative note.
Advisements are normative sections styled to evoke special attention and are
set apart from other normative text with <strong class="advisement">, like
this: UAs MUST provide an accessible alternative.
Conformance classes
Conformance to this specification
is defined for three conformance classes:
A style sheet is conformant to this specification
if all of its statements that use syntax defined in this module are valid
according to the generic CSS grammar and the individual grammars of each
feature defined in this module.
A renderer is conformant to this specification
if, in addition to interpreting the style sheet as defined by the
appropriate specifications, it supports all the features defined
by this specification by parsing them correctly
and rendering the document accordingly. However, the inability of a
UA to correctly render a document due to limitations of the device
does not make the UA non-conformant. (For example, a UA is not
required to render color on a monochrome monitor.)
An authoring tool is conformant to this specification
if it writes style sheets that are syntactically correct according to the
generic CSS grammar and the individual grammars of each feature in
this module, and meet all other conformance requirements of style sheets
as described in this module.
Requirements for Responsible Implementation of CSS
The following sections define several conformance requirements
for implementing CSS responsibly,
in a way that promotes interoperability in the present and future.
Partial Implementations
So that authors can exploit the forward-compatible parsing rules to assign fallback values, CSS renderers must treat as invalid
(and ignore as appropriate)
any at-rules, properties, property values, keywords, and other syntactic constructs
for which they have no usable level of support.
In particular, user agents must not selectively ignore
unsupported property values and honor supported values in a single multi-value property declaration:
if any value is considered invalid (as unsupported values must be),
CSS requires that the entire declaration be ignored.
Implementations of Unstable and Proprietary Features
Once a specification reaches the Candidate Recommendation stage,
implementers should release an unprefixed implementation
of any CR-level feature they can demonstrate
to be correctly implemented according to spec,
and should avoid exposing a prefixed variant of that feature.
To establish and maintain the interoperability of CSS across
implementations, the CSS Working Group requests that non-experimental
CSS renderers submit an implementation report (and, if necessary, the
testcases used for that implementation report) to the W3C before
releasing an unprefixed implementation of any CSS features. Testcases
submitted to W3C are subject to review and correction by the CSS
Working Group.
For languages other than English, should 1tmbl be defined as
the same number of words per minute as 1tmbl in English?
This seems problematic as we do not have a precise definition for word,
and because average word length can vary significantly per language.
Alternatively, defining 1tmbl as
the speed at which Tim Berners-Lee speaks in that language
is also problematic,
given that there are languages that He does not speak at all.
Tim Berners-Lee has provided an alternative definition of the timble, as documented by Doug Schepers: speech at more than 1 timble is difficult to understand;
speech below 1 timble is simply boring.
Doug himself defines it as the uppermost rate of speech
at which a normal person
can understand what’s being said in their native language. ↵
Should negative values be allowed for <speech-rate> for reversed speech? ↵


public class ViewPager
extends ViewGroup
PagerAdapter
to generate the pages that the view shows.
Note this class is currently under early design and development. The API will likely change in later updates of the compatibility library, requiring changes to the source code of apps when they are compiled against the newer version.
ViewPager is most often used in conjunction with android.app.Fragment
,
which is a convenient way to supply and manage the lifecycle of each page.
There are standard adapters implemented for using fragments with the ViewPager,
which cover the most common use cases. These are
FragmentPagerAdapter
and
FragmentStatePagerAdapter
; each of these
classes have simple code showing how to build a full user interface
with them.
For more information about how to use ViewPager, read Creating Swipe Views with Tabs.
Below is a more complicated example of ViewPager, using it in conjunction
with android.app.ActionBar
tabs. You can find other examples of using
ViewPager in the API 4+ Support Demos and API 13+ Support Demos sample code.
| Modifier and Type | Class and Description |
|---|---|
static class |
ViewPager.LayoutParams
Layout parameters that should be supplied for views added to a
ViewPager.
|
static interface |
ViewPager.OnPageChangeListener
Callback interface for responding to changing state of the selected page.
|
static interface |
ViewPager.PageTransformer
A PageTransformer is invoked whenever a visible/attached page is scrolled.
|
static class |
ViewPager.SavedState
This is the persistent state that is saved by ViewPager.
|
static class |
ViewPager.SimpleOnPageChangeListener
Simple implementation of the
ViewPager.OnPageChangeListener interface with stub
implementations of each method. |
| Modifier and Type | Field and Description |
|---|---|
static int |
SCROLL_STATE_DRAGGING
Indicates that the pager is currently being dragged by the user.
|
static int |
SCROLL_STATE_IDLE
Indicates that the pager is in an idle, settled state.
|
static int |
SCROLL_STATE_SETTLING
Indicates that the pager is in the process of settling to a final position.
|
| Constructor and Description |
|---|
ViewPager(Context context) |
ViewPager(Context context,
AttributeSet attrs) |
| Modifier and Type | Method and Description |
|---|---|
void |
addFocusables(java.util.ArrayList<View> views,
int direction,
int focusableMode)
We only want the current page that is being shown to be focusable.
|
void |
addTouchables(java.util.ArrayList<View> views)
We only want the current page that is being shown to be touchable.
|
void |
addView(View child,
int index,
ViewGroup.LayoutParams params) |
boolean |
arrowScroll(int direction) |
boolean |
beginFakeDrag()
Start a fake drag of the pager.
|
protected boolean |
canScroll(View v,
boolean checkV,
int dx,
int x,
int y)
Tests scrollability within child views of v given a delta of dx.
|
boolean |
canScrollHorizontally(int direction) |
protected boolean |
checkLayoutParams(ViewGroup.LayoutParams p) |
void |
computeScroll() |
boolean |
dispatchKeyEvent(KeyEvent event) |
boolean |
dispatchPopulateAccessibilityEvent(AccessibilityEvent event) |
void |
draw(Canvas canvas) |
protected void |
drawableStateChanged() |
void |
endFakeDrag()
End a fake drag of the pager.
|
boolean |
executeKeyEvent(KeyEvent event)
You can call this function yourself to have the scroll view perform
scrolling from a key event, just as if the event had been dispatched to
it by the view hierarchy.
|
void |
fakeDragBy(float xOffset)
Fake drag by an offset in pixels.
|
protected ViewGroup.LayoutParams |
generateDefaultLayoutParams() |
ViewGroup.LayoutParams |
generateLayoutParams(AttributeSet attrs) |
protected ViewGroup.LayoutParams |
generateLayoutParams(ViewGroup.LayoutParams p) |
PagerAdapter |
getAdapter()
Retrieve the current adapter supplying pages.
|
protected int |
getChildDrawingOrder(int childCount,
int i) |
int |
getCurrentItem() |
int |
getOffscreenPageLimit()
Returns the number of pages that will be retained to either side of the
current page in the view hierarchy in an idle state.
|
int |
getPageMargin()
Return the margin between pages.
|
boolean |
isFakeDragging()
Returns true if a fake drag is in progress.
|
protected void |
onAttachedToWindow() |
protected void |
onDetachedFromWindow() |
protected void |
onDraw(Canvas canvas) |
boolean |
onInterceptTouchEvent(MotionEvent ev) |
protected void |
onLayout(boolean changed,
int l,
int t,
int r,
int b) |
protected void |
onMeasure(int widthMeasureSpec,
int heightMeasureSpec) |
protected void |
onPageScrolled(int position,
float offset,
int offsetPixels)
This method will be invoked when the current page is scrolled, either as part
of a programmatically initiated smooth scroll or a user initiated touch scroll.
|
protected boolean |
onRequestFocusInDescendants(int direction,
Rect previouslyFocusedRect)
We only want the current page that is being shown to be focusable.
|
void |
onRestoreInstanceState(Parcelable state) |
Parcelable |
onSaveInstanceState() |
protected void |
onSizeChanged(int w,
int h,
int oldw,
int oldh) |
boolean |
onTouchEvent(MotionEvent ev) |
void |
removeView(View view) |
void |
setAdapter(PagerAdapter adapter)
Set a PagerAdapter that will supply views for this pager as needed.
|
void |
setCurrentItem(int item)
Set the currently selected page.
|
void |
setCurrentItem(int item,
boolean smoothScroll)
Set the currently selected page.
|
void |
setOffscreenPageLimit(int limit)
Set the number of pages that should be retained to either side of the
current page in the view hierarchy in an idle state.
|
void |
setOnPageChangeListener(ViewPager.OnPageChangeListener listener)
Set a listener that will be invoked whenever the page changes or is incrementally
scrolled.
|
void |
setPageMargin(int marginPixels)
Set the margin between pages.
|
void |
setPageMarginDrawable(Drawable d)
Set a drawable that will be used to fill the margin between pages.
|
void |
setPageTransformer(boolean reverseDrawingOrder,
ViewPager.PageTransformer transformer)
Set a
ViewPager.PageTransformer that will be called for each attached page whenever
the scroll position is changed. |
protected boolean |
verifyDrawable(Drawable who) |
public static final int SCROLL_STATE_IDLE
public static final int SCROLL_STATE_DRAGGING
public static final int SCROLL_STATE_SETTLING
public ViewPager(Context context)
public ViewPager(Context context, AttributeSet attrs)
protected void onDetachedFromWindow()
public void setAdapter(PagerAdapter adapter)
adapter
- Adapter to usepublic PagerAdapter getAdapter()
public void setCurrentItem(int item)
item
- Item index to selectpublic void setCurrentItem(int item, boolean smoothScroll)
item
- Item index to selectsmoothScroll
- True to smoothly scroll to the new item, false to transition immediatelypublic int getCurrentItem()
public void setOnPageChangeListener(ViewPager.OnPageChangeListener listener)
ViewPager.OnPageChangeListener
.listener
- Listener to setpublic void setPageTransformer(boolean reverseDrawingOrder, ViewPager.PageTransformer transformer)
ViewPager.PageTransformer
that will be called for each attached page whenever
the scroll position is changed. This allows the application to apply custom property
transformations to each page, overriding the default sliding look and feel.
Note: Prior to Android 3.0 the property animation APIs did not exist. As a result, setting a PageTransformer prior to Android 3.0 (API 11) will have no effect.
reverseDrawingOrder
- true if the supplied PageTransformer requires page views
to be drawn from last to first instead of first to last.transformer
- PageTransformer that will modify each page's animation propertiesprotected int getChildDrawingOrder(int childCount, int i)
public int getOffscreenPageLimit()
setOffscreenPageLimit(int)
public void setOffscreenPageLimit(int limit)
This is offered as an optimization. If you know in advance the number of pages you will need to support or have lazy-loading mechanisms in place on your pages, tweaking this setting can have benefits in perceived smoothness of paging animations and interaction. If you have a small number of pages (3-4) that you can keep active all at once, less time will be spent in layout for newly created view subtrees as the user pages back and forth.
You should keep this limit low, especially if your pages have complex layouts. This setting defaults to 1.
limit
- How many pages will be kept offscreen in an idle state.public void setPageMargin(int marginPixels)
marginPixels
- Distance between adjacent pages in pixelsgetPageMargin()
,
setPageMarginDrawable(Drawable)
,
#setPageMarginDrawable(int)
public int getPageMargin()
public void setPageMarginDrawable(Drawable d)
d
- Drawable to display between pagesprotected boolean verifyDrawable(Drawable who)
protected void drawableStateChanged()
public Parcelable onSaveInstanceState()
public void onRestoreInstanceState(Parcelable state)
public void addView(View child, int index, ViewGroup.LayoutParams params)
public void removeView(View view)
protected void onAttachedToWindow()
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec)
protected void onSizeChanged(int w, int h, int oldw, int oldh)
protected void onLayout(boolean changed, int l, int t, int r, int b)
public void computeScroll()
protected void onPageScrolled(int position, float offset, int offsetPixels)
position
- Position index of the first page currently being displayed.
Page position+1 will be visible if positionOffset is nonzero.offset
- Value from [0, 1) indicating the offset from the page at position.offsetPixels
- Value in pixels indicating the offset from position.public boolean onInterceptTouchEvent(MotionEvent ev)
public boolean onTouchEvent(MotionEvent ev)
public void draw(Canvas canvas)
protected void onDraw(Canvas canvas)
public boolean beginFakeDrag()
A fake drag can be useful if you want to synchronize the motion of the ViewPager
with the touch scrolling of another view, while still letting the ViewPager
control the snapping motion and fling behavior. (e.g. parallax-scrolling tabs.)
Call fakeDragBy(float)
to simulate the actual drag motion. Call
endFakeDrag()
to complete the fake drag and fling as necessary.
 If a real drag is already in progress, this method will return false.
fakeDragBy(float)
,
endFakeDrag()
public void endFakeDrag()
beginFakeDrag()
,
fakeDragBy(float)
public void fakeDragBy(float xOffset)
beginFakeDrag()
first.xOffset
- Offset in pixels to drag by.beginFakeDrag()
,
endFakeDrag()
public boolean isFakeDragging()
beginFakeDrag()
,
fakeDragBy(float)
,
endFakeDrag()
public boolean canScrollHorizontally(int direction)
protected boolean canScroll(View v, boolean checkV, int dx, int x, int y)
v
- View to test for horizontal scrollabilitycheckV
- Whether the view v passed should itself be checked for scrollability (true),
or just its children (false).dx
- Delta scrolled in pixelsx
- X coordinate of the active touch pointy
- Y coordinate of the active touch pointpublic boolean dispatchKeyEvent(KeyEvent event)
public boolean executeKeyEvent(KeyEvent event)
event
- The key event to execute.public boolean arrowScroll(int direction)
public void addFocusables(java.util.ArrayList<View> views, int direction, int focusableMode)
public void addTouchables(java.util.ArrayList<View> views)
protected boolean onRequestFocusInDescendants(int direction, Rect previouslyFocusedRect)
public boolean dispatchPopulateAccessibilityEvent(AccessibilityEvent event)
protected ViewGroup.LayoutParams generateDefaultLayoutParams()
protected ViewGroup.LayoutParams generateLayoutParams(ViewGroup.LayoutParams p)
protected boolean checkLayoutParams(ViewGroup.LayoutParams p)
public ViewGroup.LayoutParams generateLayoutParams(AttributeSet attrs)


Scilab on Cloud
For enhanced performance and safety, FOSSEE team ported Scilab to the GARUDA Grid, with the help from the GARUDA Team at CDAC, Bengaluru.
Scilab on Cloud facilitates execution of Scilab Textbook Companion codes online.
Features :- The results can be verified with the solved example(s) from the textbook.
- Change the values of the variables and in fact, the code itself, and execute it.
- In addition to the given examples, one can also copy and paste (or) write a new code in the input box provided on the interface and execute the same.
How it Works
Your Laptop/PC
The Scilab Cloud
Garuda Grid
About Scilab.in
We, the Scilab team at IIT Bombay India, aim to increase the use of Scilab in educational institutions across India. The primary focus of our efforts is to help educational institutions shift from using proprietary packages to using Scilab.
Scilab is a major component of the FOSSEE (Free and Open source Software for Education) project.
About GARUDA GRID
GARUDA (Global Access to Resource Using Distributed Architecture) is India's Grid Computing Initiative connecting 17 cities across the country.
The 45 participating institutes in this nationwide project include all the IITs and C-DAC centres and other major institutes in India.
Scilab Cloud in Action
ExamplesExample 001
Engineering Heat Transfer by W.S. Janna, Chapter 6, E.g. 6.4. Scilab can be used to study temperature properties of freon gas over a tube with constant wall temperatureOpen in Scilab Cloud
Get Involved
Contribute. Collaborate. Explore.FOSSEE (Free and Open Source Software in Education) project promotes the use of FOSS tools to improve the quality of education in our country. We aim to reduce dependency on proprietary software in educational institutions.
We encourage the use of FOSS tools through various activities to ensure commercial software is replaced by equivalent FOSS tools. We also develop new FOSS tools and upgrade existing tools to meet requirements in academia and research.


FICTOAN is a simple HTML+CSS boilerplate that’s intuitive, modular, and responsive.
Most sites be like, “For devs, by devs”. So, in order to restore balance in the Universe, this framework is aimed at web newbies and designers starting to code.
But hey, don’t run away if you’re a pro dev. Try it, you might just fall in love.
FICTOAN uses straight-forward and intuitive class names such as .horizontal-center-this
, .no-margin-top
, .center-on-mobile
and so on. Simple and easy to recollect.
Styling for elements are like a jigsaw puzzle— take a .button
, simply add .bg-red
, .shape-circular
and .no-shadow
to get a red, round button without a shadow. It’s like playing with Lego.
The grid is completely responsive, and uses the popular 12-column layout. It also has specific classes for tablet portrait, landscape and mobile breakpoints, which means you have complete control of the layout all the time.
FICTOAN is the path to nirvana, is capable of faster-than-light travel, and runs on nuclear fusion energy. But all that is for the next version. Right now it’s great for building web pages that look nice out of the box.
Hit that fancy button to get the zip file of the latest version. Comes with a nice empty template.html
that’s just waiting for your content.
If you’re the nerdier type, head to Github, where you can look at the code and have a good laugh. Or contribute. Your call.
FICTOAN uses SCSS, which is basically CSS on steroids. It’s a preprocessor for regular CSS, and adds a lot of extra features such as variables, nested style rules, mixins and what not. But keep in mind, browsers can’t read SASS code, so we will need to transpile to CSS everytime we make changes.
Worry not. Just head here and install the preprocessor on your machine. I recommend the command-line method, its painless, and it’s time we all started using CLI anyway. You’ll find everything you need on that site. We’ll be using SCSS, because it’s easier to understand than the SASS syntax.
This is the folder structure you should see after you extract the zip file locally. Inside the main folder, there’re separate folders for CSS/SCSS, icons, and images. The HTML files are all in the root folder itself. Inside the css
folder, there are three folders— vendor
, fictoan
, and this-project
.
The vendor
folder contains any third-party CSS files necessary for FICTOAN to work properly. Add all your externally-linked files in here. Right now, it’s got only one file—
normalize.scss
is a nifty little file that has a bunch of rules to force elements to render consistently across different browsers and platforms. Think of it as a standardised baseline for elements to follow.
The fictoan
folder is the core of the framework. It’s the engine under the hood.
_main-fictoan.scss
is the single place where all the FICTOAN files are all brought together in a particular order for transpiling.
_reset-fictoan.scss
basically builds on normalize.scss
with a few custom rules to make our lives easier. Some of its rules are opinionated, though.
_variables-fictoan.scss
contains all the styling variables used in FICTOAN. SCSS variables allow you to set attribute values globally, so that you don’t have to set them individually each time.
_layout-fictoan.scss
has all the rules for grid and general layout behaviour. Also has media-queries for various screen sizes.
_utilities-fictoan.scss
, as the name suggests, has classes for your margins, paddings, icon sizes, alignments and a few custom elements as well.
Elements within FICTOAN is broken down into meaningful groups, so that you can find what you’re looking for easily. Also, I’m OCD like that.
styles-this-project.scss
is for project-specific styling you might need. Having it on a separate file makes it easier to update FICTOAN (which you do by replacing old files with newer ones).
And finally, main-fictoan.scss
loads all the other SCSS files in a particular order, so that styling properly cascades down the file order.
fictoan
|
|—— css
| |—— main.scss
| |
| |—— vendor
| | |—— _normalize.scss
| | |—— _new-moon.scss
| |
| |
| |—— fictoan
| | |—— _main-fictoan.scss
| | |
| | |—— base
| | | |—— _reset-fictoan.scss
| | | |—— _variables-fictoan.scss
| | | |—— _layout-fictoan.scss
| | | |—— _styles-fictoan.scss
| | |
| | |—— components
| | |—— _ff-responsiveness.scss
| | |—— _ff-colours.scss
| | |—— _ff-typography.scss
| | |—— _ff-header.scss
| | |—— _ff-inputs.scss
| | |—— _ff-buttons.scss
| | |—— _ff-sidebar.scss
| | |—— _ff-tab-bar.scss
| |
| |
| |—— this-project
| |—— _styles-this-project.scss
|
|
|—— icons
| |—— all icon files in svg
|
|—— images
| |—— all image files
|
|
|—— index.html
|
|—— template.html
|
|—— README.md
|
|—— LICENSE
Now, for the HTML setup. You can either jump right to the template.html
, which is an empty file with the basic .row
and .portion
blocks already set up for you. All you have to do is fill in your content as you want it. Feel free to add and remove blocks as you see fit.
But if you’d like to start afresh, make sure you include the necessary files at the top of your HTML file. Note that we’re including a CSS file— the SCSS we write is transpiled into CSS, which is understood by the browser.
<!doctype html>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="shortcut icon" href="images/favicon.png" type="image/png">

<link rel="stylesheet" href="css/main.css" type="text/css">
<title>Your page name</title>

That’s it! You’re good to go. But that was the easy part, now to get into the meat of the madness, but fear not, this document will be the shining light in your hour of darkness. FICTOAN is built in such a way that it’s extremely easy for newbies to pick up on, so it really shouldn’t be that much of a hassle.
To begin with, FICTOAN has a .all-content
class that places, well, all your content in the centre of the page, with equal padding on the left and right.
This padding automatically increases and decreases depending on the viewport width using media queries, so that your content doesn’t stick to the screen edges and looks good at any resolution. The padding is also set in vw
units, meaning it takes into account viewport-width instead of static pixels.
 Right. Sorry.
FICTOAN uses a simple 12-column grid for layout. Each horizontal section on your page is a .row
, containing .portion
divs of various widths. The children of the .row
all need to have a .portion
class, along with a width class. These width classes range from .whole
, whose width is 100% of the .row
, to .one-twelfths
, which is 8.33%.
All the portion width classes have simple fraction-based names, such as .half
, .three-fourths
, .one-fifth
, .seven-twelfths
and the like. Pretty easy to remember. In this way, you can have multiple equal width .portion
elements in a .row
.
If you don’t specify a width class for a .portion
, it reverts back to a full-width element.

...

...

...

...

...

...

.row
.one-tenth
.two-sevenths
.one-twelfth
.four-elevenths
.one-sixth
Ok, now, if you need to stack divs of such unequal widths all into a container, you can use the .box
class instead of the .row
. Now you can dump as many .portion
elements inside as you like. You’d need help for your psychosis, but your divs won’t break.

...

...

...

...

...

...

...

.box
.three-elevenths
.one-eighth
.three-twelfths
.three-sevenths
.four-ninths
.four-sevenths
.one-sixth
You can nest your .row
divs inside of more .row
divs, as many times as you want. But be wary— it’s a slippery slope, you might never find your way out.

...

...

...

.row
.half
.row
.half
.half
.half
FICTOAN has four width-range buckets to segregate responsiveness behaviour. They are desktop (default), tablet landscape, tablet portrait, and mobile.
Mobile
Up to 599px
Tablet portrait
From 600px to 899px
Tablet landscape
From 900px to 1199px
Desktop
From 1200px
FICTOAN is completely responsive, maintaining a coherent page layout across various resolutions. The .all-content
class’ padding resizes with screen width, allowing for easy readability.
Currently, for managing this padding, there are six breakpoints, each with progressively increasing padding, both left and right. You can over-ride this though, with specific padding classes.
@media all and (max-width: 599px) {
.all-content { padding: 0 2vw; }
}
@media all and (min-width: 600px) {
.all-content { padding: 0 4vw; }
}
@media all and (min-width: 900px) {
.all-content { padding: 0 8vw; }
}
@media all and (min-width: 1200px) {
.all-content { padding: 0 10vw; }
}
@media all and (min-width: 1800px) {
.all-content { padding: 0 12vw; }
}
@media all and (min-width: 2400px) {
.all-content { padding: 0 16vw; }
}
Apart from the overall content padding, there are a quite a few other classes you can use. FICTOAN breaks down responsive behaviour into three main buckets— mobile, tablet portrait, and tablet landscape. Everything else is considered as desktop.
These classes are all suffix classes, meant to be used along with the portion
divs. As shown below, you can use them to force a particular layout for a row, on a particular width range. You can even set different width on different devices.

The above .portion
does exactly what its classes dictate— it is one-sixth of the parent width by default (on desktops), quarter-width on tablet landscape, a third on tablet portrait, and finally, half-width on mobile.
In this manner, you can use any combination of widths to control your layout on different resolutions. As you can see, the class names are all plain english, not cryptic abbreviations and numerals.
On the other hand, suppose you want a layout to remain the same across all devices, and force that behaviour always, FICTOAN’s got you covered.
Depending on the breakpoint, you can apply any of the following classes. Just add these to the .row
div where you want to force the layout.

...

...

...

The .row
here will have three .portion
divs, each one-third of the width. Because the retain classes are applied to the parent .row
, the portions will remain one-third always, no matter the device or resolution.
You can also remove any of the classes to revert the row back to the default behaviour. So removing .retain-layout-on-tab-pt
means the portions won’t stay 1/3 on tablet portrait— 600px to 899px.

...

...

.portion
Content goes here
.portion
Content goes here

...

...

.portion
Content goes here
.portion
Content goes here

...

...

.portion
Content goes here
.portion
Content goes here
Typography is an important part of FICTOAN, and there are myriad classes focused just on typography. To keep things free, the framework uses fonts from Google Fonts, handpicked beauties just for you.
There are three typefaces, each for one category commonly used on web pages— one sans for body, one serif for fancy occasions, and one geometric monospace for displaying code.

Work Sans is the typeface of choice for body, chosen for its excellent legibility and subdued style. You just can’t go wrong with this one.

Crimson Text is the selected serif, for its understated elegance and subtle class. It’s sober characters are great for body text as well.

Space Mono handles the monospace department, and with quite a bit of panache too, though its a newcomer.
FICTOAN uses a minor-third scale-factor to fix the font-sizing ratio for headings. First, we set the base font size as 1em, or 16px. This is the default font size for our HTML body.
Then, we do a fancy power function calculation, and bam! We can now get all heading sizes from a single value. This means that each heading size is 1.2 times larger than the previous, like so—
h1
h2
h3
h4
h5
h6
Ok, let’ break it down.
As you can see here, we’ve set the base font size as 1, and the scale factor as 1.2. Using these values, we’re doing some fancy math to attain the the power function for easy scaling.
Both $baseFontSize
and $scaleFactor
are set as variables. This makes it real easy to edit font sizes across the board— just edit either of the values, and your heading sizes will resize accordingly.
$baseFontSize : 1em; // =16px
$scaleFactor : 1.2;
// Power function — for scaleFactor usage
@function pow($number, $exponent) {
$value : 1;
@if $exponent > 0 {
@for $i from 1 through $exponent {
$value: $value * $number;
}
} @else if $exponent < 0 {
@for $i from 1 through -$exponent {
$value: $value / $number;
}
}
@return $value;
}
// Using that value to set heading sizes
h1 { font-size : $baseFontSize*pow($scaleFactor, 8); } // 4.29982em
h2 { font-size : $baseFontSize*pow($scaleFactor, 6); } // 2.98598em
h3 { font-size : $baseFontSize*pow($scaleFactor, 4); } // 2.0736em
h4 { font-size : $baseFontSize*pow($scaleFactor, 3); } // 1.728em
h5 { font-size : $baseFontSize*pow($scaleFactor, 2); } // 1.44em
h6 { font-size : $baseFontSize*pow($scaleFactor, 1); } // 1.2em
FICTOAN also has a pretty extensive syntax highlighting system. Although it uses prismJS for the syntax identification, the colours are all based off of FICTOAN’s colour scheme.
To offer a consistent, reliable performance, the prismJS is included locally, inside the js
folder. By default, it offers highlighting for Markup, CSS, SCSS JS, JSON and C-like languages, but you can add for as many as you want.

Wow, this is some meta shit!

That’s all you need for making your code colourful and readable. Just add the language-
prefix and the name of the language, in the code
class, and you’re good to go.
You can even make your own colour scheme, just edit the values in the fictoan-code-colours.scss
file.
There’s also very convenient text-sizing classes that you can use in your inline span
elements. Simply add the appropriate class.
These too are sized using the scaleFactor calculation, so they too will resize when if you change $baseFontSize
.
Your text can be huge, large, normal, small, and tiny.
.text-tiny { font-size : $baseFontSize*pow($scaleFactor,-2); }
.text-small { font-size : $baseFontSize*pow($scaleFactor,-1); }
.text-normal { font-size : $baseFontSize*pow($scaleFactor, 0); }
.text-large { font-size : $baseFontSize*pow($scaleFactor, 4); }
.text-huge { font-size : $baseFontSize*pow($scaleFactor, 8); }
Colour is another integral part of FICTOAN. The framework has a simple complementary scheme set up to provide a basic out-of-the-box usage, and a general spectrum for more nuanced control.
You’ll also notice that the colour format used here is hsl
and hsla
. HSL is an intuitive system, unlike abstract formats like RGB and Hex. You can read more about why, here.
Primary hue + white
$colorTint
lighten($colorHue, 25%);
PRIMARY HUE
$colorHue
hsl(10, 90%, 70%);
Primary hue + black
$colorShade
darken($colorHue, 25%);
Primary hue + more black
$colorShade-2
darken($colorHue, 60%);
Complement of primary hue
$colorAccent
complement($colorHue);
The colour scheme in FICTOAN is complementary, as you can see. The system is built using simple SASS functions, allowing more nuanced user control over the scheme. Only the primary colour is set with a hard-coded value, rest are all derived using that value.
This means that if you change the $colorHue
variable, the rest of the four colours will also change accordingly. You can over-ride the SASS functions as you like, and you can find a full list of what’s possible here. Play around and create your own custom schemes with these functions.
There’s also a whole bunch of preset colours you can use, each with one lighter and one darker variant. The lightening and darkening value is again controlled by SASS functions, mostly in the 10% to 30% range.
Because we’re using SASS functions, we don’t have to come up with individual values of the light and dark colours, instead, we just have to specify the hue, and variants are calculated automatically.
Red
$colorRed
hsl(1, 100%, 67%);
Light Red
$colorRed-light
lighten($colorRed, 10%);
Dark Red
$colorRed-dark
darken($colorRed, 30%);
Orange
$colorOrange
hsl(34, 100%, 50%);
Light Orange
$colorOrange-light
lighten($colorOrange, 10%);
Dark Orange
$colorOrange-dark
darken($colorOrange, 10%);
Yellow
$colorYellow
hsl(40, 99%, 63%);
Light Yellow
$colorYellow-light
lighten($colorYellow, 10%);
Dark Yellow
$colorYellow-dark
darken($colorYellow, 10%);
Green
$colorGreen
hsl(147, 65%, 45%);
Light Green
$colorGreen-light
lighten($colorGreen, 20%);
Dark Green
$colorGreen-dark
darken($colorGreen, 20%);
Teal
$colorTeal
hsl(161, 60%, 62%);
Light Teal
$colorTeal-light
lighten($colorTeal, 20%);
Dark Teal
$colorTeal-dark
darken($colorTeal, 20%);
Blue
$colorBlue
hsl(187, 69%, 55%);
Light Blue
$colorBlue-light
lighten($colorBlue, 20%);
Dark Blue
$colorBlue-dark
darken($colorBlue, 20%);
Indigo
$colorIndigo
hsl(187, 69%, 55%);
Light Indigo
$colorIndigo-light
lighten($colorIndigo, 20%);
Dark Indigo
$colorIndigo-dark
darken($colorBlue, 20%);
Purple
$colorPurple
hsl(275, 51%, 55%);
Light Purple
$colorPurple-light
lighten($colorPurple, 20%);
Dark Purple
$colorPurple-dark
darken($colorPurple, 20%);
Pink
$colorPink
hsl(305, 100%, 85%)
Light Pink
$colorPink-light
lighten($colorPink, 10%);
Dark Pink
$colorPink-dark
darken($colorPink, 20%);
Brown
$colorBrown
hsl(22, 49%, 43%);
Light Brown
$colorBrown-light
lighten($colorBrown, 20%);
Dark Brown
$colorBrown-dark
darken($colorBrown, 20%);
SASS also makes it very easy to use the same values over and over again without repetition. Because we’ve set the colour value as a variable, it becomes very easy to reuse these for other purposes too.
We can now use these colours for backgrounds, text and even icons. Just add the appropriate class to the appropriate element. The colours remains the same, only the prefix differs from element to element.

Card with a green background

I’m indigo.
I’m dark red.
I’m light brown.
<svg class="fill-blue" />
Buttons come a variety of shapes and sizes in FICTOAN, and like all other components in here, they are modular, and the class names fit together like a jig-saw puzzle.
Ideally, you’ll be using the a
tag with specific classes to give the appearance of a button. Each class comes with its own particular styling rules, add and remove as you please.
CLICK ME
CLICK ME

CLICK ME
CAN’T CLICK ME
Input fields are pretty straight-forward, with a simple grey line at the bottom by default, which turns into the $colorHue
variable on focus.
Other elements like the checkbox and radio button also use the same principle, using the same variable when selected.

<input class="ff-input" placeholder="Username">
<input class="ff-input input-success">
<input class="ff-input input-error">

<input type="checkbox" id="toggle-1" />

Default

<input type="radio" id="radio-1" name="radioset-1" />

Default

Tabs in FICTOAN are CSS-only, and use the radio-button hack for displaying the corresponding content. In desktop view, they’re placed left to right.
 Modals basically use a full-page overlay with a row
and portion
element inside.
The modal box itself is a simple .card
element, with customisable background colour, shape and so on.
Open Modal

Something

OK, Fine


Informasi Terbaru seputar Ibu Hamil dan Kesehatan
This is a wider card with supporting text below as a natural lead-in to additional content.
Continue readingThis is a wider card with supporting text below as a natural lead-in to additional content.
Continue reading


Scottish council condemns Boots for 'stealth tax on most vulnerable'
West Lothian Council wants the Scottish Government to oppose charges for prescription deliveries
by Stuart Sommerville, https://www.dailyrecord.co.uk/authors/stuart-sommerville/West Lothian Council has hit out at Boots over its prescription delivery charges.
The council unanimously backed two motions raised by SNP councillors over prescriptions, as well as charges for TV licences.
The SNP group depute leader Councillor Frank Anderson raised a motion to the full council this week questioning a decision by the high street chain.
In September it introduced a charge of £5 per item or an annual charge of £55 to deliver prescriptions.
Councillor Anderson described this charge as a “stealth tax on the most vulnerable in our society”.
He called on the council to write to the firm, which is owned by an American conglomerate, in protest, and to ask CoSLA and the Scottish Government to investigate ways to oppose the charges. Council agreed.
Fellow group member Councillor Diane Calder also thanked Labour and Tory councillors for backing her motion to restore free TV licences for over 75s.
The BBC was given responsibility for funding the free TV licence by the government and was recently forced to announce that it would charge all older people save for those on Pension Credit for a TV licence. A TV licence costs £154.50 annually.
Her motion said: “Council believes the Westminster government should resume its responsibility for funding the scheme and resolves to write to the Secretary of State for Digital Culture, Media and Sport to request the Westminster government to reinstate funding.”


Generates expected values of species richness, with continuous or scattered ranges, for data across one or two dimensions.
| Version: | 1.0.3 |
| Depends: | R (≥ 3.2.0) |
| Suggests: | ggplot2, maptools, rgdal, rgeos |
| Published: | 2018-08-19 |
| Author: | Aniruddha Marathe |
| Maintainer: | Aniruddha Marathe <aniruddha.pravin.marathe at gmail.com> |
| License: | GPL-2 | GPL-3 [expanded from: GPL (≥ 2)] |
| NeedsCompilation: | no |
| CRAN checks: | rangemodelR results |
| Reference manual: | rangemodelR.pdf |
| Package source: | rangemodelR_1.0.3.tar.gz |
| Windows binaries: | r-devel: rangemodelR_1.0.3.zip, r-release: rangemodelR_1.0.3.zip, r-oldrel: rangemodelR_1.0.3.zip |
| OS X binaries: | r-release: rangemodelR_1.0.3.tgz, r-oldrel: rangemodelR_1.0.3.tgz |
| Old sources: | rangemodelR archive |
Please use the canonical form https://CRAN.R-project.org/package=rangemodelR to link to this page.


Good, there are 0 active alerts for team "{{ team }}" at the moment.
There are {{ alertsInDowntime.length }} alerts in Downtime (ShowHide)


Resume available in PDF format
May 2016 - August 2017
I worked on maintaining the most trafficked Government of Canada website and several web based technologies that provide weather information to the public.
Worked as a full stack web developer using PHP, Perl, and JavaScript
Implemented several highly prominent features that will be used by millions of Canadians
Fixed many non-trivial long lived bugs, organized a large established codebase, and implemented modern security features
May 2015 - August 2015
As a Junior Software Developer, I worked on designing, implementing and rolling out several pieces of software. I was also assigned to debug current applications as well as add functionality to them.
Designed and developed an internal tool used by the Customer service department written in C# that used a Microsoft SQL Server as the backend
Worked in an agile development as expectations for the software changed frequently
Successfully managed and bug tested large established code bases
Tested out future big data expansion with Hadoop implemented under a Linux environment
Worked with a data analytics team to collect, aggregate, and display up to date logistical information succinctly
May 2014 - August 2014
Headed the design and development of a cross platform mobile application for students
Developed iOS and Android application with C# and SQL
Adapted to ever changing specifications and feature requirements, tight deadlines and unexpected delays while maintaining quality
Self taught mobile development on the job with no interference to project schedule and delivered product on time
Wrote all of the backend code to retrieve tweets, announcements, the search tools, and server side code to store and deliver information
Worked on optimizing code and threading the UI for a better user experience
2013 - Present
Will recieve B.Sc. (Hons) in June 2018
A Canadian timezone management library
www.weather.gc.ca/cacheable/js/shared-js/ctzlib.jsA side panel for user favourite bookmarks on site
www.weather.gc.ca/cacheable/js/favourites/favourites.jsA Modal dialog box library
www.weather.gc.ca/cacheable/js/shared-js/modals.jsI am committed to ensuring accessibility of this website for people with disabilities. As of October 9, 2017, all pages on this website conform to the Web Content Accessibility Guide 2.0 (Level AAA). This website relies on HTML, CSS, and JavaScript, all of which have been specifically designed to conform with the Web Content Accessibility Guide.
This website has also been tested to work with no significant loss of functionality on IE 7+, Google Chrome 3+, and FireFox 4+ as well as without JavaScript enabled. However there may be reduced accessibility functionality (Level AA or lower) on older browsers and/or without JavaScript enabled.
I worked on designing and implementing an iOS and Android app managing links, searching for classes, twitter integration, gallery functionality, and other collections of information.
I have several Github open source projects available at github.com/pdemian/


{% extends 'base.html' %} {% load staticfiles %} {% block title %} Vendor products {% endblock %} {% block custom_css %} .paginate_button { /* fix an issue with the pagination on the datatable */ padding: 0 !important; } /* Datatables header icon workaround */ table.dataTable thead .sorting_asc::after { content: "" } table.dataTable thead .sorting_desc::after { content: "" } table.dataTable thead .sorting::after { content: "" } /* customize button panel on datatables */ .dt-buttons { margin-top: 20px; margin-bottom: 20px; } {% endblock %} {% block content %}
On this page, you can browse the local database based on a specific vendor. To see the products that are assigned to a specific product list, you can use the browse products lists view.
{% if vendors|length > 0 %}Please select a vendor that should be displayed:
| product ID | description | list price | currency |
|---|


You can simply add the css to your website:
Sass users:
The full sass files are available on github. I am a big fan of Grunt, feel free to refuse the relevant Sass tasks in the repository's Gruntfile.js.
Default styling with nav
class:
Additional style type with nav
and
nav-box
classes:
Additional style type with nav
and
nav-small
classes:
This is how a sentence would look
Headers use Montserrat.
Body text uses Cardo.
Both of theses fonts are easily added to your website using the Google Fonts scripts:
<link href='http://fonts.googleapis.com/css?family=Montserrat:400,700' rel='stylesheet' type='text/css'>
<link href='http://fonts.googleapis.com/css?family=Cardo:400,700' rel='stylesheet' type='text/css'>
It's not what you look at that matters, it's what you see.
- Henry David Thoreau
The blockquote above is achieved with the blockquote
html tag and a .txt-subtitle
class for the citation.
The outlined button on the left is achieved by using the .btn
class, the active button on the right uses both .btn .active
classes.
Style elements like tags with the .tag
class.
This is the default styling for tables, no additional classes necessary.
| This | That | Those |
|---|---|---|
| John | Doe | Other |
| John | Doe | Other |
Using Andrzej Osmialowski's 1140px grid (only the 12 column one).
A few differences from Andrzej's code:
.container
class (not the container12 class)..left-margin
or .right-margin
respectively (not alpha or omega)..column12
.column6
.column6
.column4
.column8
.column2
.column2
.column4
.column2
.column2
.column8 .prefix2
.column5
.column7
To use these colors in your website append either .bg-
such as .bg-grey
to use it as a background color property, or .cl-
such as .cl-blue
to use it as the color property.


I have tried meditation and found it was an easy and effective way to release stress and reset my brain to fully functional status. Meditation is not unfamiliar to me as it is commonly seen in Buddhism.
While I have only just beginning to try meditation, there will be a lot more practice and experiments to be done for mastering it. Of course, other timeboxing techniques are really useful and I look forward to trying them all in the future.


func MatchBefore(fset *token.FileSet, readFile ReadFile, end token.Pos, pattern interface{}) (token.Pos, token.Pos, error)
MatchBefore attempts to match a pattern in the line before the supplied pos. It uses the FileSet and the ReadFile to work out the contents of the line that end is part of, and then matches the pattern against the content of the start of that line up to the supplied position. The pattern may be either a simple string, []byte or a *regexp.Regexp. MatchBefore returns the range of the line that matched the pattern, and invalid positions if there was no match, or an error if the line could not be found.
Identifier is the type for an identifier in an Note argument list.
type Identifier string
Note is a parsed note from an expect comment. It knows the position of the start of the comment, and the name and arguments that make up the note.
type Note struct { Pos token.Pos // The position at which the note identifier appears Name string // the name associated with the note Args []interface{} // the arguments for the note }
func Extract(fset *token.FileSet, file *ast.File) ([]*Note, error)
Extract collects all the notes present in an AST. Each comment whose text starts with @ is parsed as a comma-separated sequence of notes. See the package documentation for details about the syntax of those notes.
func Parse(fset *token.FileSet, filename string, content []byte) ([]*Note, error)
Parse collects all the notes present in a file. If content is nil, the filename specified is read and parsed, otherwise the content is used and the filename is used for positions and error messages. Each comment whose text starts with @ is parsed as a comma-separated sequence of notes. See the package documentation for details about the syntax of those notes.
ReadFile is the type of a function that can provide file contents for a given filename. This is used in MatchBefore to look up the content of the file in order to find the line to match the pattern against.
type ReadFile func(filename string) ([]byte, error)


@ControlBoundary public interface WorkflowInstanceFacade
TODO - we should probably have callbacks for failure states here, but that would need a decent definition (and maybe even ontology of) what failure means.  At the moment the dispatch stack can potentially treat unhandled error messages as failing the processor, how do we get this exception information back up to the workflow level?
| Modifier and Type | Interface and Description |
|---|---|
static class |
WorkflowInstanceFacade.State |
| Modifier and Type | Field and Description |
|---|---|
static WeakHashMap<String,WeakReference<WorkflowInstanceFacade>> |
workflowRunFacades
A weak hash map of all workflow run IDs mapped against the corresponding
WorkflowInstanceFacadeS.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addFacadeListener(FacadeListener listener)
A failure listener reports on overall workflow failure.
|
void |
addResultListener(ResultListener listener)
The result listener is used to handle data tokens produced by the
workflow.
|
boolean |
cancelWorkflowRun()
Cancel the workflow run corresponding to this facade
|
void |
fire()
Where a workflow has no inputs this method will cause it to start
processing.
|
InvocationContext |
getContext()
Return the invocation context used by this facade
|
Dataflow |
getDataflow()
Return the dataflow this facade facades
|
String |
getIdentifier()
An identifier that is unique to this facade.
|
WeakHashMap<String,T2Reference> |
getPushedDataMap()
Return a map of the data pushed on the named port
|
WorkflowInstanceFacade.State |
getState()
Return the current workflow
WorkflowInstanceFacade.State . |
TypedTreeModel<MonitorNode> |
getStateModel()
Workflow state is available through a sub-tree of the monitor tree.
|
String |
getWorkflowRunId()
Get the unique id of the wf run inside the facede.
|
boolean |
pauseWorkflowRun()
Pause the workflow run corresponding to this facade
|
void |
pushData(WorkflowDataToken token,
String portName)
Push a data token into the specified port.
|
void |
removeFacadeListener(FacadeListener listener)
Remove a previously registered failure listener
|
void |
removeResultListener(ResultListener listener)
Remove a previously registered result listener
|
boolean |
resumeWorkflowRun()
Resume the workflow run corresponding to this facade
|
static final WeakHashMap<String,WeakReference<WorkflowInstanceFacade>> workflowRunFacades
void pushData(WorkflowDataToken token, String portName) throws TokenOrderException
token
- A WorkflowDataToken containing the data to be pushed to the
workflow along with its current owning process identifier and
indexportName
- Port name to useTokenOrderException
- if ordering constraints on the token stream to each input
port are violatedvoid fire() throws IllegalStateException
IllegalStateException
- if the workflow has already been fired or has had data pushed
to it.void addResultListener(ResultListener listener)
If the listener is registered after the workflow has already produced results it will be immediately called with any results previously produced. Where the workflow has completed a stream of results it may only message the listener with the highest level one, so for a case where a list of results is emited one at a time the listener may either get the individual items followed by the list token or if registered after the list token has been emited only receive the list token.
listener
- void removeResultListener(ResultListener listener)
listener
- void addFacadeListener(FacadeListener listener)
As with the result listener a failure listener registered after the workflow has already failed will be immediately called with the failure data.
void removeFacadeListener(FacadeListener listener)
TypedTreeModel<MonitorNode> getStateModel()
Uses the standard TreeModel-like mechanisms for registering change events and can be plugged into a JTree for display purposes through the TreeModelAdapter class.
Dataflow getDataflow()
InvocationContext getContext()
WeakHashMap<String,T2Reference> getPushedDataMap()
String getWorkflowRunId()
boolean cancelWorkflowRun() throws IllegalStateException
IllegalStateException
boolean pauseWorkflowRun() throws IllegalStateException
IllegalStateException
boolean resumeWorkflowRun() throws IllegalStateException
IllegalStateException
WorkflowInstanceFacade.State getState()
WorkflowInstanceFacade.State
.String getIdentifier()
Copyright © 2015–2016 The Apache Software Foundation. All rights reserved.


Sojourn Lodging
Corporate Offices
Virginia Beach, VA
Park City, UT
Contact Information
George Harwin
757.406.8282
Hotel Developments
- Hilton Home 2 Nashville, TN
- Hilton Homewood Suites Virginia Beach, VA
- Fairfield Inn and Suites Washington, DC
- Sheraton Tarrytown Westchester County, NY
- Marriott Courtyard Brookline, MA
- SpringHill Suites by Marriott Westchester County, NY
- Hilton Homewood Suites Arlington, MA
- Fairfield Inn and Suites by Marriott Streetsboro, OH
- Town Place Suites Streetsboro, OH
- Marriott Courtyard Sommersett, NJ
- Hilton Home 2 Sandy, UT
- Comfort Inn and Suites Warner Robins, GA
- Comfort Inn and Suites Pensacola, FL
Apartment Developements
- 801 Polaris Columbus, OH
- Central Ninth Lofts in Downtown Salt Lake City Coming Soon
Restaurant Developments
- Cracker Barrel Sterling, VA, Washington Dulles Airport
Office Developments
- Carothers Office Park Nashville, TN
- Polaris Offices Columbus, Ohio
- Cleveland Park Business Center Virginia Beach, VA
- Eden Way Business Park Chesapeake, VA
- Patriot Park Business Center at New Town Williamsburg, VA


Change Checkin
Select Check in Day
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Goals for
Progress tracking
Toggle visuals
set months goals for
Description
Plan
Daily goal in minutes
Remove goal
Add Goal
Toggle visuals
Previous Months
Overwrite data
Paste data to clip board
Welcome


|
Herbrand Equivalence
LLVM implementation of Herbrand Equivalence algorithm mentioned at https://arxiv.org/abs/1708.04976
|
#include "Program.h"
Go to the source code of this file.
Macros | |
| #define | VAR_VAL(x) {false, x} |
| #define | NULL_VAL {false, -1} |
| #define | CONST_VAL(x) {true, x} |
Functions | |
| template<typename T > | |
| void | setIntersect (std::set< T > &xset, std::set< T > &yset) |
| Generic function to find the intersection of two std::set. More... | |
| std::vector< char > | Ops ({'+'}) |
| Vector of operators used in the program. More... | |
| void | assignIndex () |
Maps expressions of length atmost two to integers arbitrarily for indexing purpose by updating IndexExp map. More... | |
| bool | samePartition (std::vector< int > const &first, std::vector< int > const &second) |
| Checks whether two partitions are same. More... | |
| int | findSet (std::vector< int > const &partition, Program::ExpressionTy const &exp) |
| return set identifier for a given two length expression at a program point. More... | |
| void | findInitialPartition (std::vector< int > &partition) |
| Finds initial partition. More... | |
| void | getClass (std::vector< int > const &partition, int expIdx, std::set< int > &expClass) |
| Returns equivalence class of an expression at a given program point. More... | |
| void | printPartition (std::vector< int > const &partition) |
| Prints a partition in readable format. More... | |
| void | transferFunction (int cfgIndex) |
| Transfer function associated with Herbrand analysis. More... | |
| void | confluenceFunction (int cfgIndex) |
| Confluence function associated with Herbrand analysis. More... | |
| void | HerbrandEquivalence () |
| Main Herbrand analysis function. More... | |
| int | main (int argc, char **argv) |
Variables | |
| std::map< Program::ExpressionTy, int > | IndexExp |
std::map to map expressions to integer indexes. This indexing is arbitrarily fixed in the beginning and used throughout wherever indexing is required for the expressions. More... | |
| int | SetCnt = 0 |
| Counter to keep track of set identifiers. New set identifiers are created by incrementing this counter. More... | |
| std::vector< std::vector< int > > | Partitions |
| Vector to keep track of equivalence classes at each program point. More... | |
| std::map< std::tuple< char, int, int >, int > | Parent |
std::map to hold parent set identifiers. More... | |
| Program | program |
| Captures a program text. More... | |
This file defines implements algorithm for Herbrand Equivalence analysis.
Definition in file HerbrandEquivalence.cpp.
| #define CONST_VAL | ( | x | ) | {true, x} |
Definition at line 17 of file HerbrandEquivalence.cpp.
| #define NULL_VAL {false, -1} |
Definition at line 16 of file HerbrandEquivalence.cpp.
| #define VAR_VAL | ( | x | ) | {false, x} |
Definition at line 15 of file HerbrandEquivalence.cpp.
| void assignIndex | ( | ) |
Maps expressions of length atmost two to integers arbitrarily for indexing purpose by updating IndexExp
map.
Definition at line 132 of file HerbrandEquivalence.cpp.
| void confluenceFunction | ( | int | cfgIndex | ) |
Confluence function associated with Herbrand analysis.
| [in] | cfgIndex | Control flow graph node index on which confluence function is applied. |
Definition at line 399 of file HerbrandEquivalence.cpp.
| void findInitialPartition | ( | std::vector< int > & | partition | ) |
Finds initial partition.
Returns a vector representing initial partition in which all expressions are in different partition (has non-equivalent set identifiers). It also updates Parent
map for identifiers assigned to length two expressions.
| [out] | partition | Vector to store the initial partition. |
Definition at line 253 of file HerbrandEquivalence.cpp.
| int findSet | ( | std::vector< int > const & | partition, |
| Program::ExpressionTy const & | exp | ||
| ) |
return set identifier for a given two length expression at a program point.
With the help of Parent
map, first a check is made if a set identifier representing the expression at the current program point exists. If so it is returned else a new set identifier is created by updating SetCnt
which is returned. This information is also stored in the Parent
map for future use.
| [in] | partition | Vector representing the partition at the program point. |
| [in] | exp | Expression whose set identifier is required at the program point. |
Definition at line 218 of file HerbrandEquivalence.cpp.
| void getClass | ( | std::vector< int > const & | partition, |
| int | expIdx, | ||
| std::set< int > & | expClass | ||
| ) |
Returns equivalence class of an expression at a given program point.
The equivalence class is the set of indexes corresponding to the expressions (as given by IndexExp
) which have same set identifiers as the index representing the expression (passed as parameter).
| [in] | partition | Vector representing the partition at current program point. |
| [in] | expIdx | Index of expression whose equivalence class is required. |
| [out] | expClass | Set containing identifiers corresponding to the required equivalence class. |
Definition at line 289 of file HerbrandEquivalence.cpp.
| void HerbrandEquivalence | ( | ) |
Main Herbrand analysis function.
Definition at line 480 of file HerbrandEquivalence.cpp.
| int main | ( | int | argc, |
| char ** | argv | ||
| ) |
Definition at line 552 of file HerbrandEquivalence.cpp.
| std::vector<char> Ops | ( | {'+'} | ) |
Vector of operators used in the program.
| void printPartition | ( | std::vector< int > const & | partition | ) |
Prints a partition in readable format.
| [in] | partition | The partition vector to be printed. |
Definition at line 308 of file HerbrandEquivalence.cpp.
| bool samePartition | ( | std::vector< int > const & | first, |
| std::vector< int > const & | second | ||
| ) |
Checks whether two partitions are same.
Two partitions are same if in the vectors representing them values at two indexes are equal in the first vector iff they are equal in the second vector.
| [in] | first | First partition |
| [in] | second | Second partition |
Definition at line 173 of file HerbrandEquivalence.cpp.
| void setIntersect | ( | std::set< T > & | xset, |
| std::set< T > & | yset | ||
| ) |
Generic function to find the intersection of two std::set.
| T | Any valid type for which std::set can be created. |
| [in] | xset | Reference to first input set. |
| [in,out] | yset | Reference to second input set. |
Definition at line 30 of file HerbrandEquivalence.cpp.
| void transferFunction | ( | int | cfgIndex | ) |
Transfer function associated with Herbrand analysis.
| [in] | cfgIndex | Control flow graph node index on which transfer function is applied. The function modifies Partitions[cfgIndex] . |
Definition at line 347 of file HerbrandEquivalence.cpp.
| std::map<Program::ExpressionTy, int> IndexExp |
std::map
to map expressions to integer indexes. This indexing is arbitrarily fixed in the beginning and used throughout wherever indexing is required for the expressions.
Definition at line 58 of file HerbrandEquivalence.cpp.
| std::map<std::tuple<char, int, int>, int> Parent |
std::map
to hold parent set identifiers.
a1 =~ a2 and b1 =~ b2 at a program point iff (a1 + b1) =~ (a2 + b2). Parent map helps us to resolve this by storing set identifiers of compound expression (a1 + b1) as parent of set identifiers of its smaller sub-expressions (a1 and b1). Now, later when a new expression is formed by combining expressions (a2 and b2) with same set identifiers as those of the two sub-expressions (a1 and b1), we assign it (a2 + b2) the same identifier as the previous compound expression (a1 + b1). This map also helps to resolve other complex cases where some equivalence classes are lost in the middle of the program but appears later.
Definition at line 113 of file HerbrandEquivalence.cpp.
| std::vector<std::vector<int> > Partitions |
Vector to keep track of equivalence classes at each program point.
There is an entry for each program point in this vector which itself is a vector containing an entry for each expression of length atmost two. The entries for the expressions contains integer set identifiers. For a given program point two expressions are equivalent iff they have the same set identifier.
Definition at line 84 of file HerbrandEquivalence.cpp.
| Program program |
| int SetCnt = 0 |
Counter to keep track of set identifiers. New set identifiers are created by incrementing this counter.
Definition at line 67 of file HerbrandEquivalence.cpp.


public class MiniChain extends BlockChain implements java.lang.Comparable<MiniChain>
| Constructor and Description |
|---|
MiniChain() |
MiniChain(int difficulty,
java.lang.String id) |
MiniChain(java.lang.String id) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
addBlock(Block block)
Adds a new mined block to the chain
|
int |
compareTo(MiniChain other) |
void |
delete()
Flags the chain as deleted, so additions cannot be made anymore
|
boolean |
equals(java.lang.Object obj) |
java.lang.String |
getChainId()
Gets the chain id
|
boolean |
isAddable(Block block)
Checks if the block is addable to this minichain
|
boolean |
isDeleted()
Gets the deleted flag
|
boolean |
isEmpty()
Gets the empty flag
|
boolean |
isMerged()
Gets the merged flag
|
void |
merge()
Flags the chain as merged, so additions cannot be made anymore
|
void |
setChainId(java.lang.String chainId)
Sets the chain id (security threat but needed for rdfbeans)
|
void |
setDeleted(boolean isDeleted)
Sets the deleted flag (security threat but needed by rdfbeans)
|
void |
setEmpty(boolean isEmpty)
Sets the empty flag (security threat but needed for rdfbeans)
|
void |
setMerged(boolean isMerged)
Sets the merged flag (security threat but needed by rdfbeans)
|
accessBlock, chainSize, getBlockChain, getPreviousHash, isChainValid, setBlockChain
getDifficulty, getId, setDifficulty, setId
public MiniChain()
public MiniChain(java.lang.String id)
public MiniChain(int difficulty, java.lang.String id)
public java.lang.String getChainId()
public void setChainId(java.lang.String chainId)
chainId
- the chainId to setpublic boolean isEmpty()
public void setEmpty(boolean isEmpty)
isEmpty
- the isEmpty to setpublic boolean isAddable(Block block)
block
- the block to be addedpublic boolean addBlock(Block block)
BlockChain
addBlock
in class BlockChain
block
- the block to be addedpublic boolean equals(java.lang.Object obj)
equals
in class BlockChain
public int compareTo(MiniChain other)
compareTo
in interface java.lang.Comparable<MiniChain>
public void delete()
public void merge()
public boolean isDeleted()
public void setDeleted(boolean isDeleted)
isDeleted
- the status of the flag to be setpublic boolean isMerged()
public void setMerged(boolean isMerged)
isMerged
- the status of the flag to be set


Learn more about this application.
neo4index uses metadata imported from arXiv using OAI-PMH harvester. arXiv is an e-print service with open access.
arXiv does not provide citations metadata so they were pseudo-randomly simulated by a script.
Backend of this app was written in Flask (Python framework). All the data is stored in Neo4j 3.3.2 graph database.
Application evaluates scientific reasearch impact using six popular author-level metrics (h-index and its variants).
This application is a part of Master's Thesis - "Badanie dorobku naukowego na podstawie danych grafowych" (ang. "Evaluation of scientific research impact using graph data") by Jacek Miecznikowski.
Citations are very important for the world of science. Scientific achievements of researchers are often estimated based on research carried out on bibliographic lists. Scientists who are cited more often are considered the most valuable. The evolution of the Internet requires the development of information storage methods, because data is constantly increasing in quantity. Non-relational databases have been gaining popularity over the last years, because traditional database solutions, despite being a standard, do not necessarily cope well with storing and processing huge amounts of connected data. The graph model of data representation becomes noteworthy in such cases.
At this moment this application implements 6 author-level metrics: