http://developer.apple.com/library/mac/#documentation/GraphicsImaging/Conceptual/QuartzComposer_Patch_PlugIn_ProgGuide/Introduction/Introduction.html%23//apple_ref/doc/uid/TP40004787

...and this is the general tutorial that I was writing about.

-gt

On Mon, Feb 14, 2011 at 12:55 PM, Christopher Wright <
[email protected]> wrote:

> I was more looking for a run through tutorial/guide to get me started,
> having never produced anything with X-Code before, it can be
> quite daunting. It would also appear that things are done slightly
> differently when producing a plugin for Quartz rather than a standalone
> application. Also a good explanation of like time modes, threading etc would
> be great.
>
>
> These aren't things that have simple tutorials.  There are Xcode templates
> to create QC plugins, so the "interesting" stuff (setting up bundles,
> installation locations, framework linkings, etc.) is done for you.  Time
> modes are documented here:
>
> http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/QCPlugIn_Class/Introduction/Introduction.html
>
> Specifically:
>
> Time Modes
>
> Time modes for custom patches.
>
>
> typedef enum {
>    kQCPlugInTimeModeNone 
> <http://developer.apple.com/library/mac/documentation/Cocoa/Reference/QCPlugIn_Class/Introduction/Introduction.html#//apple_ref/doc/c_ref/kQCPlugInTimeModeNone>
>  = 0,
>    kQCPlugInTimeModeIdle 
> <http://developer.apple.com/library/mac/documentation/Cocoa/Reference/QCPlugIn_Class/Introduction/Introduction.html#//apple_ref/doc/c_ref/kQCPlugInTimeModeIdle>,
>    kQCPlugInTimeModeTimeBase 
> <http://developer.apple.com/library/mac/documentation/Cocoa/Reference/QCPlugIn_Class/Introduction/Introduction.html#//apple_ref/doc/c_ref/kQCPlugInTimeModeTimeBase>
> } QCPlugInTimeMode;
>
> Constants kQCPlugInTimeModeNone
> No time dependency. The custom patch does not depend on time at all. (It
> does not use the time parameter of the execute:atTime:withArguments:
>  method.)
> Available in Mac OS X v10.5 and later.
> Declared in QCPlugIn.h.
>  kQCPlugInTimeModeIdle
> An idle time dependency. The custom patch does not depend on time but needs
> the system to execute it periodically. For example if the custom patch
> connects to a piece of hardware, to ensure that it pulls data from the
> hardware, you would set the custom patch time dependency to idle time mode.
> This time mode is typically used with providers.
> Available in Mac OS X v10.5 and later.
> Declared in QCPlugIn.h.
>  kQCPlugInTimeModeTimeBase
> A time base dependency. The custom patch does depend on time explicitly and
> has a time base defined by the system. (It uses the time parameter of the
> execute:atTime:withArguments: method.)
> Available in Mac OS X v10.5 and later.
> Declared in QCPlugIn.h.
> Declared In QCPlugIn.h
>
>
>
> Threading is a topic that would take decades to explain, and it'd still be
> wrong.  Threading isn't a topic that has simple answers/abstractions -- you
> absolutely _must_ be able to reason about how things work in order to do it
> correctly.  If you're targeting 10.6 and later, GCD can handle much of the
> complications of threading for you, but there are still cases where you have
> to understand critical sections.  QC Patches generally don't lend themselves
> to threading very well, except in special cases (providers can do it well,
> but others types of patches not so much), so I really encourage you to
> discuss your thoughts, experiments, and questions on the list so that you
> can have a few extra eyes looking things over.  It's difficult to get
> threading stuff right even when you've done it for a really long time.
>
>
>
> --
> Christopher Wright
> [email protected]
>
>
>
>
>  _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> Quartzcomposer-dev mailing list      ([email protected])
> Help/Unsubscribe/Update your Subscription:
>
> http://lists.apple.com/mailman/options/quartzcomposer-dev/gtoledo3%40gmail.com
>
> This email sent to [email protected]
>



-- 
George Toledo
[email protected]
www.georgetoledo.com

The information contained in this E-mail and any attachments may be
confidential.
If you have received this E-mail in error, please notify us immediately by
telephone or return E-mail.
You should not use or disclose the contents of this E-mail or any of the
attachments for any purpose or to any persons.
 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Quartzcomposer-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/quartzcomposer-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to