btn btn-success
to quickly create a General
btn.
btn btn-success
to quickly create a Light
btn.
btn btn-outline-success
to quickly create a
General btn.
btn btn-rounded btn-success
to quickly
create a General btn.
btn btn-rounded btn-outline-success
to
quickly create a General btn.
btn btn-lg btn-success
to quickly create a
General btn.
btn btn-lg btn-rounded btn-success
to
create a btn.
btn d-block w-100 btn-success
to quickly create
a General btn.
btn btn-success
to quickly create a General
btn.
btn btn-outline-success
to quickly create a
General btn.
btn btn-outline-success
to quickly create a
General btn.
btn d-block w-100 btn-lg btn-success
to quickly
create a General btn.
btn btn-success
&
i class ="fa fa-heart"
to quickly create a General btn.
.btn
in
.btn-group
.btn
in
.btn-group


react-event-layer
A component that displays a list of layers based on the fired event
APPLICATION CONTENT


Welcome to Facebook
Service documentation!¶
Overview¶
Facebook
service is a RestFul API that manage user’s information related with the usage of facebook as identity provider.
This document describes the protocol used to send data to the API and the returning response to the client.
Communication is done over HTTP using its methods. The response is formatted as JSON,
and the content type of both is application/json
.
Currently is in the version 1.0
. The Facebook
API current version is 2.11, but this service uses the version 2.10
.
Facebook Requests¶
Facebook requests can assume multiple types according to the desired operation.
Only GET/POST/DELETE
HTTP request methods are allowed.
The request data is appended on the body for POST
requests and on arguments for DELETE
and GET
. The response body have JSON formatting such as post requests.
Every request must contain a valid OAuth 2.0
.
Every bad request is returned with a message indicating the wrong/missing fields and a explanatory message for each one.
Facebook Authentication¶
Facebook Manager
service is authenticated over an external identify that must be trusted. The service need to be registered on the authentication central server and need to have the credentials. To be authenticated you need 2 steps/requests:
- POST
- Request: Send the username in order to mention the authentication intention.
- Response: Receive a nonce.
- GET
- Request: Send the nonce digest concatenated with the password digest.
- Response: Receive a JSON Web Token (JWT).
The digest function is SHA256
.
For the further requests this JSON Web Token
will be used to confirm the service identity.
Facebook Authorization¶
Facebook
service provides authorization using OAuth 2.0
. The authorization is completed in 3 steps: the first concerns the registration of a redirect url, to receive the grant, and the desired scopes. The second and the third are related to obtaining the grant and the OAuth 2.0 token respectively. The first and second step must contain an JWT-Bearer
to provide authentication and check it over a centralized well trusted Authentication Service and only provide access to the service if the client is authenticated.
The service export 2 interfaces to handle all the communications:
- Authorization Managment
An interface that allows to create multiple apps on the service. To accomplish this the client must be authenticated and indicate one url to where the grant will be redirected and the desired scopes, to get different views from the service. The service will respond with a client id and a client secret:
http://<IP_ADDRESS>:5003/facebook/v1.0/authorization_managment/
Request Body
redirect_uri
- Theurl
where the grant will be redirected. Type str.
scopes
- Thescope
is the desired permissions, considering that exists permissions that a client cant get. Type str.
jwt-bearer
- Thejwt-bearer
is the token that contain information about the client and permit check if him is authenticated. Type str.
- Response Body
Return app information:
{'client_id': '1234','client_secret': '4321'}Internally the service gets the client identification when confirm his authenticity by contacting the authentication server. A client can have multiple apps and multiple views over the service.
- Authorize
An interface that provides 2 methods: one GET and one POST. The GET objective is provide a way to get the grant token and then exchange the grant with a OAuth 2.0 token by calling the POST. Those methods were implemented by the library that the service use: flask oauthlib available at github.
GET Request¶
The GET
request allows to get all the user friends which have an app in
https://developers.facebook.com/. To perform this operation the service verify if the access token that
it has in its database isn’t expired and if the user has given permissions to consult his friends:
http://<IP_ADDRESS>:5003/facebook/v1.0/
- Request Arguments
The following fields are mandatory.
id
- Thefacebook
id of an user. Type str.access_token
- Theaccess token
that contains a set of permissions and that was provided by this service. Type str.
- Response Body
Returns a list of friends:
{'ack': 'true','msg': [{'name': facebook name,'id': facebook id}]}
POST Request¶
The POST
request allows to execute 2 operations over the database: the first one is related to the insert of a new user according to a set of attributes described below and the second one is related to the update of an existing user on the database.
Internally the decision of the operation is made in a simple way, if the user exists in the database of the service, an
update is made, otherwise the insertion is made. The service also check if the token is valid or not.
In the case of the insertion, some calls are made to facebook’s api in order to check the user permissions and get all
the needed attributes, considering that are 3 mandatory arguments.
- Facebook User ID
- Access Token
- Expires In
There is another attribute but is related with the control of the time, which is the datetime of the update and create of an user:
http://<IP_ADDRESS>:5003/facebook/v1.0/
- Request Body
The following fields are mandatory and shared between the two operations.
id
- Thefacebook
id of an user. Type str.access_token
- Theaccess_token
provided by the facebook that follows the permissions given by the user. Type str.expires_in
- The time in which the token expires. Type int.access_token_
- Theaccess token
that contains a set of permissions and that was provided by this service. Type str.
- Response Body
Returns an ack:
{'ack': 'true'}
DELETE Request¶
The DELETE
request allows to delete an user from the database:
http://<IP_ADDRESS>:5003/facebook/v1.0/
- Request Arguments
The following fields are mandatory.
id
- Thefacebook
id of an user. Type str.access_token
- Theaccess token
that contains a set of permissions and that was provided by this service. Type str.
- Response Body
Returns a ack if an user is successfully deleted.:
{'ack': 'true'}
Error Handling¶
On all requests if an error occurs it is returned a json with the following format:
{"error": error type,
"msg" : message,
"code" : HTTP code}
The error type
refers to the entity/method that triggered the error and the message
is a hint to understand
the error.
GraphAPI
- The token has expired.Permission
- Permission denied to access email or to get user friends.Create
- Internal database error performing an user insert.Update
- Internal database error performing an user update.Delete
- Internal database error performing an user delete.
Most common errors:
+---------------+------------------------+
| HTTP Code | Description |
+---------------+------------------------+
| 400 | Bad Request |
+---------------+------------------------+
| 403 | Forbidden |
+---------------+------------------------+
| 405 | Method Not Allowed |
+---------------+------------------------+
| 500 | Internal Server Error |
+---------------+------------------------+
The following message is returned when the OAuth 2.0
is not provided: {“message”: “The browser (or proxy) sent a request that this server could not understand.”}
The following message is returned when the OAuth 2.0
is not valid, meaning that you aren’t authorized: {‘message’: “You don’t have the permission to access the requested resource. It is either read-protected or not readable by the server.”}
Request Examples¶
Here we provide examples to each method, using Requests and cURL.


from flask import Flask
app = Flask(__name__)
@app.route("/")
def homepage():
return "Hello World!"
@app.route('/create')
def create():
return "We'll fill this in later"
from flask import Flask
app = Flask(__name__)
@app.route("/")
def homepage():
return "Hello World!"
@app.route('/create')
def create():
return "We'll fill this in later"
Hardcoding every possible URL would get tedious.
You can tell Flask to respond to a certain URL pattern. The variable parts of the URL get passed as arguments to your function.
@app.route('/posts/<post_id>')
def show_post(post_id):
return "You asked for post %s" % (post_id)
if __name__ == "__main__":
app.debug = True
app.run()


Home
search
Enter your query...
more_vert
About
Contact
Legal information
arrow_drop_down
Feeds
add
Add another feed...


FAQ
What is Kotlin?
Kotlin is an OSS statically typed programming language that targets the JVM, Android, JavaScript and Native. It’s developed by JetBrains. The project started in 2010 and was open source from very early on. The first official 1.0 release was in February 2016.
What is the current version of Kotlin?
The currently released version is 1.2.60, published on August 01, 2018.
Is Kotlin free?
Yes. Kotlin is free, has been free and will remain free. It is developed under the Apache 2.0 license and the source code is available on GitHub.
Is Kotlin an object-oriented language or a functional one?
Kotlin has both object-oriented and functional constructs. You can use it in both OO and FP styles, or mix elements of the two. With first-class support for features such as higher-order functions, function types and lambdas, Kotlin is a great choice if you’re doing or exploring functional programming.
What advantages does Kotlin give me over the Java programming language?
Kotlin is more concise. Rough estimates indicate approximately a 40% cut in the number of lines of code. It’s also more type-safe, e.g. support for non-nullable types makes applications less prone to NPE’s. Other features including smart casting, higher-order functions, extension functions and lambdas with receivers provide the ability to write expressive code as well as facilitating creation of DSL.
Is Kotlin compatible with the Java programming language?
Yes. Kotlin is 100% interoperable with the Java programming language and major emphasis has been placed on making sure that your existing codebase can interact properly with Kotlin. You can easily call Kotlin code from Java and Java code from Kotlin. This makes adoption much easier and lower-risk. There’s also an automated Java-to-Kotlin converter built into the IDE that simplifies migration of existing code.
What can I use Kotlin for?
Kotlin can be used for any kind of development, be it server-side, client-side web and Android. With Kotlin/Native currently in the works, support for other platforms such as embedded systems, macOS and iOS is coming. People are using Kotlin for mobile and server-side applications, client-side with JavaScript or JavaFX, and data science, just to name a few possibilities.
Can I use Kotlin for Android development?
Yes. Kotlin is supported as a first-class language on Android. There are hundreds of applications already using Kotlin for Android, such as Basecamp, Pinterest and more. For more information check out the resource on Android development.
Can I use Kotlin for server-side development?
Yes. Kotlin is 100% compatible with the JVM and as such you can use any existing frameworks such as Spring Boot, vert.x or JSF. In addition there are specific frameworks written in Kotlin such as Ktor. For more information check out the resource on server-side development.
Can I use Kotlin for web development?
Yes. In addition to using for backend web, you can also use Kotlin/JS for client-side web. Kotlin can use definitions from DefinitelyTyped to get static typing for common JavaScript libraries, and it is compatible with existing module systems such as AMD and CommonJS. For more information check out the resource on client-side development.
Can I use Kotlin for desktop development?
Yes. You can use any Java UI framework such as JavaFx, Swing or other. In addition there are Kotlin specific frameworks such as TornadoFX.
Can I use Kotlin for native development?
Kotlin/Native is currently in the works. It compiles Kotlin to native code that can run without a VM. There is a Technology Preview released but it is not production-ready yet, and doesn’t yet target all the platforms that we plan to support for 1.0. For more information check out the blog post announcing Kotlin/Native.
What IDEs support Kotlin?
Kotlin is supported by all major Java IDEs including IntelliJ IDEA, Android Studio, Eclipse and NetBeans. In addition, a command line compiler is available and provides straightforward support for compiling and running applications.
What build tools support Kotlin?
On the JVM side, the main build tools include Gradle, Maven, Ant, and Kobalt. There are also some build tools available that target client-side JavaScript.
What does Kotlin compile down to?
When targeting the JVM, Kotlin produces Java compatible bytecode. When targeting JavaScript, Kotlin transpiles to ES5.1 and generates code which is compatible with module systems including AMD and CommonJS. When targeting native, Kotlin will produce platform-specific code (via LLVM).
Does Kotlin only target Java 6?
No. Kotlin lets you choose between generating Java 6 and Java 8 compatible bytecode. More optimal byte code may be generated for higher versions of the platform.
Is Kotlin hard?
Kotlin is inspired by existing languages such as Java, C#, JavaScript, Scala and Groovy. We've tried to ensure that Kotlin is easy to learn, so that people can easily jump on board, reading and writing Kotlin in a matter of days. Learning idiomatic Kotlin and using some more of its advanced features can take a little longer, but overall it is not a complicated language.
What companies are using Kotlin?
There are too many companies using Kotlin to list, but some more visible companies that have publicly declared usage of Kotlin, be this via blog posts, GitHub repositories or talks include Square, Pinterest or Basecamp.
Who develops Kotlin?
Kotlin is primarily developed by a team of engineers at JetBrains (current team size is 40+). The lead language designer is Andrey Breslav. In addition to the core team, there are also over 100 external contributors on GitHub.
Where can I learn more about Kotlin?
The best place to start is this website. From there you can download the compiler, try it online as well as get access to resources, reference documentation and tutorials.
Are there any books on Kotlin?
There are already a number of books available for Kotlin, including Kotlin in Action which is by Kotlin team members Dmitry Jemerov and Svetlana Isakova, Kotlin for Android Developers targeted at Android developers.
Are there any online courses available for Kotlin?
There are a few courses available for Kotlin, including a Pluralsight Kotlin Course by Kevin Jones, an O’Reilly Course by Hadi Hariri and an Udemy Kotlin Course by Peter Sommerhoff.
There are also many recordings of Kotlin talks available on YouTube and Vimeo.
Does Kotlin have a community?
Yes. Kotlin has a very vibrant community. Kotlin developers hang out on the Kotlin forums, StackOverflow and more actively on the Kotlin Slack (with close to 7000 members as of May 2017).
Are there Kotlin events?
Yes. There are many User Groups and Meetups now focused exclusively around Kotlin. You can find a list on the web site. In addition there are community organised Kotlin Nights events around the world.
Is there a Kotlin conference?
Yes. The first official KotlinConf, taking place in San Francisco 2-3 November 2017. Kotlin is also being covered in different conferences worldwide. You can find a list of upcoming talks on the web site.
Is Kotlin on Social Media?
Yes. The most active Kotlin account is on Twitter. There is also a Google+ group.
Any other online Kotlin resources?
The web site has a bunch of online resources, including Kotlin Digests by community members, a newsletter, a podcast and more.
Where can I get an HD Kotlin logo?
Logos can be downloaded here. Please follow simple rules in the guidelines.pdf
inside the archive.


The geometric methods are the easiest non-trivial partitioners to incorporate into applications, as they require only four callbacks: two returning object information and two returning coordinate information.
We group refinement-tree partitioning for adaptive mesh refinement applications into the geometric partitioners because it uses geometric information to determine an initial ordering for coarse elements of adaptively refined meshes. The refinement-tree partitioner also requires tree-based callbacks with connectivity information between coarse and fine elements in refined meshes.
Recursive Coordinate Bisection (RCB)
Recursive Inertial Bisection (RIB)
Hilbert Space-Filling Curve Partitioning (HSFC)
Refinement Tree Based Partitioning (Reftree)


Sketch
Traditional
Digital
Animation
Photography
Design / Interface
Modeling / Sculpture
Crafts / Jewelry
Desktop / Wallpaper
Other
Story
Poetry / Lyrics
Script / Screenplay
Other
Original Music
Cover Version
Remix / Mashup
Speech / Reading
Embedded Video
Other


--- title: fmi keywords: fastai sidebar: home_sidebar summary: "Adding additional functionality to fastai's medical imaging module" description: "Adding additional functionality to fastai's medical imaging module" nb_path: "nbs\index.ipynb" ---
pip install fmi
{% include note.html content='View Mask & Save tutorial on Kaggle (click on Kaggle icon)' %}


Serious crash - Linwood Road, Karaka - Counties Manukau
by New Zealand PolicePolice are attending a serious crash on Linwood Road, Karaka.
The crash was reported shortly before 7am and occurred near Te Hihi School.
The crash involved a single vehicle crashing into a power pole.
One person has critical injuries as a result of the crash.
Linwood Road is closed at Batty Road and there are further closures at McKenzie Road and Kingseat Road and Glenbrook Road and Kingseat Road.
Motorists are asked to avoid the area.


Lorem Ipsum is simply dummy text of the printing and typesetting
industry. Lorem Ipsum has been the industry's standard dummy text ever since the
1500s, when an unknown printer took a galley of type and scrambled it to make a
type specimen book.
Lorem Ipsum is simply dummy text of the printing and typesetting
industry. Lorem Ipsum has been the industry's standard dummy text ever since the
1500s, when an unknown printer took a galley of type and scrambled it to make a
type specimen book.
Lorem Ipsum is simply dummy text of the printing and typesetting
industry. Lorem Ipsum has been the industry's standard dummy text ever since the
1500s, when an unknown printer took a galley of type and scrambled it to make a
type specimen book.
Lorem Ipsum is simply dummy text of the printing and typesetting
industry. Lorem Ipsum has been the industry's standard dummy text ever since the
1500s, when an unknown printer took a galley of type and scrambled it to make a
type specimen book.
Make a Donation
Donation Amount
Donation Type
Payment Method
Please note that contributions are not tax-deductible.


Did you know that lions can retract there claws when they need them and when they dont. Did you know that a grouph of lions is called a pride. Did you know that depending on how much resources are thier a pride can be up to 30 lions. Did you know that lions are the only cats that live groups.
Did you know that the female hunters do the most hunting. Did you know lions hunt better in the night than the day because the have night vision. Did you know that a lion roar can be herd by up to 8 kilometres. Did you know that lions scent their territory.
Did you know that when lions are scenting their territory they use their urine. Lions are symbols of strength and courage. They are also symbols of royalty hence the name"King Of The Jungle". Did you know that if lions find cubs lost they eat them.
Did you know that a baby lion is called a cub. Lions are the laziest of the big cat family. Did you know that lions can run up to 80 kilometres hours. Their scientific name is Panthera leo. Lions are the only cats that live in groups. A group, or pride, can be up to 30 lions, depending on how much food and water is available. Female lions are the main hunters. A lion's roar can be heard up to eight kilometres away. Lions scent mark their territory Using their wee, to create a border. Nearly all wild lions live in Africa, but one small population exists elsewhere… ... They can weigh 30 stone. They start off spotty. Males' magnificent manes tell a story. Cubs are reared together. Lions can get their water from plant. Lions are big eaters. They hunt during storms. In the wild lions usually live no more than 8 to 10 years. Because of attacks by humans or other lions. Or the effects of goring or kicks from intended prey. In captivity, they may live over 25 years.


Symbol Index for "Abandoned Intention"
Symbol Index for diagram
"Abandoned Intention"
Abandoned Intention (Class)
Agent Accepted Intention (Class)
Agent Rejected Intention (Class)
Agent Selected Intention (Class)
Fulfilled Intention (Class)
Intention State (Class)
Intention Under Consideration (Class)
Intention/State (Generalization Node)
Not Required Intention (Class)
reason for (Association)
Reason For Abandoning (Class)
Required Intention (Class)


{% include head.html %}
Austin is your city. Track how your city government is performing on this open hub.
Where is Austin going in the next 3 to 5 years? Follow the City's Strategic Plan.
Easily access open data to research specific topics, develop apps, and more.
Browse City financial and purchasing data with this award-winning tool.


Data Structures | |
| struct | CSL_CPTS_CONTROL |
| Holds the CPTS control register info. More... | |
Enumerations | |
| enum | CSL_CPTS_TS_OUTPUT_BIT |
| Defines CPTS timestamp output bits. | |
Functions | |
| static void | CSL_CPTS_getCptsVersionInfo (CSL_CPTS_VERSION *pVersionInfo) |
| static Uint32 | CSL_CPTS_isCptsEnabled (void) |
| static void | CSL_CPTS_enableCpts (void) |
| static void | CSL_CPTS_disableCpts (void) |
| static void | CSL_CPTS_getRFTCLKSelectReg (Uint32 *pRefClockSelect) |
| static void | CSL_CPTS_setRFTCLKSelectReg (Uint32 refClockSetVal) |
| static void | CSL_CPTS_getTSEventPushReg (Uint32 *pTSPushVal) |
| static void | CSL_CPTS_setTSEventPushReg (Uint32 tsPushVal) |
| static void | CSL_CPTS_getTSLoadValReg (Uint32 *pTSLoadVal) |
| static void | CSL_CPTS_setTSLoadValReg (Uint32 tsLoadVal) |
| static Uint32 | CSL_CPTS_isRawInterruptStatusBitSet (void) |
| static Uint32 | CSL_CPTS_isMaskedInterruptStatusBitSet (void) |
| static Uint32 | CSL_CPTS_isInterruptEnabled (void) |
| static void | CSL_CPTS_enableInterrupt (void) |
| static void | CSL_CPTS_disableInterrupt (void) |
| static void | CSL_CPTS_popEvent (void) |
| static void | CSL_CPTS_getEventInfo (CSL_CPTS_EVENTINFO *pEventInfo) |
| static void | CSL_CPTS_getCntlReg (CSL_CPTS_CONTROL *pCntlCfg) |
| static void | CSL_CPTS_setCntlReg (CSL_CPTS_CONTROL *pCntlCfg) |
| static void | CSL_CPTS_setTSLoadValReg (Uint32 tsLoadValLo, Uint32 tsLoadValHi) |
| static void | CSL_CPTS_TSEventPush (void) |
| static void | CSL_CPTS_setTSVal (Uint32 tsValLo, Uint32 tsValHi) |
| static void | CSL_CPTS_setTSCompVal (Uint32 tsCompValLo, Uint32 tsCompValHi, Uint32 tsCompLen) |
| static void | CSL_CPTS_setTSCompNudge (Int32 tsCompNudge) |
| void | CSL_CPTS_getCptsVersionInfo (const CSL_cptsRegs *pCptsRegs, CSL_CPTS_VERSION *pVersionInfo) |
| uint32_t | CSL_CPTS_isCptsEnabled (const CSL_cptsRegs *pCptsRegs) |
| void | CSL_CPTS_enableCpts (CSL_cptsRegs *pCptsRegs) |
| void | CSL_CPTS_disableCpts (CSL_cptsRegs *pCptsRegs) |
| void | CSL_CPTS_getCntlReg (const CSL_cptsRegs *pCptsRegs, CSL_CPTS_CONTROL *pCntlCfg) |
| void | CSL_CPTS_setCntlReg (CSL_cptsRegs *pCptsRegs, const CSL_CPTS_CONTROL *pCntlCfg) |
| void | CSL_CPTS_getRFTCLKSelectReg (const CSL_cptsRegs *pCptsRegs, uint32_t *pRefClockSelect) |
| void | CSL_CPTS_setRFTCLKSelectReg (CSL_cptsRegs *pCptsRegs, uint32_t refClockSetVal) |
| void | CSL_CPTS_TSEventPush (CSL_cptsRegs *pCptsRegs) |
| void | CSL_CPTS_getTSLoadValReg (const CSL_cptsRegs *pCptsRegs, uint32_t *pTSLoadVal) |
| void | CSL_CPTS_setTSLoadValReg (CSL_cptsRegs *pCptsRegs, uint32_t tsLoadValLo, uint32_t tsLoadValHi) |
| void | CSL_CPTS_setTSVal (CSL_cptsRegs *pCptsRegs, uint32_t tsValLo, uint32_t tsValHi) |
| void | CSL_CPTS_setTSCompVal (CSL_cptsRegs *pCptsRegs, uint32_t tsCompValLo, uint32_t tsCompValHi, uint32_t tsCompLen) |
| void | CSL_CPTS_setTSCompNudge (CSL_cptsRegs *pCptsRegs, int32_t tsCompNudge) |
| uint32_t | CSL_CPTS_getTSAddVal (CSL_cptsRegs *pCptsRegs) |
| void | CSL_CPTS_setTSAddVal (CSL_cptsRegs *pCptsRegs, uint32_t tsAddVal) |
| void | CSL_CPTS_setTSNudge (CSL_cptsRegs *pCptsRegs, int32_t tsNudge) |
| void | CSL_CPTS_getTSPpm (const CSL_cptsRegs *pCptsRegs, uint32_t tsPpmVal[2]) |
| void | CSL_CPTS_setTSPpm (CSL_cptsRegs *pCptsRegs, uint32_t tsPpmValLo, uint32_t tsPpmValHi, CSL_CPTS_TS_PPM_DIR tsPpmDir) |
| uint32_t | CSL_CPTS_isRawInterruptStatusBitSet (const CSL_cptsRegs *pCptsRegs) |
| uint32_t | CSL_CPTS_isMaskedInterruptStatusBitSet (const CSL_cptsRegs *pCptsRegs) |
| uint32_t | CSL_CPTS_isInterruptEnabled (const CSL_cptsRegs *pCptsRegs) |
| void | CSL_CPTS_enableInterrupt (CSL_cptsRegs *pCptsRegs) |
| void | CSL_CPTS_disableInterrupt (CSL_cptsRegs *pCptsRegs) |
| void | CSL_CPTS_popEvent (CSL_cptsRegs *pCptsRegs) |
| void | CSL_CPTS_getEventInfo (const CSL_cptsRegs *pCptsRegs, CSL_CPTS_EVENTINFO *pEventInfo) |
| int32_t | CSL_CPTS_getGENFnLength (CSL_cptsRegs *pCptsRegs, uint32_t genfIndex, uint32_t *pGenfLength) |
| int32_t | CSL_CPTS_setupGENFn (CSL_cptsRegs *pCptsRegs, uint32_t genfIndex, uint32_t length, uint64_t compare, uint32_t polarityInv, uint64_t ppmAdjust, CSL_CPTS_TS_PPM_DIR ppmDir) |
| int32_t | CSL_CPTS_setGENFnNudge (CSL_cptsRegs *pCptsRegs, uint32_t genfIndex, int32_t tsNudge) |
| int32_t | CSL_CPTS_getESTFnLength (CSL_cptsRegs *pCptsRegs, uint32_t estfIndex, uint32_t *pEstfLength) |
| int32_t | CSL_CPTS_setupESTFn (CSL_cptsRegs *pCptsRegs, uint32_t estfIndex, uint32_t length, uint64_t compare, uint32_t polarityInv, uint64_t ppmAdjust, CSL_CPTS_TS_PPM_DIR ppmDir) |
| int32_t | CSL_CPTS_setESTFnNudge (CSL_cptsRegs *pCptsRegs, uint32_t estfIndex, int32_t tsNudge) |
|
inlinestatic |
============================================================================
CSL_CPTS_disableCpts
Description
This function configures the CPTS control register to disable time sync.
Arguments
None
Return Value
None
Pre Condition
None
Post Condition
None
Writes
CPTS_CONTROL_REG_CPTS_EN=0
Example
CSL_CPTS_disableCpts ();
| void CSL_CPTS_disableCpts | ( | CSL_cptsRegs * | pCptsRegs | ) |
============================================================================
CSL_CPTS_disableCpts
Description
This function configures the CPTS control register to disable time sync.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure *
Return Value
None
Pre Condition
None
Post Condition
None
Writes
CPTS_CONTROL_REG_CPTS_EN=0
Example
CSL_CPTS_disableCpts (pCptsRegs);
|
inlinestatic |
============================================================================
CSL_CPTS_disableInterrupt
Description
This function disables the interrupts in Time sync submodule.
Arguments
None
Return Value
None
Pre Condition
None
Post Condition
None
Writes
CPTS_INT_ENABLE_REG_TS_PEND_EN=0
Example
CSL_CPTS_disableInterrupt ();
| void CSL_CPTS_disableInterrupt | ( | CSL_cptsRegs * | pCptsRegs | ) |
============================================================================
CSL_CPTS_disableInterrupt
Description
This function disables the interrupts in Time sync submodule.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure *
Return Value
None
Pre Condition
None
Post Condition
None
Writes
CPTS_INT_ENABLE_REG_TS_PEND_EN=0
Example
CSL_CPTS_disableInterrupt (pCptsRegs);
|
inlinestatic |
============================================================================
CSL_CPTS_enableCpts
Description
This function configures the CPTS control register to enable time sync.
Arguments
None
Return Value
None
Pre Condition
None
Post Condition
None
Writes
CPTS_CONTROL_REG_CPTS_EN=1
Example
CSL_CPTS_enableCpts ();
| void CSL_CPTS_enableCpts | ( | CSL_cptsRegs * | pCptsRegs | ) |
============================================================================
CSL_CPTS_enableCpts
Description
This function configures the CPTS control register to enable time sync.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure *
Return Value
None
Pre Condition
None
Post Condition
None
Writes
CPTS_CONTROL_REG_CPTS_EN=1
Example
CSL_CPTS_enableCpts (pCptsRegs);
|
inlinestatic |
============================================================================
CSL_CPTS_enableInterrupt
Description
This function enables the interrupts in Time sync submodule.
Arguments
None
Return Value
None
Pre Condition
None
Post Condition
None
Writes
CPTS_INT_ENABLE_REG_TS_PEND_EN=1
Example
CSL_CPTS_enableInterrupt ();
| void CSL_CPTS_enableInterrupt | ( | CSL_cptsRegs * | pCptsRegs | ) |
============================================================================
CSL_CPTS_enableInterrupt
Description
This function enables the interrupts in Time sync submodule.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure *
Return Value
None
Pre Condition
None
Post Condition
None
Writes
CPTS_INT_ENABLE_REG_TS_PEND_EN=1
Example
CSL_CPTS_enableInterrupt (pCptsRegs);
|
inlinestatic |
============================================================================
CSL_CPTS_getCntllReg
Description
This function retreives the contents of CPTS control register
Arguments
pCntlCfg CSL_CPTS_CONTROL that needs to be populated with contents of CPTS control register. *
Return Value
None
Pre Condition
None
Post Condition
None
Reads
CPTS_CONTROL_REG_CPTS_EN CPTS_CONTROL_REG_INT_TEST CPTS_CONTROL_REG_TS_COMP_POLARITY CPTS_CONTROL_REG_TSTAMP_EN CPTS_CONTROL_REG_SEQUENCE_EN CPTS_CONTROL_REG_MODE CPTS_CONTROL_REG_HW1_TS_PUSH_EN CPTS_CONTROL_REG_HW2_TS_PUSH_EN CPTS_CONTROL_REG_HW3_TS_PUSH_EN CPTS_CONTROL_REG_HW4_TS_PUSH_EN CPTS_CONTROL_REG_HW5_TS_PUSH_EN CPTS_CONTROL_REG_HW6_TS_PUSH_EN CPTS_CONTROL_REG_HW7_TS_PUSH_EN CPTS_CONTROL_REG_HW8_TS_PUSH_EN CPTS_CONTROL_REG_TS_SYNC_SEL
Example
CSL_CPTS_CONTROL cntlCfg; CSL_CPTS_getCntlReg (&cntlCfg);
| void CSL_CPTS_getCntlReg | ( | const CSL_cptsRegs * | pCptsRegs, |
| CSL_CPTS_CONTROL * | pCntlCfg | ||
| ) |
============================================================================
CSL_CPTS_getCntllReg
Description
This function retreives the contents of CPTS control register
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure pCntlCfg CSL_CPTS_CONTROL that needs to be populated with contents of CPTS control register. *
Return Value
None
Pre Condition
None
Post Condition
None
Reads
CPTS_CONTROL_REG_CPTS_EN CPTS_CONTROL_REG_INT_TEST CPTS_CONTROL_REG_TS_COMP_POLARITY CPTS_CONTROL_REG_TSTAMP_EN CPTS_CONTROL_REG_SEQUENCE_EN CPTS_CONTROL_REG_MODE CPTS_CONTROL_REG_TS_COMP_TOG CPTS_CONTROL_REG_HW1_TS_PUSH_EN CPTS_CONTROL_REG_HW2_TS_PUSH_EN CPTS_CONTROL_REG_HW3_TS_PUSH_EN CPTS_CONTROL_REG_HW4_TS_PUSH_EN CPTS_CONTROL_REG_HW5_TS_PUSH_EN CPTS_CONTROL_REG_HW6_TS_PUSH_EN CPTS_CONTROL_REG_HW7_TS_PUSH_EN CPTS_CONTROL_REG_HW8_TS_PUSH_EN CPTS_CONTROL_REG_TS_SYNC_SEL CPTS_CONTROL_REG_TS_RX_NO_EVENT CPTS_CONTROL_REG_TS_GENF_CLR_EN
Example
CSL_CPTS_CONTROL cntlCfg; CSL_CPTS_getCntlReg (pCptsRegs, &cntlCfg);
|
inlinestatic |
============================================================================
CSL_CPTS_getCptsVersionInfo
Description
This function retrieves the CPTS module identification and version information.
Arguments
pVersionInfo CSL_CPTS_VERSION structure that needs to be populated with the version info read from the hardware. *
Return Value
None
Pre Condition
None
Post Condition
None
Reads
CPTS_IDVER_REG_MINOR_VER, CPTS_IDVER_REG_MAJOR_VER, CPTS_IDVER_REG_RTL_VER, CPTS_IDVER_REG_TX_IDENT
Example
CSL_CPTS_VERSION versionInfo; CSL_CPTS_getCptsVersionInfo (&versionInfo);
| void CSL_CPTS_getCptsVersionInfo | ( | const CSL_cptsRegs * | pCptsRegs, |
| CSL_CPTS_VERSION * | pVersionInfo | ||
| ) |
============================================================================
CSL_CPTS_getCptsVersionInfo
Description
This function retrieves the CPTS module identification and version information.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure pVersionInfo CSL_CPTS_VERSION structure that needs to be populated with the version info read from the hardware. *
Return Value
None
Pre Condition
None
Post Condition
None
Reads
CPTS_IDVER_REG_MINOR_VER, CPTS_IDVER_REG_MAJOR_VER, CPTS_IDVER_REG_RTL_VER, CPTS_IDVER_REG_TX_IDENT
Example
CSL_CPTS_VERSION versionInfo; CSL_CPTS_getCptsVersionInfo (pCptsRegs, &versionInfo);
| int32_t CSL_CPTS_getESTFnLength | ( | CSL_cptsRegs * | pCptsRegs, |
| uint32_t | estfIndex, | ||
| uint32_t * | pEstfLength | ||
| ) |
============================================================================
CSL_CPTS_getESTFnLength
Description
This function retrieves the contents of the ESTFn length register.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure estfIndex Index of the ESTFn to configure pEstfLength ESTFn length value obtained from hardware *
Return Value
0 = success
-1 = estfIndex is invalid (outside of the valid range)
Pre Condition
None
Post Condition
None
Reads
CPTS_TS_ESTF_LENGTH_REG_LENGTH
Example
uint32_t estfLength, estfIndex; estfIndex = 0; CSL_CPTS_getESTFnLength (pCptsRegs, estfIndex, &estfLength);
|
inlinestatic |
============================================================================
CSL_CPTS_getEventInfo
Description
This function retrieves the contents of the Event Low, Event Middle and Event High registers.
Arguments
pEventInfo CSL_CPTS_EVENTINFO structure that needs to be filled with time sync event info read from hardware. *
Return Value
None
Pre Condition
None
Post Condition
None
Reads
CPTS_EVENT_LOW_REG_TIME_STAMP, CPTS_EVENT_MIDDLE_REG_SEQUENCE_ID, CPTS_EVENT_MIDDLE_REG_MESSAGE_TYPE, CPTS_EVENT_MIDDLE_REG_EVENT_TYPE, CPTS_EVENT_MIDDLE_REG_PORT_NUMBER, CPTS_EVENT_HIGH_REG_DOMAIN
Example
CSL_CPTS_EVENTINFO eventInfo; CSL_CPTS_getEventInfo (&eventInfo);
| void CSL_CPTS_getEventInfo | ( | const CSL_cptsRegs * | pCptsRegs, |
| CSL_CPTS_EVENTINFO * | pEventInfo | ||
| ) |
============================================================================
CSL_CPTS_getEventInfo
Description
This function retrieves the contents of the Event Low, Event Middle and Event High registers.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure pEventInfo CSL_CPTS_EVENTINFO structure that needs to be filled with time sync event info read from hardware. *
Return Value
None
Pre Condition
None
Post Condition
None
Reads
CPTS_EVENT_LOW_REG_TIME_STAMP, CPTS_EVENT_MIDDLE_REG_SEQUENCE_ID, CPTS_EVENT_MIDDLE_REG_MESSAGE_TYPE, CPTS_EVENT_MIDDLE_REG_EVENT_TYPE, CPTS_EVENT_MIDDLE_REG_PORT_NUMBER, CPTS_EVENT_HIGH_REG_DOMAIN
Example
CSL_CPTS_EVENTINFO eventInfo; CSL_CPTS_getEventInfo (pCptsRegs, &eventInfo);
| int32_t CSL_CPTS_getGENFnLength | ( | CSL_cptsRegs * | pCptsRegs, |
| uint32_t | genfIndex, | ||
| uint32_t * | pGenfLength | ||
| ) |
============================================================================
CSL_CPTS_getGENFnLength
Description
This function retrieves the contents of the GENFn length register.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure genfIndex Index of the GENFn to configure pGenfLength GENFn length value obtained from hardware *
Return Value
0 = success
-1 = genfIndex is invalid (outside of the valid range)
Pre Condition
None
Post Condition
None
Reads
CPTS_TS_GENF_LENGTH_REG_LENGTH
Example
uint32_t genfLength, genfIndex; genfIndex = 0; CSL_CPTS_getGENFnLength (pCptsRegs, genfIndex, &genfLength);
|
inlinestatic |
============================================================================
CSL_CPTS_getRFTCLKSelectReg
Description
This function retrieves the contents of the reference clock select register.
Arguments
pRefClockSelect Reference clock select value read from hardware. *
Return Value
None
Pre Condition
None
Post Condition
None
Reads
CPTS_RFTCLK_SEL_REG_RFTCLK_SEL
Example
Uint32 refClockSelect; CSL_CPTS_getRFTCLKSelectReg (&refClockSelect);
| void CSL_CPTS_getRFTCLKSelectReg | ( | const CSL_cptsRegs * | pCptsRegs, |
| uint32_t * | pRefClockSelect | ||
| ) |
============================================================================
CSL_CPTS_getRFTCLKSelectReg
Description
This function retrieves the contents of the reference clock select register.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure pRefClockSelect Reference clock select value read from hardware. *
Return Value
None
Pre Condition
None
Post Condition
None
Reads
CPTS_RFTCLK_SEL_REG_RFTCLK_SEL
Example
uint32_t refClockSelect; CSL_CPTS_getRFTCLKSelectReg (pCptsRegs, &refClockSelect);
| uint32_t CSL_CPTS_getTSAddVal | ( | CSL_cptsRegs * | pCptsRegs | ) |
============================================================================
CSL_CPTS_getTSAddVal
Description
This function retrieves the contents of the Time Stamp Add Value register.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure pTsAddVal Time stamp add value read from hardware. *
Return Value
tsAddVal Time stamp add value read from hardware.
Pre Condition
None
Post Condition
None
Reads
CPTS_TS_ADD_VAL_REG_ADD_VAL
Example
uint32_t tsAddVal; tsAddVal = CSL_CPTS_getTSAddVal (pCptsRegs);
|
inlinestatic |
============================================================================
CSL_CPTS_getTSEventPushReg
Description
This function retrieves the contents of the Time Stamp Event Push register.
Arguments
pTSPushVal Time stamp push value read from hardware. *
Return Value
None
Pre Condition
None
Post Condition
None
Reads
CPTS_TS_PUSH_REG_TS_PUSH
Example
Uint32 tsPushVal; CSL_CPTS_getTSEventPushReg (&tsPushVal);
|
inlinestatic |
============================================================================
CSL_CPTS_getTSLoadValReg
Description
This function retrieves the contents of the Time Stamp Load Value register.
Arguments
pTSLoadVal Time stamp load value read from hardware. *
Return Value
None
Pre Condition
None
Post Condition
None
Reads
CPTS_TS_LOAD_VAL_REG_TS_LOAD_VAL
Example
Uint32 tsLoadVal; CSL_CPTS_getTSLoadValReg (&tsLoadVal);
| void CSL_CPTS_getTSLoadValReg | ( | const CSL_cptsRegs * | pCptsRegs, |
| uint32_t * | pTSLoadVal | ||
| ) |
============================================================================
CSL_CPTS_getTSLoadValReg
Description
This function retrieves the contents of the Time Stamp Load Value register.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure pTSLoadVal Time stamp load value read from hardware. *
Return Value
None
Pre Condition
None
Post Condition
None
Reads
CPTS_TS_LOAD_VAL_REG_TS_LOAD_VAL
CPTS_TS_LOAD_HIGH_VAL_REG_TS_LOAD_VAL
Example
uint32_t tsLoadVal[2]; CSL_CPTS_getTSLoadValReg (pCptsRegs, tsLoadVal);
| void CSL_CPTS_getTSPpm | ( | const CSL_cptsRegs * | pCptsRegs, |
| uint32_t | tsPpmVal[2] | ||
| ) |
============================================================================
CSL_CPTS_getTSPpm
Description
This function retrieves the contents of the Time Stamp PPM Value register.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure pTSPpm PPM value read from hardware. *
Return Value
None
Pre Condition
None
Post Condition
None
Reads
CPTS_TS_PPM_LOW_VAL_REG_TS_PPM_LOW_VAL
CPTS_TS_PPM_HIGH_VAL_REG_TS_PPM_HIGH_VAL
Example
uint32_t tsPpmVal[2]; CSL_CPTS_getTSPpm (pCptsRegs, tsPpmVal);
|
inlinestatic |
============================================================================
CSL_CPTS_isCptsEnabled
Description
This function indicates if time sync is enabled or not.
Arguments
None
Return Value
TRUE CPTS enabled.
FALSE CPTS disabled.
Pre Condition
None
Post Condition
None
Reads
CPTS_CONTROL_REG_CPTS_EN
Example
if (CSL_CPTS_isCptsEnabled () == TRUE) { // CPTS on } else { // CPTS off }
| uint32_t CSL_CPTS_isCptsEnabled | ( | const CSL_cptsRegs * | pCptsRegs | ) |
============================================================================
CSL_CPTS_isCptsEnabled
Description
This function indicates if time sync is enabled or not.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure *
Return Value
TRUE CPTS enabled.
FALSE CPTS disabled.
Pre Condition
None
Post Condition
None
Reads
CPTS_CONTROL_REG_CPTS_EN
Example
if (CSL_CPTS_isCptsEnabled (pCptsRegs) == TRUE) { // CPTS on } else { // CPTS off }
|
inlinestatic |
============================================================================
CSL_CPTS_isInterruptEnabled
Description
This function indicates if Time sync interrupts are enabled.
Arguments
None
Return Value
TRUE Time sync interrupts enabled.
FALSE Time sync interrupts disabled.
Pre Condition
None
Post Condition
None
Reads
CPTS_INT_ENABLE_REG_TS_PEND_EN
Example
if (CSL_CPTS_isInterruptEnabled () == TRUE) { // interrupts enabled } else { // interrupts disabled }
| uint32_t CSL_CPTS_isInterruptEnabled | ( | const CSL_cptsRegs * | pCptsRegs | ) |
============================================================================
CSL_CPTS_isInterruptEnabled
Description
This function indicates if Time sync interrupts are enabled.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure *
Return Value
TRUE Time sync interrupts enabled.
FALSE Time sync interrupts disabled.
Pre Condition
None
Post Condition
None
Reads
CPTS_INT_ENABLE_REG_TS_PEND_EN
Example
if (CSL_CPTS_isInterruptEnabled (pCptsRegs) == TRUE) { // interrupts enabled } else { // interrupts disabled }
|
inlinestatic |
============================================================================
CSL_CPTS_isMaskedInterruptStatusBitSet
Description
This function checks the Time Sync Interrupt Status Masked Register to determine if there is one or more events in the event FIFO.
Arguments
None
Return Value
TRUE One or more events in FIFO. masked interrupt status bit set.
FALSE No events in FIFO. masked interrupt status bit cleared.
Pre Condition
None
Post Condition
None
Reads
CPTS_INTSTAT_MASKED_REG_TS_PEND
Example
if (CSL_CPTS_isMaskedInterruptStatusBitSet () == TRUE) { // masked interrupt set } else { // masked interrupt bit not set }
| uint32_t CSL_CPTS_isMaskedInterruptStatusBitSet | ( | const CSL_cptsRegs * | pCptsRegs | ) |
============================================================================
CSL_CPTS_isMaskedInterruptStatusBitSet
Description
This function checks the Time Sync Interrupt Status Masked Register to determine if there is one or more events in the event FIFO.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure *
Return Value
TRUE One or more events in FIFO. masked interrupt status bit set.
FALSE No events in FIFO. masked interrupt status bit cleared.
Pre Condition
None
Post Condition
None
Reads
CPTS_INTSTAT_MASKED_REG_TS_PEND
Example
if (CSL_CPTS_isMaskedInterruptStatusBitSet (pCptsRegs) == TRUE) { // masked interrupt set } else { // masked interrupt bit not set }
|
inlinestatic |
============================================================================
CSL_CPTS_isRawInterruptStatusBitSet
Description
This function checks the Time Sync Raw Pending Interrupt Register to determine if there is one or more events in the event FIFO.
Arguments
None
Return Value
TRUE One or more events in FIFO. Raw interrupt status bit set.
FALSE No events in FIFO. Raw interrupt status bit cleared.
Pre Condition
None
Post Condition
None
Reads
CPTS_INTSTAT_RAW_REG_TS_PEND_RAW
Example
if (CSL_CPTS_isRawInterruptStatusBitSet () == TRUE) { // interrupt set } else { // interrupt bit not set }
| uint32_t CSL_CPTS_isRawInterruptStatusBitSet | ( | const CSL_cptsRegs * | pCptsRegs | ) |
============================================================================
CSL_CPTS_isRawInterruptStatusBitSet
Description
This function checks the Time Sync Raw Pending Interrupt Register to determine if there is one or more events in the event FIFO.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure *
Return Value
TRUE One or more events in FIFO. Raw interrupt status bit set.
FALSE No events in FIFO. Raw interrupt status bit cleared.
Pre Condition
None
Post Condition
None
Reads
CPTS_INTSTAT_RAW_REG_TS_PEND_RAW
Example
if (CSL_CPTS_isRawInterruptStatusBitSet (pCptsRegs) == TRUE) { // interrupt set } else { // interrupt bit not set }
|
inlinestatic |
============================================================================
CSL_CPTS_popEvent
Description
This function sets up the Event pop bit in Event pop register. This initiates an event to be popped off the event FIFO. Popping an event discards the event and causes the next event, if any, to be moved to the top of the FIFO ready to be read by software on interrupt.
Arguments
None
Return Value
None
Pre Condition
None
Post Condition
None
Writes
CPTS_EVENT_POP_REG_EVENT_POP=1
Example
CSL_CPTS_popEvent ();
| void CSL_CPTS_popEvent | ( | CSL_cptsRegs * | pCptsRegs | ) |
============================================================================
CSL_CPTS_popEvent
Description
This function sets up the Event pop bit in Event pop register. This initiates an event to be popped off the event FIFO. Popping an event discards the event and causes the next event, if any, to be moved to the top of the FIFO ready to be read by software on interrupt.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure *
Return Value
None
Pre Condition
None
Post Condition
None
Writes
CPTS_EVENT_POP_REG_EVENT_POP=1
Example
CSL_CPTS_popEvent (pCptsRegs);
|
inlinestatic |
============================================================================
CSL_CPTS_setCntllReg
Description
This function sets up the contents of CPTS control register
Arguments
pCntlCfg CSL_CPTS_CONTROL contain settings for CPTS control register. *
Return Value
None
Pre Condition
None
Post Condition
None
Writes
CPTS_CONTROL_REG_CPTS_EN CPTS_CONTROL_REG_INT_TEST CPTS_CONTROL_REG_TS_COMP_POLARITY CPTS_CONTROL_REG_TSTAMP_EN CPTS_CONTROL_REG_SEQUENCE_EN CPTS_CONTROL_REG_MODE CPTS_CONTROL_REG_HW1_TS_PUSH_EN CPTS_CONTROL_REG_HW2_TS_PUSH_EN CPTS_CONTROL_REG_HW3_TS_PUSH_EN CPTS_CONTROL_REG_HW4_TS_PUSH_EN CPTS_CONTROL_REG_HW5_TS_PUSH_EN CPTS_CONTROL_REG_HW6_TS_PUSH_EN CPTS_CONTROL_REG_HW7_TS_PUSH_EN CPTS_CONTROL_REG_HW8_TS_PUSH_EN CPTS_CONTROL_REG_TS_SYNC_SEL
Example
CSL_CPTS_CONTROL cntlCfg; CSL_CPTS_setCntlReg (&cntlCfg);
| void CSL_CPTS_setCntlReg | ( | CSL_cptsRegs * | pCptsRegs, |
| const CSL_CPTS_CONTROL * | pCntlCfg | ||
| ) |
============================================================================
CSL_CPTS_setCntllReg
Description
This function sets up the contents of CPTS control register
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure pCntlCfg CSL_CPTS_CONTROL contain settings for CPTS control register. *
Return Value
None
Pre Condition
None
Post Condition
None
Writes
CPTS_CONTROL_REG_CPTS_EN CPTS_CONTROL_REG_INT_TEST CPTS_CONTROL_REG_TS_COMP_POLARITY CPTS_CONTROL_REG_TSTAMP_EN CPTS_CONTROL_REG_SEQUENCE_EN CPTS_CONTROL_REG_MODE CPTS_CONTROL_REG_TS_COMP_TOG CPTS_CONTROL_REG_HW1_TS_PUSH_EN CPTS_CONTROL_REG_HW2_TS_PUSH_EN CPTS_CONTROL_REG_HW3_TS_PUSH_EN CPTS_CONTROL_REG_HW4_TS_PUSH_EN CPTS_CONTROL_REG_HW5_TS_PUSH_EN CPTS_CONTROL_REG_HW6_TS_PUSH_EN CPTS_CONTROL_REG_HW7_TS_PUSH_EN CPTS_CONTROL_REG_HW8_TS_PUSH_EN CPTS_CONTROL_REG_TS_SYNC_SEL CPTS_CONTROL_REG_TS_RX_NO_EVENT CPTS_CONTROL_REG_TS_GENF_CLR_EN
Example
CSL_CPTS_CONTROL cntlCfg; CSL_CPTS_setCntlReg (pCptsRegs, &cntlCfg);
| int32_t CSL_CPTS_setESTFnNudge | ( | CSL_cptsRegs * | pCptsRegs, |
| uint32_t | estfIndex, | ||
| int32_t | tsNudge | ||
| ) |
============================================================================
CSL_CPTS_setESTFnNudge
Description
This function adjusts the ESTFn cycle length by the specified 2's complement value. For example, a value of -2 will subtract 2 RCLKs from the ts_ESTFn_length[31:0] value. A value of 1 will add 1 RCLK to the ts_ESTFn_comp_length[23:0] value.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure estfIndex Index of the ESTFn to configure tsNudge Nudge value *
Return Value
0 = success
-1 = estfIndex is invalid (outside of the valid range)
Pre Condition
None
Post Condition
None
Affects
CPTS_TS_ESTF_NUDGE_REG_NUDGE
Example
int32_t tsNudge = -2; CSL_CPTS_setESTFnNudge( pCptsRegs, tsNudge );
| int32_t CSL_CPTS_setGENFnNudge | ( | CSL_cptsRegs * | pCptsRegs, |
| uint32_t | genfIndex, | ||
| int32_t | tsNudge | ||
| ) |
============================================================================
CSL_CPTS_setGENFnNudge
Description
This function adjusts the GENFn cycle length by the specified 2's complement value. For example, a value of -2 will subtract 2 RCLKs from the ts_genfN_length[31:0] value. A value of 1 will add 1 RCLK to the ts_genfN_comp_length[23:0] value.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure genfIndex Index of the GENFn to configure tsNudge Nudge value *
Return Value
0 = success
-1 = genfIndex is invalid (outside of the valid range)
Pre Condition
None
Post Condition
None
Affects
CPTS_TS_GENF_NUDGE_REG_NUDGE
Example
int32_t tsNudge = -2; CSL_CPTS_setGENFnNudge( pCptsRegs, tsNudge );
|
inlinestatic |
============================================================================
CSL_CPTS_setRFTCLKSelectReg
Description
This function sets up the reference clock select value. The Reference clock value can be setup only when the CPTS enable bit is cleared in the CPTS control register.
Arguments
refClockSetVal Reference clock select value to configure. *
Return Value
None
Pre Condition
CSL_CPTS_setTimeSyncControlReg () must be called to clear the CPTS enable bit before calling this API.
Post Condition
None
Affects
CPTS_RFTCLK_SEL_REG_RFTCLK_SEL
Example
Uint32 refClockSelect; refClockSelect = 0; CSL_CPTS_setRFTCLKSelectReg (refClockSelect);
| void CSL_CPTS_setRFTCLKSelectReg | ( | CSL_cptsRegs * | pCptsRegs, |
| uint32_t | refClockSetVal | ||
| ) |
============================================================================
CSL_CPTS_setRFTCLKSelectReg
Description
This function sets up the reference clock select value. The Reference clock value can be setup only when the CPTS enable bit is cleared in the CPTS control register.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure refClockSetVal Reference clock select value to configure. *
Return Value
None
Pre Condition
CSL_CPTS_setTimeSyncControlReg () must be called to clear the CPTS enable bit before calling this API.
Post Condition
None
Affects
CPTS_RFTCLK_SEL_REG_RFTCLK_SEL
Example
uint32_t refClockSelect; refClockSelect = 0; CSL_CPTS_setRFTCLKSelectReg (pCptsRegs, refClockSelect);
| void CSL_CPTS_setTSAddVal | ( | CSL_cptsRegs * | pCptsRegs, |
| uint32_t | tsAddVal | ||
| ) |
============================================================================
CSL_CPTS_setTSAddVal
Description
This function sets the Time Stamp Add Value to adjust the 64-bit timestamp value. The tsAddVal[2:0] is added to 1 to comprise the timestamp increment value. The timestamp increment value is added to the current timestamp (time_stamp[63:0]) on each RCLK.
Note that this function is only applicable for 64-bit timestamp mode. In 32-bit timestamp mode, 0 is written.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure tsAddVal Time stamp add value [0, 7] * *
Return Value
None
Pre Condition
None.
Post Condition
None
Affects
CPTS_TS_ADD_VAL_REG_ADD_VAL
Example
uint32_t tsAddVal; tsAddVal = 3; CSL_CPTS_setTSAddVal (pCptsRegs, tsAddVal);
| void CSL_CPTS_setTSCompNudge | ( | CSL_cptsRegs * | pCptsRegs, |
| int32_t | tsCompNudge | ||
| ) |
============================================================================
CSL_CPTS_setTSCompNudge
Description
This function sets the Time Stamp Compare Nudge Value to adjust the phase of time compare wave in Toggle mode. This two's complement number is added to the ts_comp_length[23:0] value to increase or decrease the TS_COMP length by the ts_comp_nudge amount. Only a single high or low time is adjusted and the tsCompNudge value is cleared to zero when the nudge has occurred.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure tsCompNudge Time stamp compare nudge value [-128, 127] * *
Return Value
None
Pre Condition
None.
Post Condition
None
Affects
CPTS_TS_COMP_NUDGE_REG_NUDGE
Example
int32_t tsCompNudge; tsCompNudge = -2; CSL_CPTS_setTSCompNudge (pCptsRegs, tsCompNudge);
|
inlinestatic |
============================================================================
CSL_CPTS_setTSCompNudge
Description
This function sets the Time Stamp Compare Nudge Value to adjust the phase of time compare wave in Toggle mode. This two's complement number is added to the ts_comp_length[23:0] value to increase or decrease the TS_COMP length by the ts_comp_nudge amount. Only a single high or low time is adjusted and the tsCompNudge value is cleared to zero when the nudge has occurred.
Arguments
tsCompNudge Time stamp compare nudge value [-128, 127] * *
Return Value
None
Pre Condition
None.
Post Condition
None
Affects
CPTS_TS_COMP_NUDGE_REG_NUDGE
Example
Int32 tsCompNudge; tsCompNudge = -2; CSL_CPTS_setTSCompNudge (tsCompNudge);
| void CSL_CPTS_setTSCompVal | ( | CSL_cptsRegs * | pCptsRegs, |
| uint32_t | tsCompValLo, | ||
| uint32_t | tsCompValHi, | ||
| uint32_t | tsCompLen | ||
| ) |
============================================================================
CSL_CPTS_setTSCompVal
Description
This function sets the Time Stamp Compare Value and triggers the Time Stamp Comparsion operation.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure tsCompValLo Time stamp compare value (lower 32-bits) to be loaded. tsCompValHi Time stamp compare value (upper 32-bits) to be loaded. tsCompLen Length of the TS_COMP output pluse in non-toggle mode Half Period of the TS_COMP wave in toggle mode *
Return Value
None
Pre Condition
None.
Post Condition
None
Affects
CPTS_TS_COMP_VAL_REG_TS_COMP_VAL
CPTS_TS_COMP_HIGH_VAL_REG_TS_COMP_VAL
CPTS_TS_COMP_LEN_REG_TS_COMP_LENGTH
Example
uint32_t tsCompValLo, tsCompValHi; uint32_t tsCompLen; tsCompValLo = 0x3000; tsCompValHi = 0; tsCompLen = 1000; CSL_CPTS_setTSCompVal (pCptsRegs, tsCompValLo, tsCompValHi, tsCompLen);
|
inlinestatic |
============================================================================
CSL_CPTS_setTSCompVal
Description
This function sets the Time Stamp Compare Value and triggers the Time Stamp Comparsion operation.
Arguments
tsCompVal Time stamp compare value to be loaded. tsCompLen Length of the TS_COMP output pluse in non-toggle mode Half Period of the TS_COMP wave in toggle mode *
Return Value
None
Pre Condition
None.
Post Condition
None
Affects
CPTS_TS_COMP_LOW_VAL_REG_TS_COMP_VAL
CPTS_TS_COMP_HIGH_VAL_REG_TS_COMP_VAL
CPTS_TS_COMP_LEN_REG_TS_COMP_LENGTH
Example
Uint64 tsCompVal; Uint32 tsCompLen; tsCompVal = 0x3000; tsCompLen = 1000; CSL_CPTS_setTSCompVal (tsCompVal, tsCompLen);
|
inlinestatic |
============================================================================
CSL_CPTS_setTSEventPushReg
Description
This function sets up the contents of the Time Stamp Event Push register.
Arguments
tsPushVal Time stamp push value to configure. *
Return Value
None
Pre Condition
None
Post Condition
None
Affects
CPTS_TS_PUSH_REG_TS_PUSH
Example
Uint32 tsPushVal; tsPushVal = 0; CSL_CPTS_setTSEventPushReg (tsPushVal);
|
inlinestatic |
============================================================================
CSL_CPTS_setTSLoadValReg
Description
This function sets up the Time Stamp Load Value.
Arguments
tsLoadVal Time stamp load value to configure. *
Return Value
None
Pre Condition
None.
Post Condition
None
Affects
CPTS_TS_LOAD_VAL_REG_TS_LOAD_VAL
Example
Uint32 tsLoadVal; tsLoadVal = 0; CSL_CPTS_setTSLoadValReg (tsLoadVal);
| void CSL_CPTS_setTSLoadValReg | ( | CSL_cptsRegs * | pCptsRegs, |
| uint32_t | tsLoadValLo, | ||
| uint32_t | tsLoadValHi | ||
| ) |
============================================================================
CSL_CPTS_setTSLoadValReg
Description
This function sets up the Time Stamp Load Value.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure tsLoadValLo Time stamp load value (lower 32-bits) to configure tsLoadValHi Time stamp load value (upper 32-bits) to configure *
Return Value
None
Pre Condition
None.
Post Condition
None
Affects
CPTS_TS_LOAD_VAL_REG_TS_LOAD_VAL
CPTS_TS_LOAD_HIGH_VAL_REG_TS_LOAD_VAL
Example
uint32_t tsLoadValLo, tsLoadValHi; tsLoadValLo = tsLoadValHi = 0; CSL_CPTS_setTSLoadValReg (pCptsRegs, tsLoadValLo, tsLoadValHi);
|
inlinestatic |
============================================================================
CSL_CPTS_setTSLoadValReg
Description
This function sets up the Time Stamp Load Value.
Arguments
tsLoadVal Time stamp load value to configure. *
Return Value
None
Pre Condition
None.
Post Condition
None
Affects
CPTS_TS_LOAD_VAL_REG_TS_LOAD_VAL
Example
Uint64 tsLoadVal; tsLoadVal = 0; CSL_CPTS_setTSLoadValReg (tsLoadVal);
| void CSL_CPTS_setTSNudge | ( | CSL_cptsRegs * | pCptsRegs, |
| int32_t | tsNudge | ||
| ) |
============================================================================
CSL_CPTS_setTSNudge
Description
This function sets the Time Stamp Nudge Value to adjust the 64-bit timestamp value. This two's complement number is added to the time_stamp[63:0] value to increase or decrease the timestamp value by the tsNudge amount. The tsNudge value is cleared to zero when the nudge has occurred.
Note that this function is only applicable for 64-bit timestamp mode. In 32-bit timestamp mode, this function does nothing.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure tsNudge Time stamp nudge value [-128, 127] * *
Return Value
None
Pre Condition
None.
Post Condition
None
Affects
CPTS_TS_NUDGE_VAL_REG_TS_NUDGE_VAL
Example
int32_t tsNudge; tsNudge = -2; CSL_CPTS_setTSNudge (pCptsRegs, tsNudge);
| void CSL_CPTS_setTSPpm | ( | CSL_cptsRegs * | pCptsRegs, |
| uint32_t | tsPpmValLo, | ||
| uint32_t | tsPpmValHi, | ||
| CSL_CPTS_TS_PPM_DIR | tsPpmDir | ||
| ) |
============================================================================
CSL_CPTS_setTSPpm
Description
This function sets the parts per million or parts per hour 64-bit timestamp adjustment value. Writing a non-zero tsPpm value enables PPM operations. The adjustment is up or down depending on the tsPpmDir value. The timestamp value is increased by the PPM value when tsPpmDir is CSL_CPTS_TS_PPM_DIR_INCREASE and decreased by the PPM value when tsPpmDir is CSL_CPTS_TS_PPM_DIR_DECREASE.
Note that this function is only applicable for 64-bit timestamp mode. In 32-bit timestamp mode, this function does nothing.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure tsPpm Time stamp nudge value [-128, 127] tsPpmDir Adjustment direction * *
Return Value
None
Pre Condition
None.
Post Condition
None
Affects
CPTS_CONTROL_REG_TS_PPM_DIR
CPTS_TS_PPM_HIGH_VAL_REG_TS_PPM_HIGH_VAL
CPTS_TS_PPM_LOW_VAL_REG_TS_PPM_LOW_VAL
Example
uint32_t tsPpmValLo, uint32_t tsPpmValHi, CSL_CPTS_TS_PPM_DIR tsPpmDir; tsPpmValLo = 10000UL; tsPpmValHi = 0; tsPpmDir = CSL_CPTS_TS_PPM_DIR_INCREASE; CSL_CPTS_setTSPpm (pCptsRegs, tsPpmValLo, tsPpmValHi, tsPpmDir);
| void CSL_CPTS_setTSVal | ( | CSL_cptsRegs * | pCptsRegs, |
| uint32_t | tsValLo, | ||
| uint32_t | tsValHi | ||
| ) |
============================================================================
CSL_CPTS_setTSVal
Description
This function sets the Time Stamp Value.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure tsValLo Time stamp value (lower 32-bits) to be loaded. tsValHi Time stamp value (upper 32-bits) to be loaded. *
Return Value
None
Pre Condition
None.
Post Condition
None
Affects
CPTS_TS_LOAD_VAL_REG_TS_LOAD_VAL
CPTS_TS_LOAD_HIGH_VAL_REG_TS_LOAD_VAL
CPTS_TS_LOAD_EN_REG_TS_LOAD_EN
Example
uint32_t tsValLo, tsValHi; tsValLo = tsValHi = 0; CSL_CPTS_setTSVal (pCptsRegs, tsValLo, tsValHi);
|
inlinestatic |
============================================================================
CSL_CPTS_setTSVal
Description
This function sets the Time Stamp Value.
Arguments
tsVal Time stamp value to be loaded. *
Return Value
None
Pre Condition
None.
Post Condition
None
Affects
CPTS_TS_LOAD_LOW_VAL_REG_TS_LOAD_VAL
CPTS_TS_LOAD_HIGH_VAL_REG_TS_LOAD_VAL
CPTS_TS_LOAD_EN_REG_TS_LOAD_EN
Example
Uint64 tsVal; tsVal = 0; CSL_CPTS_setTSVal (tsVal);
| int32_t CSL_CPTS_setupESTFn | ( | CSL_cptsRegs * | pCptsRegs, |
| uint32_t | estfIndex, | ||
| uint32_t | length, | ||
| uint64_t | compare, | ||
| uint32_t | polarityInv, | ||
| uint64_t | ppmAdjust, | ||
| CSL_CPTS_TS_PPM_DIR | ppmDir | ||
| ) |
============================================================================
CSL_CPTS_setupESTFn
Description
This function sets the Time Stamp Compare Value of ESTFn and triggers the Time Stamp Comparsion operation.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure estfIndex Index of the ESTFn to configure length Length of the ESTFn output pulse in RCLK periods compare Time stamp compare value (64-bit value) to be loaded polarityInv 0 = TS_ESTFn is asserted low 1 = TS_ESTFn is asserted high ppmAdjust PPM adjustment value ppmDir CSL_CPTS_TS_PPM_DIR_INCREASE(0) = A single RCLK is added to the generate function counter at the PPM rate which has the effect of decreasing the generate function frequency by the PPM amount. CSL_CPTS_TS_PPM_DIR_DECREASE(1) = A single RCLK is subtracted from the generate function counter at the PPM rate which has the effect of increasing the generate function frequency by the PPM amount. *
Return Value
0 = success
-1 = estfIndex is invalid (outside of the valid range)
Pre Condition
None.
Post Condition
None
Affects
CPTS_TS_ESTF_LENGTH_REG_LENGTH
CPTS_TS_ESTF_COMP_LOW_REG_COMP_LOW
CPTS_TS_ESTF_COMP_HIGH_REG_COMP_HIGH
CPTS_TS_ESTF_PPM_LOW_REG_PPM_LOW
CPTS_TS_ESTF_PPM_HIGH_REG_PPM_HIGH
CPTS_TS_ESTF_CONTROL_REG_PPM_DIR
CPTS_TS_ESTF_CONTROL_REG_POLARITY_INV
Example
uint64_t tsESTFnCompVal; uint32_t tsESTFnLen, tsESTFnIndex; tsESTFnIndex = 0; tsESTFnCompVal = 0x3000U; tsESTFnLen = 1000; CSL_CPTS_setupESTFn( pCptsRegs, tsESTFnIndex, tsESTFnLen, tsESTFnCompVal, 0, 0, CSL_CPTS_TS_PPM_DIR_INCREASE );
| int32_t CSL_CPTS_setupGENFn | ( | CSL_cptsRegs * | pCptsRegs, |
| uint32_t | genfIndex, | ||
| uint32_t | length, | ||
| uint64_t | compare, | ||
| uint32_t | polarityInv, | ||
| uint64_t | ppmAdjust, | ||
| CSL_CPTS_TS_PPM_DIR | ppmDir | ||
| ) |
============================================================================
CSL_CPTS_setupGENFn
Description
This function sets the Time Stamp Compare Value of GENFn and triggers the Time Stamp Comparsion operation.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure genfIndex Index of the GENFn to configure length Length of the GENFn output pulse in RCLK periods compare Time stamp compare value (64-bit value) to be loaded polarityInv 0 = TS_GENFn is asserted low 1 = TS_GENFn is asserted high ppmAdjust PPM adjustment value ppmDir CSL_CPTS_TS_PPM_DIR_INCREASE(0) = A single RCLK is added to the generate function counter at the PPM rate which has the effect of decreasing the generate function frequency by the PPM amount. CSL_CPTS_TS_PPM_DIR_DECREASE(1) = A single RCLK is subtracted from the generate function counter at the PPM rate which has the effect of increasing the generate function frequency by the PPM amount. *
Return Value
0 = success
-1 = genfIndex is invalid (outside of the valid range)
Pre Condition
None.
Post Condition
None
Affects
CPTS_TS_GENF_LENGTH_REG_LENGTH
CPTS_TS_GENF_COMP_LOW_REG_COMP_LOW
CPTS_TS_GENF_COMP_HIGH_REG_COMP_HIGH
CPTS_TS_GENF_PPM_LOW_REG_PPM_LOW
CPTS_TS_GENF_PPM_HIGH_REG_PPM_HIGH
CPTS_TS_GENF_CONTROL_REG_PPM_DIR
CPTS_TS_GENF_CONTROL_REG_POLARITY_INV
Example
uint64_t tsGENFnCompVal; uint32_t tsGENFnLen, tsGENFnIndex; tsGENFnIndex = 0; tsGENFnCompVal = 0x3000U; tsGENFnLen = 1000; CSL_CPTS_setupGENFn( pCptsRegs, tsGENFnIndex, tsGENFnLen, tsGENFnCompVal, 0, 0, CSL_CPTS_TS_PPM_DIR_INCREASE );
| void CSL_CPTS_TSEventPush | ( | CSL_cptsRegs * | pCptsRegs | ) |
============================================================================
CSL_CPTS_TSEventPush
Description
This function writes an 1 to the Time Stamp Event Push register to generate a timestamp event. The time stamp value is the time of the write of this register, not the time of the event read. The time stamp value can then be read on interrupt via the event registers.
Arguments
pCptsRegs Pointer to CSL_cptsRegs structure *
Return Value
None
Pre Condition
None
Post Condition
None
Affects
CPTS_TS_PUSH_REG_TS_PUSH
Example
CSL_CPTS_TSEventPush (pCptsRegs);
|
inlinestatic |
============================================================================
CSL_CPTS_TSEventPush
Description
This function writes an 1 to the Time Stamp Event Push register to generate a timestamp event. The time stamp value is the time of the write of this register, not the time of the event read. The time stamp value can then be read on interrupt via the event registers.
Arguments
None
Return Value
None
Pre Condition
None
Post Condition
None
Affects
CPTS_TS_PUSH_REG_TS_PUSH
Example
CSL_CPTS_TSEventPush ();


Sheikh Mani’s son Sheikh Fazle Shams Parash named chairman of Jubo League
by bdnews24.comBangladesh Awami Jubo League has named Sheikh Fazle Shams Parash, the son of the organisation's founder Sheikh Fazlul Haq Mani, as its new chairman.
He was elected unopposed during the organisation's council session at the Institution of Engineers, Bangladesh in Ramna on Saturday.
Mainul Hossain Nikhil, president of Jubo League's Dhaka north unit, was named general secretary of the ruling party's youth wing.
Parash, the eldest son of Bangabandhu's nephew Mani, is making his first foray into politics with the task of repairing the image of Jubo League, which has been marred by controversies in recent times.
He had been pursuing a career in academia having obtained a degree in English from Dhaka University. His younger brother Sheikh Fazle Noor Taposh is a three-time MP from Dhaka-10 constituency while their uncle Sheikh Fazlul Karim Selim is a member of the Awami League's presidium and a former chairman of Jubo League.
He succeeds another relative Omar Faruk Chowdhury, who is the husband of Sheikh Fazlul Karim Selim’s sister, as chairman of the organisation.
Faruk was ousted from his post amid the government's crackdown on illegal casino business in which a number of influential Jubo League leaders were implicated.


Maybe the following sounds familiar. You have a large data set with many, many columns of which the most are irrelevant to you. Typically, a dump from a database or the full set extracted from an API. Several times I found myself the better part of an afternoon going back and forth between a view of the data where I tried to figure out which columns to keep, and an R session where I wrote the code for creating the subset of columns. Wouldn’t it be nice to have an app in which you could just click the columns you would like to keep? This seemed a perfect opportunity to get my feet wet with Shiny gadgets, which I still wanted to do since I first heard about it on useR2016.
I did not really have a feel for how difficult it would be to build something like this. All I knew was that I probably needed DT
to show an interactive data frame. Well it proved very easy to build a tool like this, I was just baffled by how easy it was. Due to the fine documentation of the Shiny functionalities, and excellent examples by Yihui Xie and Joe Cheng, I had it working before I knew. You have to give it up to these guys from RStudio. When you enable someone with barely any knowledge of JavaScript, CSS and html to build an app in an evening, you certainly are doing something right.
So here is how to do it. You simply run the function col_select
on a data frame and the mini ui opens. You click the columns you want to keep and store these in a new object like:
Batting_rel <- col_select(Lahman::Batting)
The downside of applying the function in this way, is its lack of reproducibility. Therefore, it is possible to return the dplyr
code that makes the selection, instead of the selection itself. The code will be inserted in the R script. In the next example the second line is inserted by running the app and selecting the first four columns.
col_select(Lahman::Batting, ret = 'dplyr_code')
Lahman::Batting %>% select(playerID, yearID, stint, teamID)
Here is the full code for the function. You will notice a third parameter with which you select how many rows are shown in the app. The code can also be found in the R-package that accompanies this blog. The functions from my last post about designing our bathroom with R are now made available here as well.
library(shiny)
library(miniUI)
library(dplyr)
library(DT)
col_select <- function(df,
ret = c("df_select", "dplyr_code"),
top_n = 100) {
ret <- match.arg(ret)
stopifnot(is.data.frame(df))
df_head <- head(df, top_n)
ui <- miniPage(
gadgetTitleBar("Have your pick"),
miniContentPanel(
dataTableOutput("selection_df", height = "100%")
)
)
server <- function(input, output, session){
options(DT.options = list(pageLength = 10))
output$selection_df <- renderDataTable(
df_head, server = FALSE, selection = list(target = "column")
)
observeEvent(input$done, stopApp( input$selection_df_columns_selected))
}
cols_selected <- runGadget(ui, server)
if (ret == "df_select") {
return( df %>% select(cols_selected) )
} else {
df_name <- deparse(substitute(df))
colnames_selected <- colnames(df)[cols_selected] %>%
paste(collapse = ", ")
rstudioapi::insertText(
paste(df_name, " %>% select(", colnames_selected, ")", sep = "")
)
}
}


--- title: Buttons - Secondary tags: component date: 2016/08/06 pattern_number: 0.2 --- Large secondary button Secondary button Small secondary button


Mobile App User
Delete
User Deleted Sucessfully
{{errorText}}
Profile Information
- Name
- {{singleUser.FirstName}}{{" "+singleUser.LastName}}
- Mobile Number
- {{singleUser.MobileNumber}}
- Email Address
- {{singleUser.EmailAddress}}
- Status
- {{singleUser.Status}}
- Registered On
- {{singleUser.RegisteredOn}}
- Referrer (Company)
- {{singleUser.ReferrerCompany}}
- Referrer (Agent)
- {{singleUser.ReferrerAgent}}
UPCOMING OFFERS
OFFER TITLE
Offer description comes here.
TEW12REX
EARNED OFFERS
OFFER TITLE
Offer description comes here.
AUTOTEK2
CONSUMED OFFERS
OFFER TITLE
Offer description comes here.
AUTOTEK1


I was born in Northern California and attended UC Berkeley for Environmental Economics and Policy. For 2 years, I was a QA Analyst at Locus Energy, a solar monitoring company. While doing QA, I realized I wanted to write the code in addition to testing it.
In 2016 I completed a coding boot camp called Viking Code School. It was an intense program, and I highly recommend it. Since then, I've been a backend engineer at Locus Energy.
I enjoy running, cooking, and playing chess.
Feel free to email me about my past projects, your upcoming projects, or just to say hello!


Coding for Beginners
A workshop on using the web platform for language documentation
Workshop 1: Overview of the Web platform
Workshop 2:
HTML


Claim your NHS Pension
We’ll only be able to process your application if we treat your NHS Pension Scheme benefits in excess of the Lifetime Allowance.
The Scheme pays 55% of your lump sum and 25% of your pension directly to HMRC. This is unless you instruct NHS Pensions to defer payment of your benefits


Menu
About
Gallery
Interests
Contact
Memories :')
Do not forget to click on the pictures and see more!


Path of Exile
Introduction and Purpose
Path of Exile is an online Action Role-Playing Game (ARPG) that is free-to-play. The developers of Path of Exile is a company called Grinding Gear Games. The game can be played alone or in a party of up to 6 players.
The purpose of this website is to try to be a resource that can help teach you some basic information about Path of Exile and also introduce you to some more resources that will be able to help you further. This website is targeted for new players of Path of Exile who want to learn a bit more about the game.
Path of Exile: Leagues
In Path of Exile, there are different leagues that you are able to create a character on. There are two permenant leagues, Standard and Standard Hardcore,
and two temporary leagues that last 3 months. The next temporary leagues will be the Abyss League, which will have Standard Abyss League and Hardcore Abyss League.
The difference between Standard and Hardcore leagues is that in Hardcore, dieing on your character means that it will be removed from that league and will be transfered
to the Standard league. This means you only have one life for your character. For Standard leagues, dieing only affects your character by making you lose experience points.
Many players exclusively play on the temporary leagues due to the fact that the economy and characters are fresh and there are rewards for completing achievments and objectives
in game. Also, each temporary league introduces a new and unique mechanic to the game that is exclusive for that league. Some of the past temporary leagues include:
This gif is displaying a character being played in an older temporary league, Standard Legacy league.
| League Name | Dates |
|---|---|
| Legacy | March 3, 2017 to July 31, 2017 |
| Breach | December 2, 2016 to February 27, 2017 |
| Essence | September 2, 2016 to November 28, 2016 |
| Prophecy | June 3, 2016 to August 29, 2016 |
| Perandus | March 4, 2016 to May 30, 2016 |
| Talisman | December 11, 2015 to March 4, 2016 |
| Warbands and Tempest | July 10, 2015 to October 2, 2015 |
| Torment and Bloodlines | December 12, 2014 to March 24, 2015 |
| Rampage and Beyond | August 20, 2014 to November 20, 2014 |
| Ambush and Invasion | March 5, 2014 to July 5, 2014 |
| Domination and Nemesis | October 23, 2013 to February 23, 2014 |
| Anarchy and Onslaught | June 8, 2013 to October 8, 2013 |
Path of Exile: Passive Skill Tree
Path of Exile has a massive passive skill tree that can intimidate any new player.  The passive skill tree is the same for each of the seven classes, but your class determines where you start on the passive skill tree. There are hundreds of nodes that give attributes or special stats that you can choose to invest your skill point you recieve from leveling.
This is the current passive tree:
To gain a better understanding or interact with the Path of Exile passive skill tree, click here
Path of Exile: Classes and Ascendency
There are seven classes in Path of Exile. Each class is aligned with one or more of the three main attributes, Strength, Dexterity, and Intelligence. The seven classes are Duelist, Marauder, Ranger, Scion, Shadow, Templar, and Witch.
Ascendency lets your character ascend and choose a sub-class from three different choices, each unique to their primary class from above.


{% extends "base.html" %} {% block title %}Links{% endblock %} {% block content %}
Here are some game development resources for you. Always make sure to check the licence!
We are not the only ones. Go check out these game jams as well, they are all awesome (not as awesome as BaconGameJam, but still... good).
More things we like.


 Please check with NCI Virtual Labs staff before making any changes." %}
{% trans "Changing the Hiera eyaml certificate/key pair will cause any data encrypted with the existing key pair to become unreadable." %}
{% endblock %} {% block modal-js %} {% endblock %}


RPF seizes 11 kg of ganja
by Staff ReporterThe Anti-Narcotic Squad (ATS) of the Railway Protection Force (RPF) on Wednesday arrested two youngsters allegedly with 11 kg of ganja worth ₹5.50 lakh from near the lift on the first platform of Ernakulam South Railway station.
The arrested were identified as Thomas A.M, 24, of Nilambur in Malappuram district, and Sreethu P. Shaji, 24, of Kottarakkara in Kollam district. They were found to be in possession of the contraband in two bags after having just alighted from a train from Coimbatore.
Thomas, a B.Tech graduate, and Sreethu, a graduate, claimed to be working at malls in Kochi. They have been charged under relevant sections of the Narcotic Drugs and Psychotropic Substances Act.
“A preliminary investigation revealed that the accused had been in this field for a while. According to them, the ganja was meant for sale in places like Fort Kochi and Mattancherry,” said a senior RPF official.


{% block content %} {% load get_system_setting %}
{{ "team_name"|get_system_setting }} have conducted a security assessment of {{ engagement.product.name }} during the period {{ engagement.target_start }} - {{ engagement.target_end }}. The purpose of the assignment was to identify vulnerabilities that could be used by an attacker to compromise the application in any way. The assessment was performed in a {{ engagement.environment }} environment.
Information about IP numbers in scope as well as some limited information about the purpose served by the systems were given before the tests were carried out. The assessment was done by carrying out initial interviews of staff responsible for the environment, scanning the environment with automated tools and following up with manual analysis on findings that were deemed to be of interest.
TODO: add your general summary of the results of the assessment here.
Below is a summary of the most important findings from the assessment:


WITNESS LIST Insurance Committee March 19, 2001-10:30A HB 1383 For: Bishop, E. Thomas (Bishop & Hummert, P.C.; Texas Association of Defense Counsel) Chamberlain, David E. (Self and Texas Association of Defense Counsel) Old, Jr., James R. (Self and Texas Association of Defense Counsel) Spence, Ross (Self) Against: Black, David (State Farm Insurance Companies) Cobb, Ronald (American Insurance Association) McWilliams, Hugh (Farmers Insurance Group) O'Connor, Kelly (USAA) Thompson, Jay (Association of Fire & Casualty Companies in Texas and Farm Bureau Insurance Companies) HB 1384 For: Beauchamp, Jerry (National Association of State Farm Agents, Inc.) Gonzalez, Ray (Self) Macias, Ben (Self) Swift, David (State Farm Agents Association) Against: Geiger, Richard (Association of Fire and Casualty Companies in Texas) Ruggiero, Denise (State Farm Insurance Companies) White, Jim (Self and Farmers Insurance Group) HB 1433 For: Bishop, E. Thomas (Bishop & Hummert, P.C.; Texas Association of Defense Counsel) Chamberlain, David (Self and Texas Association of Defense Counsel) Old, Jr., James (Self and Texas Association of Defense Counsel) Spence, Ross (Self) Against: Cobb, Ronald (American Insurance Association) Thompson, Jay (Association of Fire and Casualty Companies in Texas; Farm Bureau Insurance Companies) HB 1610 For: Davis, Will (Texas Association of Life & Health Insurers) McGiffert, Lisa (Consumers Union) Pollard, Mike (Texas Association of Life & Health Insurers) HB 2100 For: Shawn, Jim (Forever Enterprises, Inc. and Mission Parks) Against: Ledbetter, Charles (Self) Tooley, Ken (Texas Association of Insurance and Financial Advisors) On: Schneider, Rob (Consumers Union) HB 2191 For: Davis, Will (Texas Association of Life & Health Insurers) McGiffert, Lisa (Consumers Union) Pollard, Mike (Texas Association of Life & Health Insurers) On: DeLargy, Betty (Texas Health Insurance Risk Pool) HB 2286 For: Davis, Will (Texas Association of Life & Health Insurers) HB 2498 On: Stokes, Kim (Texas Department of Insurance) HB 2828 For: Berthelsen, Spencer (Texas Medical Association) McGiffert, Lisa (Consumers Union) On: Rummel, Leah (Texas Association of Health Plans) HB 2831 For: Pollard, Mike (Texas Association of Life & Health Insurers) Stephenson, Ken (Universal Health Services) On: Davis, Will (Texas Association of Life and Health Insurers) Kloster, Jeff (Humana) Rummel, Leah (Texas Association of Health Plans)


CatPhotoApp
Click here for
cat photos
.
Like
Info
Delete
Things cats love:
cat nip
laser pointers
lasagna
Top 3 things cats hate:
flea treatment
thunders
other cats
Indoor
Outdoor
Loving
Lazy
Energetic
Submit


The Command Line and Git
Week 1 of DBC introduced two really important concepts to me: using the command line to control my computer, and version control.
The Command Line
The command line is an interface for interacting with my computer. Using the instructions that DBC provided, I was able to install an application called Git Bash. This provides me with a command line with which I can interact with Windows: make, remove, rename, and delete files and directories, all by typing instructions for the computer to follow. From within Git Bash I can also use my virtual machine, or VM, which I also installed using DBC instructions. I had to do some research on my own to understand exactly what a VM was and how my VM works. Basically, it's an emulation of a computer on my computer. My VM is a machine running Ubuntu, a Linux operating system. I also interact with the VM by using commands in the command line. Thankfully, there's a shared directory between my "two" computers. I can create files on my VM and see them in Windows, and vice versa.
Using the command line not only makes me feel like a hacker from a movie from the 1990s, it is very efficient, and allows me to deliberately and methodically do things that would be difficult or impossible by just using the Windows File Explorer. I haven't yet done much exploration on my own about all the things the command line in Git Bash can do, both in Windows and the VM (partially because I'm still afraid of messing everything up) but I'm very interested in seeing its capabilities.
Git and Version Control
The other major topic I learned about this week was version control and the tools I'll be using to do it: git and GitHub. Version control is keeping track of changes made to your project (in our case, code, but it could really be anything) - what changes were made, when, by whom and why. Version control allows you to keep track of what's happening to your project and to undo or roll back changes that didn't work out the way you wanted them to, or which were made accidentally.
Git is a tool that runs in the command line that we're using for version control. The basic idea behind git is that there is a clean "master" copy of whatever we're working on. We know that the master works the way we want it to. When we want to make changes or additions, we first create a "branch". We do our work in the branch, save it, and when and only when we're sure it's in good shape, we "merge" it back to the master.
There is a specific workflow involved in using git to keep track of changes. I won't go over the specific commands involved here because if you are reading this blog you probably already know them. But the general outline goes something like this:
- create a branch
- do whatever work you need to do - add, modify files & directories, etc
- check to see what files/directories you've modified. They will be considered "working", not "staged". Staged means that they are ready to be committed (saved)
- "add" your files/directories to stage them
- commit the changes to your branch
- push the changed branch to your origin repository, which is probably stored on GitHub
- put in a pull request, so someone (or yourself in our case) can compare them to the origin master before merging
- merge your branch to the master branch on GitHub
- pull the new master to your local repository
- delete the old working branch locally and on GitHub
In the steps above, I mention GitHub a few times. GitHub is a website where you can upload and store your projects. This makes it easier when many people are working on the same project, as there is a local hub for all the changes made by all contributors. GitHub also has built in tools to allow you to do pull requests and merges.
I hope you enjoyed my long and probably not that interesting blog post about what I learned this week at DBC!


What would be the outputs of the 3 console.logs function calls? Could you explain the result
of the last 2 console.log statements in a couple of lines? (3 points)
Fill your answer in display2_1() in the javascript file (1 point)
No answer
What would happen in the following code? What would change if I removed the “use strict”?
Explain in a couple of lines (2 points)
Fill your answer in display2_2() in the javascript file (1 point)
No answer
In the countDiv() method, replace “dummyMethod” with the
appropriate one, to count all the tags that are divs in the HTML. Do not add new lines to
the function, do not make changes to the HTML or CSS. (1 point)
The table shown has 2 columns, a name and their favourite anime.
Get all the HTML tags that are called “naruto” (Note the case), and make them orange. In the
makeOrange()
method, please replace the “dummyMethod” with the appropriate one. Do not add new lines to
the function, do not make changes to the HTML or CSS. (2 points)
Name
Favorite Anime
Mark
Dragon Ball Z
Jacob
Naruto
Larry
One Piece
David
One Piece
Jin
Naruto
Law
Full Metal Alchemist Brotherhood
Hwoarang
Avatar: Last Airbender
List all the children of a div with the id “div_1134”. This needs to be done in the getChildrenTags() funtion. Please replace the “dummyMethod” with the appropriate one. Do not add new lines to the function, do not make changes to the HTML or CSS. (2 points)
Explain in a couple of lines how you are seeing children that you are not able to view on the HTML page. Fill your answer in display2_5() in the javascript file (1 point)


Pianist, vocal coach, and conductor, Brendon Shapiro, is a champion of vocal music of the 20th and 21st centuries. He is passionate about the way music can help to shine a light on stories and perspectives that have not historically been represented on American stages, and he specializes in working closely with singers and composers to create performances that will communicate effectively with diverse audiences.
Brendon is a recent alumnus of LA Opera's Young Artist Program where he worked with such artists as Renée Fleming and Susan Graham and played a key role in the musical preparation for the world premiere of Matthew Aucoin's Eurydice, along with productions of La Traviata, El gato montés, La Clemenza di Tito, The Light in the Piazza, and Satyagraha. He returned to LA Opera in 2022 to work on Rhiannon Giddens’ and Michael Abels’ Omar.
He was Emerging Artist alum with Boston Lyric Opera where he has served as pianist and coach for Omar, Bluebeard’s Castle, The Rape of Lucretia, Pagliacci, and Cavalleria Rusticana. He also was the pianist for BLO’s video series entitled ‘B.’ which features music written by Asian composers and/or inspired by Asian cultures, as well as the world premiere of Omar Najmi's song cycle, ‘my name is Alondra,’ as part of BLO’s Poetry in Music initiative.
Other recent productions in which Brendon served as répétiteur include Awakenings and X: The Life and Times of Malcolm X at Odyssey Opera, Die Schweigsame Frau at Bard SummerScape Festival, X: The Life and Times of Malcolm X at Opera Omaha, La Traviata at Boston Youth Symphony Orchestra, As One at Opera Maine, La caravana de mujeres (workshop) at MASSOpera, La Clemenza di Tito at Opera Steamboat, and Tosca at the Phoenicia International Festival of the Voice.
As a conductor and musical director, Brendon helps bring new works to life at Catalyst New Music, a company he co-founded with his husband, Omar Najmi, in 2022. They have workshopped Najmi’s operas This is Not That Dawn and En la ardiente oscuridad and started an art song development program called FUSE: Collaborations in Song. Brendon has also conducted at Opera Fayetteville (Second Nature), Boston Opera Collaborative (La Rondine, The Dangerous Liaisons), and MASSOpera (Miss Havisham’s Wedding Night, The Beautiful Bridegroom) and has served as assistant conductor at Boston Conservatory at Berklee (As One, The Island of Tulipatan, Susannah).
Brendon is the Executive Director of Boston Singers’ Resource, a non-profit organization dedicated to providing classical singers with the tools they need as they pursue their careers. While at BSR, Brendon has been developing new programs designed to provide more opportunities to emerging singers in the New England area. He has been on faculty as a vocal coach at Boston Conservatory at Berklee, University of Massachusetts Amherst, The Empowered Musician, and the Boston University Tanglewood Institute, and coaches extensively from his home in Malden, Massachusetts, where he lives with his husband, tenor and composer, Omar Najmi, and his tuxedo cat Wally.


About Us
Say "hi!" to Wilma, our one-and-only feathered baby.
Who are we? We're on a mission to make your bird happy!
Donec ullamcorper nulla non metus auctor fringilla. Vestibulum id ligula porta felis euismod semper. Praesent commodo cursus magna, vel scelerisque nisl consectetur. Fusce dapibus, tellus ac cursus commodo.
Fusce dapibus, tellus ac cursus commodo. Donec ullamcorper nulla non metus auctor fringilla. Vestibulum id ligula porta felis euismod semper. Praesent commodo cursus magna, vel scelerisque nisl consectetur.
Why are bird toys important?
This vet explains.
Featured
Card title that wraps to a new line
This is a longer card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Card title
This card has supporting text below as a natural lead-in to additional content.
Last updated 3 mins ago
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat.
Card title
This card has a regular title and short paragraphy of text below it.
Last updated 3 mins ago
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Card title
This is another card with title and supporting text below. This card has some additional content to make it slightly taller overall.
Last updated 3 mins ago