TMMemoryCache Class Reference
| Inherits from | NSObject |
|---|---|
| Declared in | TMMemoryCache.h TMMemoryCache.m |
Core
queue
A concurrent queue on which all work is done. It is exposed here so that it can be set to target some other queue, such as a global concurrent queue with a priority other than the default.
@property (readonly) dispatch_queue_t queue
Discussion
A concurrent queue on which all work is done. It is exposed here so that it can be set to target some other queue, such as a global concurrent queue with a priority other than the default.
Declared In
TMMemoryCache.h
totalCost
The total accumulated cost.
@property (readonly) NSUInteger totalCost
Discussion
The total accumulated cost.
Declared In
TMMemoryCache.h
costLimit
The maximum cost allowed to accumulate before objects begin to be removed with trimToCostByDate:.
@property (assign) NSUInteger costLimit
Discussion
The maximum cost allowed to accumulate before objects begin to be removed with trimToCostByDate:.
Declared In
TMMemoryCache.h
ageLimit
The maximum number of seconds an object is allowed to exist in the cache. Setting this to a value
greater than 0.0
will start a recurring GCD timer with the same period that calls trimToDate:.
Setting it back to 0.0
will stop the timer. Defaults to 0.0
.
@property (assign) NSTimeInterval ageLimit
Discussion
The maximum number of seconds an object is allowed to exist in the cache. Setting this to a value
greater than 0.0
will start a recurring GCD timer with the same period that calls trimToDate:.
Setting it back to 0.0
will stop the timer. Defaults to 0.0
.
Declared In
TMMemoryCache.h
removeAllObjectsOnMemoryWarning
When YES
on iOS the cache will remove all objects when the app receives a memory warning.
Defaults to YES
.
@property (assign) BOOL removeAllObjectsOnMemoryWarning
Discussion
When YES
on iOS the cache will remove all objects when the app receives a memory warning.
Defaults to YES
.
Declared In
TMMemoryCache.h
removeAllObjectsOnEnteringBackground
When YES
on iOS the cache will remove all objects when the app enters the background.
Defaults to YES
.
@property (assign) BOOL removeAllObjectsOnEnteringBackground
Discussion
When YES
on iOS the cache will remove all objects when the app enters the background.
Defaults to YES
.
Declared In
TMMemoryCache.h
Event Blocks
willAddObjectBlock
A block to be executed just before an object is added to the cache. This block will be excuted within a barrier, i.e. all reads and writes are suspended for the duration of the block.
@property (copy) TMMemoryCacheObjectBlock willAddObjectBlock
Discussion
A block to be executed just before an object is added to the cache. This block will be excuted within a barrier, i.e. all reads and writes are suspended for the duration of the block.
Declared In
TMMemoryCache.h
willRemoveObjectBlock
A block to be executed just before an object is removed from the cache. This block will be excuted within a barrier, i.e. all reads and writes are suspended for the duration of the block.
@property (copy) TMMemoryCacheObjectBlock willRemoveObjectBlock
Discussion
A block to be executed just before an object is removed from the cache. This block will be excuted within a barrier, i.e. all reads and writes are suspended for the duration of the block.
Declared In
TMMemoryCache.h
willRemoveAllObjectsBlock
A block to be executed just before all objects are removed from the cache as a result of removeAllObjects:. This block will be excuted within a barrier, i.e. all reads and writes are suspended for the duration of the block.
@property (copy) TMMemoryCacheBlock willRemoveAllObjectsBlock
Discussion
A block to be executed just before all objects are removed from the cache as a result of removeAllObjects:. This block will be excuted within a barrier, i.e. all reads and writes are suspended for the duration of the block.
Declared In
TMMemoryCache.h
didAddObjectBlock
A block to be executed just after an object is added to the cache. This block will be excuted within a barrier, i.e. all reads and writes are suspended for the duration of the block.
@property (copy) TMMemoryCacheObjectBlock didAddObjectBlock
Discussion
A block to be executed just after an object is added to the cache. This block will be excuted within a barrier, i.e. all reads and writes are suspended for the duration of the block.
Declared In
TMMemoryCache.h
didRemoveObjectBlock
A block to be executed just after an object is removed from the cache. This block will be excuted within a barrier, i.e. all reads and writes are suspended for the duration of the block.
@property (copy) TMMemoryCacheObjectBlock didRemoveObjectBlock
Discussion
A block to be executed just after an object is removed from the cache. This block will be excuted within a barrier, i.e. all reads and writes are suspended for the duration of the block.
Declared In
TMMemoryCache.h
didRemoveAllObjectsBlock
A block to be executed just after all objects are removed from the cache as a result of removeAllObjects:. This block will be excuted within a barrier, i.e. all reads and writes are suspended for the duration of the block.
@property (copy) TMMemoryCacheBlock didRemoveAllObjectsBlock
Discussion
A block to be executed just after all objects are removed from the cache as a result of removeAllObjects:. This block will be excuted within a barrier, i.e. all reads and writes are suspended for the duration of the block.
Declared In
TMMemoryCache.h
didReceiveMemoryWarningBlock
A block to be executed upon receiving a memory warning (iOS only) potentially in parallel with other blocks on the queue.
This block will be executed regardless of the value of removeAllObjectsOnMemoryWarning. Defaults to nil
.
@property (copy) TMMemoryCacheBlock didReceiveMemoryWarningBlock
Discussion
A block to be executed upon receiving a memory warning (iOS only) potentially in parallel with other blocks on the queue.
This block will be executed regardless of the value of removeAllObjectsOnMemoryWarning. Defaults to nil
.
Declared In
TMMemoryCache.h
didEnterBackgroundBlock
A block to be executed when the app enters the background (iOS only) potentially in parallel with other blocks on the queue.
This block will be executed regardless of the value of removeAllObjectsOnEnteringBackground. Defaults to nil
.
@property (copy) TMMemoryCacheBlock didEnterBackgroundBlock
Discussion
A block to be executed when the app enters the background (iOS only) potentially in parallel with other blocks on the queue.
This block will be executed regardless of the value of removeAllObjectsOnEnteringBackground. Defaults to nil
.
Declared In
TMMemoryCache.h
Shared Cache
+ sharedCache
A shared cache.
+ (instancetype)sharedCache
Return Value
The shared singleton cache instance.
Discussion
A shared cache.
Declared In
TMMemoryCache.h
Asynchronous Methods
– objectForKey:block:
Retrieves the object for the specified key. This method returns immediately and executes the passed block after the object is available, potentially in parallel with other blocks on the queue.
- (void)objectForKey:(NSString *)key block:(TMMemoryCacheObjectBlock)block
Parameters
key |
The key associated with the requested object. |
|---|---|
block |
A block to be executed concurrently when the object is available. |
Discussion
Retrieves the object for the specified key. This method returns immediately and executes the passed block after the object is available, potentially in parallel with other blocks on the queue.
Declared In
TMMemoryCache.h
– setObject:forKey:block:
Stores an object in the cache for the specified key. This method returns immediately and executes the passed block after the object has been stored, potentially in parallel with other blocks on the queue.
- (void)setObject:(id)object forKey:(NSString *)key block:(TMMemoryCacheObjectBlock)block
Parameters
object |
An object to store in the cache. |
|---|---|
key |
A key to associate with the object. This string will be copied. |
block |
A block to be executed concurrently after the object has been stored, or nil. |
Discussion
Stores an object in the cache for the specified key. This method returns immediately and executes the passed block after the object has been stored, potentially in parallel with other blocks on the queue.
Declared In
TMMemoryCache.h
– setObject:forKey:withCost:block:
Stores an object in the cache for the specified key and the specified cost. If the cost causes the total to go over the costLimit the cache is trimmed (oldest objects first). This method returns immediately and executes the passed block after the object has been stored, potentially in parallel with other blocks on the queue.
- (void)setObject:(id)object forKey:(NSString *)key withCost:(NSUInteger)cost block:(TMMemoryCacheObjectBlock)block
Parameters
object |
An object to store in the cache. |
|---|---|
key |
A key to associate with the object. This string will be copied. |
cost |
An amount to add to the totalCost. |
block |
A block to be executed concurrently after the object has been stored, or nil. |
Discussion
Stores an object in the cache for the specified key and the specified cost. If the cost causes the total to go over the costLimit the cache is trimmed (oldest objects first). This method returns immediately and executes the passed block after the object has been stored, potentially in parallel with other blocks on the queue.
Declared In
TMMemoryCache.h
– removeObjectForKey:block:
Removes the object for the specified key. This method returns immediately and executes the passed block after the object has been removed, potentially in parallel with other blocks on the queue.
- (void)removeObjectForKey:(NSString *)key block:(TMMemoryCacheObjectBlock)block
Parameters
key |
The key associated with the object to be removed. |
|---|---|
block |
A block to be executed concurrently after the object has been removed, or nil. |
Discussion
Removes the object for the specified key. This method returns immediately and executes the passed block after the object has been removed, potentially in parallel with other blocks on the queue.
Declared In
TMMemoryCache.h
– trimToDate:block:
Removes all objects from the cache that have not been used since the specified date. This method returns immediately and executes the passed block after the cache has been trimmed, potentially in parallel with other blocks on the queue.
- (void)trimToDate:(NSDate *)date block:(TMMemoryCacheBlock)block
Parameters
date |
Objects that haven’t been accessed since this date are removed from the cache. |
|---|---|
block |
A block to be executed concurrently after the cache has been trimmed, or nil. |
Discussion
Removes all objects from the cache that have not been used since the specified date. This method returns immediately and executes the passed block after the cache has been trimmed, potentially in parallel with other blocks on the queue.
Declared In
TMMemoryCache.h
– trimToCost:block:
Removes objects from the cache, costliest objects first, until the totalCost is below the specified value. This method returns immediately and executes the passed block after the cache has been trimmed, potentially in parallel with other blocks on the queue.
- (void)trimToCost:(NSUInteger)cost block:(TMMemoryCacheBlock)block
Parameters
cost |
The total accumulation allowed to remain after the cache has been trimmed. |
|---|---|
block |
A block to be executed concurrently after the cache has been trimmed, or nil. |
Discussion
Removes objects from the cache, costliest objects first, until the totalCost is below the specified value. This method returns immediately and executes the passed block after the cache has been trimmed, potentially in parallel with other blocks on the queue.
Declared In
TMMemoryCache.h
– trimToCostByDate:block:
Removes objects from the cache, ordered by date (least recently used first), until the totalCost is below the specified value. This method returns immediately and executes the passed block after the cache has been trimmed, potentially in parallel with other blocks on the queue.
- (void)trimToCostByDate:(NSUInteger)cost block:(TMMemoryCacheBlock)block
Parameters
cost |
The total accumulation allowed to remain after the cache has been trimmed. |
|---|---|
block |
A block to be executed concurrently after the cache has been trimmed, or nil. |
Discussion
Removes objects from the cache, ordered by date (least recently used first), until the totalCost is below the specified value. This method returns immediately and executes the passed block after the cache has been trimmed, potentially in parallel with other blocks on the queue.
Declared In
TMMemoryCache.h
– removeAllObjects:
Removes all objects from the cache. This method returns immediately and executes the passed block after the cache has been cleared, potentially in parallel with other blocks on the queue.
- (void)removeAllObjects:(TMMemoryCacheBlock)block
Parameters
block |
A block to be executed concurrently after the cache has been cleared, or nil. |
|---|
Discussion
Removes all objects from the cache. This method returns immediately and executes the passed block after the cache has been cleared, potentially in parallel with other blocks on the queue.
Declared In
TMMemoryCache.h
– enumerateObjectsWithBlock:completionBlock:
Loops through all objects in the cache within a memory barrier (reads and writes are suspended during the enumeration). This method returns immediately.
- (void)enumerateObjectsWithBlock:(TMMemoryCacheObjectBlock)block completionBlock:(TMMemoryCacheBlock)completionBlock
Parameters
block |
A block to be executed for every object in the cache. |
|---|---|
completionBlock |
An optional block to be executed concurrently when the enumeration is complete. |
Discussion
Loops through all objects in the cache within a memory barrier (reads and writes are suspended during the enumeration). This method returns immediately.
Declared In
TMMemoryCache.h
Synchronous Methods
– objectForKey:
Retrieves the object for the specified key. This method blocks the calling thread until the object is available.
- (id)objectForKey:(NSString *)key
Parameters
key |
The key associated with the object. |
|---|
Return Value
The object for the specified key.
Discussion
Retrieves the object for the specified key. This method blocks the calling thread until the object is available.
See Also
Declared In
TMMemoryCache.h
– setObject:forKey:
Stores an object in the cache for the specified key. This method blocks the calling thread until the object has been set.
- (void)setObject:(id)object forKey:(NSString *)key
Parameters
object |
An object to store in the cache. |
|---|---|
key |
A key to associate with the object. This string will be copied. |
Discussion
Stores an object in the cache for the specified key. This method blocks the calling thread until the object has been set.
See Also
Declared In
TMMemoryCache.h
– setObject:forKey:withCost:
Stores an object in the cache for the specified key and the specified cost. If the cost causes the total to go over the costLimit the cache is trimmed (oldest objects first). This method blocks the calling thread until the object has been stored.
- (void)setObject:(id)object forKey:(NSString *)key withCost:(NSUInteger)cost
Parameters
object |
An object to store in the cache. |
|---|---|
key |
A key to associate with the object. This string will be copied. |
cost |
An amount to add to the totalCost. |
Discussion
Stores an object in the cache for the specified key and the specified cost. If the cost causes the total to go over the costLimit the cache is trimmed (oldest objects first). This method blocks the calling thread until the object has been stored.
Declared In
TMMemoryCache.h
– removeObjectForKey:
Removes the object for the specified key. This method blocks the calling thread until the object has been removed.
- (void)removeObjectForKey:(NSString *)key
Parameters
key |
The key associated with the object to be removed. |
|---|
Discussion
Removes the object for the specified key. This method blocks the calling thread until the object has been removed.
Declared In
TMMemoryCache.h
– trimToDate:
Removes all objects from the cache that have not been used since the specified date. This method blocks the calling thread until the cache has been trimmed.
- (void)trimToDate:(NSDate *)date
Parameters
date |
Objects that haven’t been accessed since this date are removed from the cache. |
|---|
Discussion
Removes all objects from the cache that have not been used since the specified date. This method blocks the calling thread until the cache has been trimmed.
Declared In
TMMemoryCache.h
– trimToCost:
Removes objects from the cache, costliest objects first, until the totalCost is below the specified value. This method blocks the calling thread until the cache has been trimmed.
- (void)trimToCost:(NSUInteger)cost
Parameters
cost |
The total accumulation allowed to remain after the cache has been trimmed. |
|---|
Discussion
Removes objects from the cache, costliest objects first, until the totalCost is below the specified value. This method blocks the calling thread until the cache has been trimmed.
Declared In
TMMemoryCache.h
– trimToCostByDate:
Removes objects from the cache, ordered by date (least recently used first), until the totalCost is below the specified value. This method blocks the calling thread until the cache has been trimmed.
- (void)trimToCostByDate:(NSUInteger)cost
Parameters
cost |
The total accumulation allowed to remain after the cache has been trimmed. |
|---|
Discussion
Removes objects from the cache, ordered by date (least recently used first), until the totalCost is below the specified value. This method blocks the calling thread until the cache has been trimmed.
Declared In
TMMemoryCache.h
– removeAllObjects
Removes all objects from the cache. This method blocks the calling thread until the cache has been cleared.
- (void)removeAllObjects
Discussion
Removes all objects from the cache. This method blocks the calling thread until the cache has been cleared.
Declared In
TMMemoryCache.h
– enumerateObjectsWithBlock:
Loops through all objects in the cache within a memory barrier (reads and writes are suspended during the enumeration). This method blocks the calling thread until all objects have been enumerated.
- (void)enumerateObjectsWithBlock:(TMMemoryCacheObjectBlock)block
Parameters
block |
A block to be executed for every object in the cache. |
|---|
Discussion
Loops through all objects in the cache within a memory barrier (reads and writes are suspended during the enumeration). This method blocks the calling thread until all objects have been enumerated.
Warning: Do not call this method within the event blocks (didReceiveMemoryWarningBlock, etc.) Instead use the asynchronous version, enumerateObjectsWithBlock:completionBlock:.
Declared In
TMMemoryCache.h
– handleMemoryWarning
Handle a memory warning.
- (void)handleMemoryWarning
Discussion
Handle a memory warning.
Declared In
TMMemoryCache.h
– handleApplicationBackgrounding
Handle the application having been backgrounded.
- (void)handleApplicationBackgrounding
Discussion
Handle the application having been backgrounded.
Declared In
TMMemoryCache.h


I've included my LinkedIn for you to connect with me.
click below
Feel free to E-mail me with any project suggestions.
“I taught myself how to program computers when I was a kid, bought my first computer when I was 10, and sold my first commercial program when I was 12.” - Elon Musk 6 great quotes about the power of coding © 2020 Jason
“I taught myself how to program computers when I was a kid, bought my first computer when I was 10, and sold my first commercial program when I was 12.”
© 2020 Jason


{% extends "events/base.html" %} {% block page_title %}Content Guidelines | {{ super() }}{% endblock %} {% block page_id %}content_guidelines{% endblock %} {% block section_type %}events legal{% endblock %} {% block content %}
This document describes the various types of content that is inappropriate on the Events Platform. If you are a user of the Events Platform, you must not provide or upload content that violates these guidelines. We may update this list from time to time.


--- title: Be Odd kind: article created_at: 2020-03-24 preview_image: --- <% content_for(:comic) do %> <% end %> <% content_for(:newspost) do %>
You shall know the truth and the truth shall make you odd.
Wise words from Flannery O'Connor.
Nicely paired with these words from Tyler Cowen.
Well, in a sense, it's the weird that is truly normal. It's how people actually are. Like what the really care about, think about. The weird is the stage presence we put on and all the puffery and unwillingness to say what you really think.


this is welcome-section
this is projects-Section
Lorem ipsum dolor, sit amet consectetur adipisicing elit.
Personal Portfolio
the link to the Portfoli project
Project Managment
the link to the Portfoli project
github link


I pierced my face and banged a robot in The Sims 4 Discover University
by Joanna NeliusSims 4 Discover University doesn't mirror my college experience exactly, but it mirrors the college experience in hilarious and depressing ways.
My girl had some big academic ambitions though, so I got enough money for her to apply to college. I also made her study computer, videogame, and other scientific-related skills so she could apply to as many scholarships as possible. I ended up applying to three: a low-income scholarship, an esports scholarship, and a residency grant. I got all of them, which gave me a free-ride to college. Tuition and room and board 100 percent covered. No crippling student loan debt.
Okay, so that's the complete opposite of my college experience, but that's the point of the Sims 4 Discover University; it's one part real college experience and one part fantasy. Going to college today is different than five or ten years ago, The Sims general manager Lyndsay Pearson tells me. Discover University was designed to reflect those changes. "It felt like this was a good time to go back through your sim's life and say hey, this is an important state that a lot of people go through, so let's do that. Let's go all in on that."
And, oh man, did they go all in on that.  (Sorry, mom.)
A lot has changed since The Sims 3 University Life expansion. Aside from being able to apply—and get—merit, need, resident, sports and esports, and skill-based scholarships, you can choose to go to one of two colleges: University of Britechester, an Ivy League-esque school known for its humanities programs and ghosts that roam the campus, and Foxbury Institute, a modern tech-school known for its science-based programs and cutting-edge tech. What school and major you get accepted into is based on your skill level in different areas, just like some of the scholarships.
Creating two schools rather than one or three meant that the developers could focus on giving each a distinct personality, while injecting some rivalry into the mix. "It offers a really good balance to introduce a little bit a potential conflict, and the question, 'What does it mean to be at one of either of those schools?'" While I'm not sure of the extent of the rivalry, I was able to play some harmless pranks on Foxbury's gymnasium by hanging Britechester's banners on the outside.
I guess I was feeling bitter that my sim didn't have the skills to get into Foxbury Institute's distinguished computer science program, so she went to University of Britechester to study that instead. (Hey, name-brand schools aren't always what they're cracked-up to be.) But being the overachieving goth that she is, I enrolled her in a full-load of classes—four—quit her jobs, and sent her off for some book learnin'. Taking that many classes leaves your sim little time for social activities. You'll get your degree faster, but miss out on exploring the organizations each college offers, which, aside from being able to choose between two colleges, is a massive change from Sims 3 University Life.
In University Life, you could build your social status in one of three social groups. If you reached the top social tier of that group, a new career path would unlock. (The nerd group would unlock the videogame developer career, for instance.) Social groups are not tied to status nor post-college careers this time around, which is not only more realistic to a real-life college experience, but also puts a bigger emphasis on having fun rather than seeing social opportunities as a means to an end for your sim's career path.
The developers were conscious of not making University Life feel like an American-specific university. "We tried to talk to a lot of different people about their experiences at universities around the world and say, okay, how do we make this more recognizable or relatable," said Pearson. Having studied at both American and Irish universities myself, I instantly saw the similarities between my college experiences in two different countries. The dorm life felt very American, while the lack of fraternities and sororities reminded me of my time in Ireland. The all-night ragers were standard across the board, though, and while snooker was absent in the commons, I could easily buy a juice keg and bring it up to my dorm—and play juice pong.
Speaking of living options, there is only one off-campus housing option in Britechester, as the other few that are available are filled up. This is a little disappointing, as it's still in-line with how small a lot of the towns are with few open or buildable lots. But, all the action is on campus in the dorms, which is the main ingredient to the quintessential (American) college experience: dorm-life. Dorms are co-ed and massive, with roommates coming and going at all hours of the night, chatting loudly while you're trying to do your homework, or streaking across the living room for no reason. The beds are twin-sized, but unfortunately you can't WooHoo in them or cuddle uncomfortably with your partner, but you can WooHoo in the showers, finally.
And speaking of WooHoo, I successfully WooHooed a robot. I didn't have enough time to level up my robotics skill and build my own, so I walked over to Foxbury and started romancing someone's robot that they brought out for a competition. Once I filled up our romance meter to a decent amount, I invited Mac, the robot, to my house since I wasn't living in the dorms at the time. Everything was perfect. I was excited for Mac to come over, and when he did, I went in for our first kiss—and it didn't go as planned.
Not only would Mac not kiss me because our Romance level wasn't high enough (maxed out seems high enough to me), but he wouldn't even think about WooHooing with me until we were best friends, so I had to spend time getting to know Mac until he would WooHoo me. (I guess robots have higher standards than most other sims.) Eventually, we WooHooed. And it was glorious. It was magical. My sim was in love with Mac, so I had her propose to him—and he rejected her proposal.
Seriously, Mac? Okay fine. We're breaking up.
After I broke up with Mac, I moved back into the dorms, which was a much better experience, although customizing your dorm room is a little convoluted. Unlike using the build/buy mode on a normal house. If you want to add any items to your dorm room like posters, a mini-fridge, or microwave (and yes, you can stack the microwave on top of your mini-fridge and make ramen), you have to buy those things from a nearby vending machine; build/buy mode is unavailable for the dorms because it changes the value of the overall lot, which affects any scholarships you might have. Scholarships roll over from term to term, and there's a fixed amount for room and board, if you choose to live in the dorms. Editing the dorms as you're living in them will change how much it costs to live in there next term, but your scholarship won't reflect that. If you want to change the look of the dorms, you'll have to edit them from world view first.
Figuring out where to eat on campus wasn't intuitive either, as there are no kitchens in the dorms, but once you figure out that the cafeteria is in the commons it makes complete sense. However, it only operates for certain hours, so if your sim gets a midnight study craving, you better have a mini-fridge and microwave in your room, or hope that a "food fairy" lives in your dorm—a roommate that randomly shows up with food all the time. That was how I fed my sim for her first two weeks of college.
 Remember the living room streaker? Well, he wrote a nasty note about my sim. She found it in her dorm room, and it said, "I'm not saying I'm the best roommate, but at least I'm not Skye."
So, I had her confront him in the bathroom.
Discovery University is the most comprehensive expansion pack that has been released for The Sims 4 yet. You can curate so many different college experiences: switch schools if the one you enrolled in initially isn't working out; take more elective classes than core classes if you want to be a "super senior"; earn multiple degrees; or just spend your time drinking at the local bar. If you missed Maxis' live stream last week, I highly suggest you check it out. The Sims 4 Discover University launches November 15th, and you can pre-order it here or via the Origin launcher.
Image 1 of 14
Image 2 of 14
Image 3 of 14
Image 4 of 14
Image 5 of 14
Image 6 of 14
Image 7 of 14
Image 8 of 14
Image 9 of 14
Image 10 of 14
Image 11 of 14
Image 12 of 14
Image 13 of 14
Image 14 of 14


Response status codes
Success
Successes differ from errors in that their body may not be a simple response object with a code and a message. The headers however are consistent across all calls:
GET
,PUT
,DELETE
returns200 OK
on success,POST
returns 201 on success,
When retrieving stuff for example:
Status: 200 OK
{
{
id: thing_1,
name: 'My first thing'
},
{
id: thing_2,
name: 'My second thing'
}
}
Error
Error responses are simply returning standard HTTP error codes along with some additional information:
- The error code is sent back as a status header,
- The body includes an object describing both the code and message (for debugging and/or display purposes),
For a call with an invalid authentication token for example:
Status: 401 Access denied
{
code: 401,
message: 'Access denied: invalid authentication token.'
}


--- layout: default ---
I code. I work. I play. I train. I climb.
A solver to identify sets of SET cards using Python/OpenCV, and an Android app front end for the solver deployed on AWS.
An OpenGL binding generator for Go.
A memory game for Android Wear smartwatches. (source)
A minimal but functional NES emulator written in Go.
A web game about building things with toy blocks. (source)
An Xbox 360 game about conquering the world with real-time multiplayer. (source)
An Xbox 360 game about a girl, a boy, and an ocean full of fish. (source)
An iPhone game with an accelerometer twist on Connect Four. (source)
A one-button (Google+) game about climbing as high as you can.
An award-winning, multiplayer version of the ancient Norse board game of Hnefatafl. (For the now-defunt platform Game Gardens.)
A random maze generation experiment using Eller's algorithm.
A tiny, statically-typed, type-inferenced language.
A dead-simple Brainfuck-to-x86-assembly compiler.
A real-time microkernel x86 operating system and Marklin train control program.


Shortcut
Dependency Graph
depend
Main
Main
Shortcut
Shortcut
Main->Shortcut
The arrow means
"depends on"
. Only dependencies involving
Shortcut
are displayed. Switch to
dot
style or
twopi
style.


| package ti.sysbios.interfaces |
|
Contains all interface specifications
package ti.sysbios.interfaces [2, 0, 0, 0] {
// Cache Interface
// Hardware Interrupt Support Module
// Power Interface
// Seconds interface
// Interface for family-specific Settings modules
// Interface for Timer Peripherals Manager
// Interface for TimerSupport Manager
// Timestamp Interface
}
DETAILS
For the proxy-delegate mechanism between generic modules and the
modules in
ti.sysbios.family to work properly, both the
proxy and the delegate modules must be implementations of a common
interface specification. The Timer, Hwi, Cache and Seconds interface
specifications reside in ti.sysbios.interfaces and are
ti.sysbios.interfaces.ITimer,
ti.sysbios.interfaces.IHwi,
ti.sysbios.interfaces.ICache, and
ti.sysbios.interfaces.ISeconds respectively.
These interface specifications define a minimum set of general APIs
that, it is believed, will satisfy a vast majority of application
requirements.
The I<mod>Support interfaces define "internal" interfaces used by the
<mod> modules in their implementation. These interfaces simplify the
process of porting to a new architecture; one only needs to implement
the I<mod>Support interface to enable the full functionality of the
ti.sysbios.<mod> module.
generated on Wed, 28 Aug 2019 17:00:25 GMT


web
Markdown Cheatsheet
This document demonstrates Markdown features, and shows how they look using my Jekyll style.
It is based on the official syntax description, but I removed or shortened many examples and included them in the code to show how they render.
Note that Jekyll supports some extensions beyond the basic Markdown syntax as described here.
Markdown: Syntax
Overview
Philosophy
Markdown is intended to be as easy-to-read and easy-to-write as is feasible. To this end, Markdown’s syntax is comprised entirely of punctuation characters, which punctuation characters have been carefully chosen so as to look like what they mean. E.g., asterisks around a word actually look like *emphasis*. Markdown lists look like, well, lists. Even blockquotes look like quoted passages of text, assuming you’ve ever used email.
Inline HTML
Markdown’s syntax is intended for one purpose: to be used as a format for writing for the web. For any markup that is not covered by Markdown’s syntax, you simply use HTML itself.
Block-level HTML elements – e.g.

,

,

,

, etc. – must be separated from surrounding
content by blank lines, and the start and end tags of the block should
not be indented with tabs or spaces.
Markdown is smart enough not
to add extra (unwanted)

tags around HTML block-level tags.
For example, to add an HTML table to a Markdown article:
This is a regular paragraph.

Foo

yields:
This is a regular paragraph.
| Foo |
This is another regular paragraph.
Span-level HTML tags – e.g.
,
, or
– can be
used anywhere in a Markdown paragraph, list item, or header.
Unlike block-level HTML tags, Markdown syntax is processed within
span-level tags.
Automatic Escaping for Special Characters
In HTML, there are two characters that demand special treatment: <
and &
. Left angle brackets are used to start tags; ampersands are
used to denote HTML entities. If you want to use them as literal
characters, you must escape them as entities, e.g. <
, and
&
.
If you use an ampersand as part of
an HTML entity, it remains unchanged; otherwise it will be translated
into &
.
So, if you want to include a copyright symbol in your article, you can write
©
and Markdown will leave it alone: ©.
But if you write AT&T
Markdown will translate it to: AT&T.
If you write 4 < 5
Markdown will translate it to 4 < 5.
However, inside Markdown code spans and blocks, angle brackets and ampersands are always encoded automatically. This makes it easy to use Markdown to write about HTML code.
Block Elements
Paragraphs and Line Breaks
The implication of the “one or more consecutive lines of text” rule is
that Markdown supports “hard-wrapped” text paragraphs.
When you do want to insert a

break tag using Markdown, you
end a line with two or more spaces, then type return:
Like this
And here the paragraph goes on.
Headers
Markdown supports two styles of headers, [Setext] [1] and [atx] [2].
Setext-style headers are “underlined” using equal signs (for first-level headers) and dashes (for second-level headers). For example:
This is an H1
=============
This is an H2
-------------
Any number of underlining =
’s or -
’s will work.
Atx-style headers use 1-6 hash characters at the start of the line, corresponding to header levels 1-6. For example:
# This is an H1
## This is an H2
###### This is an H6
Optionally, you may “close” atx-style headers. This is purely cosmetic – you can use this if you think it looks better.
Blockquotes
Markdown uses email-style >
characters for blockquoting.
> This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
> consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
> Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.
>
> Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse
> id sem consectetuer libero luctus adipiscing.
yields:
This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.
Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.
Markdown allows to put the >
only before the first
line of a hard-wrapped paragraph:
> This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.
Blockquotes can be nested:
This is the first level of quoting.
This is nested blockquote.
Back to the first level.
Blockquotes can contain other Markdown elements, including headers, lists, and code blocks:
> ## This is a header.
>
> 1. This is the first list item.
> 2. This is the second list item.
>
> Here's some example code:
>
> return shell_exec("echo $input | $markdown_script");
This is a header.
- This is the first list item.
- This is the second list item.
Here’s some example code:
return shell_exec("echo $input | $markdown_script");
Lists
Markdown supports ordered (numbered) and unordered (bulleted) lists.
Unordered lists use asterisks *, pluses +, and hyphens - – interchangably – as list markers:
* Red
* Green
* Blue
yields
- Red
- Green
- Blue
Ordered lists use numbers followed by periods:
1. Bird
1. McHale
1. Parish
yields
- Bird
- McHale
- Parish
You should start the list with the number 1; at some point in the future, Markdown may support starting ordered lists at an arbitrary number.
List markers must be followed by one or more spaces or a tab. If you want to be lazy, you can omit hanging indents:
* Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi,
viverra nec, fringilla in, laoreet vitae, risus.
* Donec sit amet nisl. Aliquam semper ipsum sit amet velit.
Suspendisse id sem consectetuer libero luctus adipiscing.
- Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.
- Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.
If list items are separated by blank lines, Markdown will wrap the
items in

tags in the HTML output. For example, this input:
* Bird
* Magic
will turn into:

Bird

Magic

-
Bird
-
Magic
List items may consist of multiple paragraphs. Each subsequent paragraph in a list item must be indented by either 4 spaces or one tab:
1. This is a list item with two paragraphs. Lorem ipsum dolor
sit amet, consectetuer adipiscing elit. Aliquam hendrerit
mi posuere lectus.
Vestibulum enim wisi, viverra nec, fringilla in, laoreet
vitae, risus. Donec sit amet nisl. Aliquam semper ipsum
sit amet velit.
2. Suspendisse id sem consectetuer libero luctus adipiscing.
-
This is a list item with two paragraphs. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus. Donec sit amet nisl. Aliquam semper ipsum sit amet velit.
-
Suspendisse id sem consectetuer libero luctus adipiscing.
To put a code block within a list item, the code block needs to be indented twice – 8 spaces or two tabs:
-
A list item with a code block:

It’s worth noting that it’s possible to trigger an ordered list by accident, by writing something like this:
1986. What a great season.
- What a great season.
In other words, a number-period-space sequence at the beginning of a line. To avoid this, you can backslash-escape the period:
1986\. What a great season.
1986. What a great season.
Code Blocks
To produce a code block in Markdown, simply indent every line of the
block by at least 4 spaces or 1 tab.
Markdown wraps a code block in both

and
tags.
This is a code block indented by 2 tabs.
while
This is only indented by 1 tab.
A code block continues until it reaches a line that is not indented (or the end of the article).
Within a code block, ampersands (&
) and angle brackets (<
and >
)
are automatically converted into HTML entities.
Horizontal Rules
You can produce a horizontal rule tag (

) by placing three or
more hyphens, asterisks, or underscores on a line by themselves. If you
wish, you may use spaces between the hyphens or asterisks. Each of the
following lines will produce a horizontal rule:
* * *
***
*****
- - -
---------------------------------------
Span Elements
Links
To create an inline link, use a set of regular parentheses immediately after the link text’s closing square bracket. Inside the parentheses, put the URL where you want the link to point, along with an optional title for the link, surrounded in quotes. For example:
This is [an example](http://example.com/ "Title") inline link.
[This link](http://example.net/) has no title attribute.
This is an example inline link. This link has no title attribute.
Reference-style links use a second set of square brackets, inside which you place a label of your choosing to identify the link. You define your link label like this, on a line by itself:
This is [an example][id] reference-style link.
This is [an example] [id] reference-style link.
[id]: http://example.com/ "Optional Title Here"
This is an example reference-style link. This is an example reference-style link.
Empty [] copy the id from the text:
Visit [Daring Fireball][] for more information.
[Daring Fireball]: http://daringfireball.net/
Visit Daring Fireball for more information.
The point of reference-style links is not that they’re easier to write. The point is that with reference-style links, your document source is vastly more readable. Compare the above examples: using reference-style links, the paragraph itself is only 81 characters long; with inline-style links, it’s 176 characters; and as raw HTML, it’s 234 characters. In the raw HTML, there’s more markup than there is text.
With Markdown’s reference-style links, a source document much more closely resembles the final output, as rendered in a browser. By allowing you to move the markup-related metadata out of the paragraph, you can add links without interrupting the narrative flow of your prose.
Emphasis
There is single and double emphasis, rendered using
and
:
*single asterisks*
_single underscores_
**double asterisks**
__double underscores__
yields:
single asterisks
single underscores
double asterisks
double underscores
You can use whichever style you prefer; the lone restriction is that the same character must be used to open and close an emphasis span.
Emphasis can be used in the middle of a word,
but if you surround an *
or _
with spaces, it’ll be treated as a
literal asterisk or underscore: * _, anywhere else it needs to be es*caped.
\*
.
Code
To indicate a span of code
, wrap it with backtick quotes (`
).
To include a literal backtick character within a code span, you can use
multiple backticks as the opening and closing delimiters:
Images
Inline image syntax looks like this:
![Alt text](/path/to/img.jpg)
![Alt text](/path/to/img.jpg "Optional title")
Reference-style image syntax looks like this:
![Alt text][id]
Where “id” is the name of a defined image reference. Image references are defined using syntax identical to link references:
[id]: url/to/image "Optional title attribute"
Markdown has no syntax for specifying the dimensions of an image;
if this is important, use regular HTML
tags.
Miscellaneous
Automatic Links
For URLs, one can write <http://example.com/>
to get http://example.com/.
Email addresses work similarly, with automatic obfuscation of the
link<EMAIL_ADDRESS>Backslash Escapes
Markdown provides backslash escapes for the following characters:
\ backslash
` backtick
* asterisk
_ underscore
{} curly braces
[] square brackets
() parentheses
# hash mark
+ plus sign
- minus sign (hyphen)
. dot
! exclamation mark
Expandable Sections
A useful element of (minimal) interaction are collapsable sections.
These can be created using the HTML tags
and

Click to expand
Long text shown only when not collapsed.
You can use *markdown* inside here, including
all the cool **features** that has:
* itemized lists
* `backtick code`
* and what not.

Here’s how it looks like:
Click to expand
Long text shown only when not collapsed. You can use markdown inside here, including all the cool features that has:
- itemized lists
backtick code
- and what not.


Several days ago, I introduced a common snack to you in the post of Pan-fried Buns with Beef in Houshi Street. After the brunch, my friend mentioned that there was a children’s painting exhibition in Jianggan Cultural Center next to the shopping mall of Intime. It is not far from the noshery, so we decided to go there to have a look.
前几天在《后市街牛肉煎包(望江店)》这贴中，向大家介绍了一种杭州比较常见的小吃。从那家店出来以后，朋友提起银泰商场边上的江干区文化中心有少儿绘画展，于是我们决定过去看一看。哈哈，想当年我们也是参加了艺术类考试的孩子啊:D
When we arrived there, the opening ceremony was on the way, and a group of primary students are listening to the teacher and the host’s speech very carefully. We noticed that there were a lot of parents around, approximately wanna to take pictures of their children for memory.
It reminds me of my childhood. As I was in the kindergarten, I began to learn dancing and my mother took part in my performance almost every time.
过去的时候刚好碰上了开幕式，一群小朋友们很认真地在听老师和主持人的发言。我们注意到周围有不少孩子的家长，大概是准备给孩子拍照留念的。突然觉得好亲切啊，二十几年前我在学跳舞的时候妈妈几乎每次都会到场。
The children’s paintings are really wonderful, some of them are very postmodern. When we stood in front of the painting, it’s hard for us to imagine that the paintings are drew by a group of 7/8-year-old children.
When I was in primary school, I used to learn Chinese painting. However, my teacher told me that the shrimp I painted was loach, and she asserted that I would not be talented in painting in the future. Since then, I have never picked up the brush.
小朋友们的画真的特别棒，有些是非常后现代主义的画派。当我们站在画作前，很难想象这是一些七八岁孩子们创作出来的。我小学的时候曾经学习过国画，但是老师说我画的虾是泥鳅，并且断言我以后不会在画画方面有天赋。从那时候开始，我就再也没有拿起画笔过。
I believe that the initiate teacher is essential to someone who attach a new thing at the very first time.
这么看来，老师对小朋友的引导真的还是挺重要的呢。
We stood for a long time in front of the paintings of the dogs, and felt that the puppies were lifelike. Even if it is the same object, it will present a completely different effect in children’s eyes.
我们在这组小狗的画作面前驻足了很久，感觉这些小狗们简直栩栩如生。在孩子的眼里即使是同一样物体，呈现出来的也是截然不同的效果啊。
I’m especially fond of the watercolor painting as well as the gouache, and these paintings on the round fan is very delicate.
我最喜欢的还是这类水彩水粉画，圆形团扇面设计特别精致。
Many children choose to paint irises/calamus. I’m not sure whether their teachers asked them to do, while I think it’s a nice choice. I remembered that I wrote an article about how to distinguish these two kinds of flowers. I’ll resteem to you guys if I can find it out.
有很多孩子选择了画鸢尾/菖蒲，不知道是不是老师布置的。我记得曾经好像写过一篇文章，介绍如何分辨这两种花，有机会的话我找出来分享给大家。
To be continue…
本文首发于Steemit。谢谢大家的来看我的文章，如果您喜欢的话，请转发、留言或是点赞。你们的支持是我继续努力的最大动力，再次感谢～
Thank you for reading my articles. If you like me, plz forward, upvote me or leave your comments. Thx a looooooot~
This page is synchronized from the post: ‘「Life & Activities」少儿绘画展-1 / Children’’s Painting Exhibition #1 20190504’


Before Change
// divide the interval [0, sum(weights)) into len(weights)
// subintervals [x_i, x_{i+1}), where the width x_{i+1} - x_i ==
// weights[i]
subinterval_ends = []
running_total = 0
for w in weights:
if w < 0:
raise ValueError("Detected negative weight: {}".format(w))
running_total += w
subinterval_ends.append(running_total)
// pick a place in the overall interval
x = rs.random() * running_total
// find the subinterval that contains the place, by looking for the
// first subinterval where the end is (strictly) after it
After Change
requires a lot of preprocessing (normalized probabilties), and
does a lot of conversions/checks/preprocessing internally.
probs = np.cumsum(weights)
idx = np.searchsorted(probs, rs.random() * probs[-1], side="left")
return idx


The briefing before a mission, of whatever form.
In one form of this, the boss gets an aide to turn the lights down and run through a series of slides as he gives the briefing. One of these slides will be "the best photo we could get" of the Big Bad or The Dragon, and there will usually be a line to the effect of "we lost three men getting this out of Commie Land" or wherever.
Military briefings will either take place in a proper briefing room or theatre with relevant information displayed on The Big Board, or consist of a bunch of officers hunched over a map table.
Sometimes this is used for comedic effect when The Plan has to do with something non-military, and often not deserving of such seriousness. (Such as planning out how to get ice for the barbecue). Might be a way of lampshading Serious Business. Occasionally this is done by a person giving a briefing without an audience. Alternately, the comedic effect might come from a serious topic being briefed with whatever random objects are lying around standing in as props.
Allows a character to be Mr. Exposition about what will happen next in the story.
Naturally, these are frequently given before levels in Real-Time Strategy, First-Person Shooter, or Simulation Games.
Occasionally, the Mission Briefing will include This Page Will Self-Destruct and/or Obstacle Exposition. See also: Unspoken Plan Guarantee.
Examples:
- Area 88 features several briefings in all incarnations, since it's a series about a foreign legion air force.
- Played for Laughs in Full Metal Panic! Fumoffu, when Tessa temporarily attends Jindai High School and shows up to the pool in a School Swimsuit instead of the more modern athletic suits the other girls are wearing. She explains that Kurz Weber convinced her to wear it...and we get a flashback of Kurz running a full-on mission briefing about the School Swimsuit, complete with surveillance photos and 3D models. As Tessa watches in mild confusion, the other Mithril staff members in attendance (all male, natch) nod in solemn agreement.
- Genshiken has Madarame explaining at the clubroom every single detail of the titular group's visit to the "Comifes". Everything goes just as planned... except for Madarame, who destroys his arm and is taken to the infirmary after delivering a long-winded, dramatic pre-"death" speech.
- In Lucky Star Konata holds a mission briefing with Kagami and Tsukasa before entering Comiket (A large anime/manga convention). Tsukasa fails to follow the plan and soon falls victim to the enemy.
- DC: The New Frontier: In a scene that evokes the Star Wars briefing scenes, the greatest minds in America tell America's greatest heroes how to attack the Centre.
- In The DCU, Suicide Squad missions would usually start with a mission briefing delivered by Amanda Waller.
- Wonder Woman Vol 1: Back in the Golden Age Colonel (later General) Darnell would give mission briefings to his intelligence officer Steve Trevor with his secretary Dina Prince taking down notes or relating further information about every other issue.
- The four go through several of these in The Keys Stand Alone: The Soft World: two each at the Guardians and Circle, and one with the Focus.
- The specific form and style of a Guild of Assassins contract is described in A.A. Pessimal's Gap Year Adventures. Admittedly this one concerns the rescue of a Guild member who has got into trouble, but it conveys the general concept.
- The SEALs in Act of Valor conduct a number of briefings, mostly of the formal variety, before their missions.
- Back to the Future
- In the first film, the Doc Brown of 1955 builds an elaborate model of Hill Valley to explain to Marty how he's going to get him back to 1985.
- He then does the same thing in Back to the Future Part III - Marty, familiar with the drill by now, finishes his line about it not being to scale. Of course, in both movies, the already-complex plan has to be stretched to accomodate a lot of last-minute changes.
- Possibly one of the earliest examples; the model house rehearsal from The Dirty Dozen. Of course, because we hear it step by step, it doesn't go exactly as planned.
- Star Wars:
- A New Hope has the briefing before the attack on the Death Star. Luke spoke up about how the impossible-seeming goal wasn't really. The briefing also includes a complete Exposition Diagram commented by Mr.Exposition himself, projecting the plans of an Air-Vent Passageway out of R2-D2's memory on The Big Board.
- The Empire Strikes Back has a much less formal one, with Leia outlining the plan for their Delaying Action and evacuation of their base on Hoth, and addressing the concerns raised by the pilots (nicely setting up the Ion Cannon that knocks out a Star Destroyer later on). Unusually, this plan goes off more or less exactly as she explained it would.
- And again in Return of the Jedi, as the Rebel Alliance plans for their assault on the second Death Star.
- And again in The Phantom Menace when R2D2 displays a hologram outlining the palace raid.
- Ditto The Force Awakens with the Resistance's assault on the First Order's Starkiller base, although most of the plan will have to be improvised on the site with Finn's knowledge of the base. And a great deal of luck.
- Rogue One Has a PA announcement informing the pilots to launch immediately, and that their squadron leaders would brief them en-route to their objective. This of course, is because the entire operation is a spur-of-the-moment decision the Rebel Alliance's leaders didn't have time to plan, their hand being forced by Rogue One and Admiral Raddus both going off on their own initiative.
- In both the original Ocean's Eleven and the remake Danny explains to the other ten how they plan on pulling off the heist in Las Vegas.
- Robin Hood: Prince of Thieves, with Kevin Costner explaining how he's going to rescue the prisoners as they're being hanged.
- The Rock has the SEAL team leader brief first the Washington bigwigs on the overall plan, and later his team (plus Mason and Goodspeed) on the details.
- In Toy Story, Woody outlines the toys' attack on Sid, using a model built from dominoes and other objects from Sid's room.
- Several briefings are shown in The Longest Day. During the glider assault on Pegasus Bridge, Major Howard mentally reviews what he's been told in his briefing - particularly the final part: "Hold until relieved."
- The computer simulation at the beginning of Titanic (1997) sort of functions as this, allowing the audience to easily follow what's happening when the ship starts sinking, freeing the characters from having to suddenly turn into Mr. Exposition in the middle of a disaster.
- Apollo 13 has a mid-mission briefing, where Gene Kranz calls together his teams to inform them to forget the flight-plan; all of their careful planning is in the toilet and they are improvising a new mission from scratch, the sole objective being the safe return of Apollo 13 to Earth.
- In Prometheus, the mission briefing is elaborate, taking on the form of a Lecture as Exposition, featuring a Holographic Interface.
- In Aliens, the Colonial Marines get a briefing before descending onto the planet. Later, they do a more detailed one, complete with a map table, to plan out how to barricade the aliens out of the complex while they wait for rescue (and then discuss how to get off the planet quicker when waiting becomes not an option).
- Several in a A Bridge Too Far, most notably General Horrocks who combines the briefing with Rousing Speech thanks to his A Father to His Men persona. It begins with some Heroic Self-Deprecation.
"Gentlemen, this is a story you will tell your grandchildren. And mightily bored they'll all be."
- Several in The Bridge on the River Kwai, especially Shears' initial encounters with Major Warden.
- Lawrence of Arabia plays with this trope. Some scenes are played straight, like Lawrence's first scene with General Murray and Mr. Dryden ("What is the job?" "Find Prince Feisal."). Others are used more to develop Lawrence's character than to advance the plot, like his first meeting with General Allenby, where they spend a minute or so discussing strategy and the rest of the scene discussing the campaign's effect on Lawrence.
- Cyrus gives a hasty one with a sand table model in Con Air before the battle at the airfield.
Cyrus: Considering my audience, I'm going to make this very quick and very simple. [points to objects in sand] This is the boneyard, this is the hangar, this is our plane.
Viking: What's that?
Cyrus: That's a rock. [knocks it away] - Stinger gives one of these to the pilots before the final mission in Top Gun.
- Bruce Lee receives a briefing in Enter the Dragon before he goes to Han's island.
- In Flight of the Intruder, we see a far more impromptu version of this, with an officer running out to give Grafton his new mission as he is preparing to launch. As their missions are normally given very detailed planning, he isn't very happy. Their new objective, three North Vietnamese fighter jets spotted at an airfield, is a trap. They end up running into a flak barrage and The Boxman is killed.
- A few mission briefings pop up in Invasion of Kzarch, most notably one in a flashback, and one that involved planning a particularly dangerous strike. Which then proceeds to go completely wrong.
- Since it's a series about pilots, this happens regularly in the X-Wing Series. It's implied to happen before every mission. The readers see it either before something unexpected happens, forcing a change of plans, or because some important bit of character interaction shows up before, during, or after.
- Tucker Max gets a few of these in his stories that rely on more exposition than stream of consciousness for comedic effect.
- Alias has these practically Once an Episode— often more than once, and with debriefings as well. Television Without Pity dubbed the "Conference Room of Endless Exposition" as such for that reason.
- Battlestar Galactica makes use of this trope over and over again, during pre-flight briefings for pilots and battle planning throughout the series. As with the Stargate franchise, this is a military organization so it would be expected protocol. Used notably in episode 1.10 "The Hand of God" to explain to most of the main cast and the audience the plan of attack on a Cylon-occupied asteroid. The briefing also leaves out key details, because Adama was concerned about Cylon infiltrators, and also probably to demonstrate to President Roslin that he didn't like or trust her.
- Band of Brothers depicts formal briefings for both D-Day and Operation Market Garden, as well as less formal ones for patrols and individual battles.
- Buffy the Vampire Slayer
- Several examples with the Scooby Gang, most notably in the episode "Hush", which came complete with the lights turned down and an audiovisual presentation... but no spoken dialogue since their voices had all been stolen.
- Done as a Contrast Montage in "Doomed" to show the different methodology of the Initiative and the Scooby Gang. Buffy's Ragtag Bunch of Misfits brainstorms together, checks the Tome of Eldritch Lore and works things out, while the Initiative gives orders from superior to inferior, checks the (inaccurate) data files, and sticks to rigid orders. Later when Buffy joins the Initiative she keeps interrupting the briefing to ask questions and make jokes.
- Dog the Bounty Hunter has the team gather for these before going after bail jumpers to review the relevant information on them.
- Almost a once per episode on JAG. Usually it is Admiral Chegwidden who, following the opening title sequence, hands a new case or mission to either Harm, Mac or to them both.
- Done Once an Episode on Leverage to describe The Mark and his various evil activities using fancy slideshows, unusual in that it's Hardison who does it instead of Nate, the team's leader. Usually, everyone butts in with their own comments or the character who actually knows what they're talking about takes over the briefing.
- The much-parodied tape messages from Mission: Impossible:
"Your mission, Jim, should you decide to accept it, is to ____________. As always, should you or any of your IM Force be caught or killed, the Secretary will disavow any knowledge of your actions. This tape will self-destruct in five seconds. Good luck, Jim."
- Get Smart. The above is parodied in "The Impossible Mission" when Agent 86's message briefing is delivered via tape:
"That is your mission, should you choose to accept it. Should you choose not to accept it, then you're fired."
- Both Stargate SG-1 and Stargate Atlantis do this about Once an Episode. The mission briefings are frequently sources of lasting funny quotes and snarky one-liners. This is protocol, since it is a military organization, which holds briefings before and debriefings after operations. Atlantis probably follows the same protocols since most of its personnel are in the Air Force.
- Starships/starbases featured on Star Trek will typically have a room specifically for this purpose. Usually just off The Bridge.
- Repeatedly parodied by Whose Line Is It Anyway?, usually by Greg Proops as the voice on the tape.
  This tape will self-destruct NOW!"
- The 100 has Clarke and Lexa give a briefing on their plan of attack against Mount Weather, complete with a scale model of the mountain.
- In Paranoia, the PCs play a team of Troubleshooters sent out on missions, so naturally there's always a Mission Briefing early on. Although, this being Paranoia, getting to the briefing is often a challenge in itself. Sometimes finding the briefing is a challenge. Sometimes a clone or two gets killed before the team makes it there.
- Almost every mission in the Ace Combat games is prefaced with a briefing, usually with a wire-grid map with marked targets in the PS2 titles. If the map is blank, that is a very very bad sign.
- The Command & Conquer series used full-screen FMV briefings from the onset, with occasional twists:
- During the GDI campaign of Command & Conquer: Tiberian Dawn one of your objectives gets Lost in Transmission, while over the first half of the Brotherhood of Nod campaign your intelligence grows increasingly inaccurate.
- Command & Conquer: Tiberian Sun was a departure in that the FMVs depicted someone else receiving a briefing. To help make up for this, the following map screen gave the player additional information as well as the option to complete side missions that affected the main mission.
- Command & Conquer: Red Alert 3 may like mission briefings a little too much. Before every mission you're given an full-screen FMV briefing, being told what your mission is. Then you go to a world map where the female officer tells you your mission in more detail. Then you finally go to another screen where a computerized voice shows a map of the mission itself, telling you what to do in even more detail. Some missions even have further briefings once you're on the field.
- The first Command & Conquer: Generals game didn't put much effort into its briefings, only giving you a voice-over as you stared at a map while the level loaded. Its Zero Hour expansion mixed things up with news reports that described what was going on, followed by instructions from your Mission Control once the level started.
- Company of Heroes gave you a mission briefing (with the map as a visual) at the outset of each mission. These would appear periodically throughout each mission, to provide more detail about either the next objective (if the player had just completed one of a series of tasks in the level) or how the player was expected to respond to a drastic change in the situation (if one had been scripted).
- The game Far Cry 2 notably has no actual mission briefing of sorts, however, after the first five minutes (or so) of cinematic gameplay, you end up in a bed unable to move, where you are confronted by the Big Bad, who reads your mission objectives to you.
- Fear features a mission briefing at the beginning of the game from the protagonist's point of view. During the briefing, you're introduced to the main allies and the source of your abilities is more or less explained. It ends up ultimately unnecessary.
- Each Mass Effect game has at least one, of varying degree of detail. Mass Effect 3 had the most, with briefings for most of the main campaign missions. Meanwhile, Mass Effect 2 allowed the player to make key decisions during the pre-mission brief, which would affect the outcome of the mission.
- Every single MechWarrior and MechCommander mission is prefaced by a text, audio, or video briefing. No surprise, given that all these games are martial in nature. These briefings are usually the only thing providing context to your mission, and will occasionally clue you in on any nasty surprises the mission might have waiting for you. The Mechwarrior 2 series was notable for providing tons of background fluff text as extra additions to their otherwise straightforward briefings—like the briefings themselves, these fluff text bits occasionally provided helpful hints that would not otherwise be revealed anywhere else (such as the specific weaknesses of certain enemies).
- While you oftentimes didn't see any PHYSICAL briefing, all of the Metroid games had a mission, and in Zero Mission and Fusion, you had at the very least one textual briefing. Other M had full on vocal briefings. The way it was handled, however, was not appreciated.
- The Naval Ops series has a briefing before each mission that lays out your objectives, likely enemies, and suggested armament.
- S.W.A.T. loves its mission briefings and prefaces each new mission with one. The game will usually provide voice overs between your officer and their handler regarding the nature of the mission, objectives, threats, and any other potential problems that may arise. That last detail is particularly important, since it often entails things such as the presence of hostages, traps, or important suspects to try and take down non-violently.
- Team Fortress 2: When you join a server, you get the bare bones of your mission presented to you in an old-timey black and white movie (and on Territory Control, what parts of the map have been won by which teams drawn on the blackboard).
- Unreal Tournament III: occasionally the characters are shown in a briefing room in cinematics. A minimalist example is done at every mission loading screen; schematics and still shots are displayed with a summation that sounds like it's being delivered in a briefing.
- The mission brief is a staple of the Wing Commander games, which isn't really surprising given that WC's setting is a military one. Also where one can find one of the early swipes at Maniac:
Halcyon: I thought so. Now, let's look at your patrol plan, Maverick. It's a simple three-point route, with a few asteroids near Nav 2. Keep alert. We really don?t know what to expect out there, but we know we're in hairball territory. Just fly your route and get back with a report—and if Maniac gives you any static, you have my permission to shoot him to pieces.
Maverick: Should I use missiles, sir, or ship's guns?
Halcyon: Guns, Maverick. Save your missiles for important targets.
Maniac: What?!
Halcyon: Squadron dismissed. - In XCOM: Enemy Unknown and XCOM 2, when missions pop up you only get a brief summary for them before you choose a strike team, it's only after the squad is en route on the Skyranger that Central Officer Bradford gives you a briefing that also serves as a loading screen. Bradford usually will have more to say at the start of the mission, and will chime in during it to update your progress or chew you out for taking too long.
- Elliot's parents provide a Mission Briefing for furniture shopping in the El Goonish Shive story arc "Indiana Elliot And The Temple Of Swedish Furniture."
- The anti-anomaly team receives one in Autumn Bay.
- JonTron's take on Takeshi's Challenge starts with one of these.
- The PALS FOR LIFE party is in the middle of one when Leeroy Jenkins suddenly decides to rush headlong into the dungeon on his own. To be fair, its not like the plan they were discussing would have actually worked anyway.
- Butch Cassidy and the Sundance Kids. Always ended by Wally dragging Elvis the dog into the lair and the computer's sneeze blasting the team out of the room.
- In the Futurama episode "War Is the H-Word," Earth declares war on Spheron I, a planet that commanding general Zapp Brannigan describes in a briefing as devoid of any natural resources and possessing no strategic value. Zapp Brannigan briefs the troops in front of a large Earth Government flag, a parody of the opening scene of the movie Patton. Richard Nixon's head also joins in.
- The Houndcats parodied the Mission: Impossible briefings at the start of every episode.


Use the HTML part to decide how to layout your page. This is where you write the code to make create elements like:
| Name | Description |
|---|---|
| W3 Schools | This is a website where you can find quick tutorials on how to make different HTML components. It's nice for when you want to find out how to do a specific thing and don't have time for an hour tutorial. You can also learn more about styling and dynamic web page development. |
| Code Academy | This is a really long tutorial that you can do on your own time. |


From Left.
From Right
Front Row
Mr. Stefanus holds a Bachelor of Economics (Honours) from the University of Namibia (UNAM) and a National Diploma of Commerce from Polytechnic of Namibia now Namibia University of Science and Technology (NUST).
Mr. Hendrik holds a Bachelor of Accounting and Finances from the University of Namibia (UNAM)
Mr. Justine holds a National Diploma of Diesel Mechanics from the Vocational Training College (VTC)
Ms. Elizabeth holds a LLB (Honours): Law degree from the University of Namibia (UNAM)


Information Management and Computer Science Bachelor Student, Junior Python & Web Developer, Free Software and GNU/Linux supporter also hardcore Radiohead fan and Milis Linux developer.
Would you like to know about me little more ?
You can check on my CV
Software skills CV Information science skills CV


Home
(current)
Create Listing
New Listing
Title
Your add
Zip Code
Please provide a valid zip.
Price
Add Type
Create post


Numbers 23:10
Who can count the dust of Jacob, and the number of the fourth part of Israel?


- getBalance() - Method in class com.cmput301w20t23.newber.models.User
-
- getCost() - Method in class com.cmput301w20t23.newber.models.RideRequest
-
Gets cost.
- getCurrentRequest() - Method in class com.cmput301w20t23.newber.models.Driver
-
- getCurrentRequest() - Method in class com.cmput301w20t23.newber.models.Rider
-
- getCurrentRequestId() - Method in class com.cmput301w20t23.newber.models.User
-
- getCurrentUserId() - Method in class com.cmput301w20t23.newber.controllers.UserController
-
Get the current user's ID from the Firebase Auth
- getDistanceInMetres() - Method in class com.cmput301w20t23.newber.models.Route
-
- getDownvotes() - Method in class com.cmput301w20t23.newber.models.Rating
-
Gets downvotes.
- getDriver() - Method in class com.cmput301w20t23.newber.models.RideRequest
-
Gets driver.
- getEmail() - Method in class com.cmput301w20t23.newber.models.User
-
Gets email.
- getEndLocation() - Method in class com.cmput301w20t23.newber.models.RideRequest
-
Gets end.
- getFirstName() - Method in class com.cmput301w20t23.newber.models.User
-
Gets first name.
- getFullName() - Method in class com.cmput301w20t23.newber.models.User
-
Gets the full name of the user
- getInstance() - Static method in class com.cmput301w20t23.newber.database.DatabaseAdapter
-
Returns 1 global instance, sticking with the singleton-design pattern
- getLastName() - Method in class com.cmput301w20t23.newber.models.User
-
Gets last name.
- getLatitude() - Method in class com.cmput301w20t23.newber.models.Location
-
- getLongitude() - Method in class com.cmput301w20t23.newber.models.Location
-
- getName() - Method in class com.cmput301w20t23.newber.models.Location
-
- getNameFromLatLng(LatLng) - Method in class com.cmput301w20t23.newber.views.DriverRequestActivity
-
Function to get human-readable address from a latitude and longitude
- getNameFromLatLng(LatLng) - Method in class com.cmput301w20t23.newber.views.RiderRequestActivity
-
Function to get human-readable address from a latitude and longitude
- getPendingRideRequests(Callback<ArrayList<RideRequest>>) - Method in class com.cmput301w20t23.newber.controllers.RideController
-
Get all pending ride requests from Firestore
- getPendingRideRequests(Callback<ArrayList<RideRequest>>) - Method in class com.cmput301w20t23.newber.database.DatabaseAdapter
-
Returns all ride requests that have a status of PENDING in the call back function
- getPhone() - Method in class com.cmput301w20t23.newber.models.User
-
Gets phone.
- getPoints() - Method in class com.cmput301w20t23.newber.models.Route
-
- getRating(String, Callback<Rating>) - Method in class com.cmput301w20t23.newber.controllers.UserController
-
Get the Rating Object from the Driver's ID from Firestore, and return it in the Callback
- getRating(String, Callback<Rating>) - Method in class com.cmput301w20t23.newber.database.DatabaseAdapter
-
Retrieves the Rating object of the current Driver, and sends it through the callback
- getRating() - Method in class com.cmput301w20t23.newber.models.Driver
-
- getRequestId() - Method in class com.cmput301w20t23.newber.models.RideRequest
-
Gets request id.
- getRider() - Method in class com.cmput301w20t23.newber.models.RideRequest
-
Gets rider.
- getRideRequest(String, Callback<RideRequest>) - Method in class com.cmput301w20t23.newber.controllers.RideController
-
Registers listeners.
- getRideRequest(String, Callback<RideRequest>) - Method in class com.cmput301w20t23.newber.database.DatabaseAdapter
-
Gets A ride request from its ID, and returns it in the callback
- getRoute(LatLng, LatLng, String, Callback<Route>) - Static method in class com.cmput301w20t23.newber.helpers.RouteGetter
-
Starts fetcher and parser tasks.
- getStartLocation() - Method in class com.cmput301w20t23.newber.models.RideRequest
-
Gets start.
- getStatus() - Method in class com.cmput301w20t23.newber.models.RideRequest
-
Gets status.
- getUid() - Method in class com.cmput301w20t23.newber.models.User
-
Sets email.
- getUpvotes() - Method in class com.cmput301w20t23.newber.models.Rating
-
Gets upvotes.
- getUser(Callback<Map<String, Object>>) - Method in class com.cmput301w20t23.newber.controllers.UserController
-
Get the current from the Firebase Auth
- getUser(String, Callback<Map<String, Object>>) - Method in class com.cmput301w20t23.newber.controllers.UserController
-
Gets the entire User Object from its ID from Firestore, and returns it in the Callback
- getUser(String, Callback<Map<String, Object>>) - Method in class com.cmput301w20t23.newber.database.DatabaseAdapter
-
Returns the User object from the ID
- getUsername() - Method in class com.cmput301w20t23.newber.models.User
-
Gets username.
- goToCallScreen(String) - Method in class com.cmput301w20t23.newber.views.fragments.RequestAcceptedFragment
-
Opens Android call screen and populates it with the driver's phone number when the
appropriate button is clicked.
- goToMailScreen(String) - Method in class com.cmput301w20t23.newber.views.fragments.RequestAcceptedFragment
-
Opens Android mail screen and populates it with the driver's email address when the
appropriate button is clicked.


Tunnel Rush Rebuilt
Score:
Lives:
Level:
Gameover:
Pause
Off
On
Mute
Off
On
Left
Jump
Right
Controls
Tunnel: Arrow Keys
Camera: A,D
Space: Jump
Pause: P
Mute: M
B: Backward
T: Teleport