Commit Graph

215 Commits

Author SHA1 Message Date
Mathias Agopian
e7c4c28d0f add a virtual destructor to region_rasterizer, to be on the safe side 2009-07-07 12:29:17 -07:00
Andy McFadden
f460f19510 Fix sim build.
Looks like older gcc (4.1.x) doesn't properly handle templated
fanciness.  Apparently that's what we have on the build server.
2009-07-07 10:01:12 -07:00
Mathias Agopian
0f7f88db27 Merge commit 'goog/master' into merge_master 2009-07-06 14:16:55 -07:00
Android (Google) Code Review
1a16ea88ed am 991eec03: Merge change 6252 into donut
Merge commit '991eec03a73f8803d0f8c80b418480ea25293cfb'

* commit '991eec03a73f8803d0f8c80b418480ea25293cfb':
  Don't re-parse the framework resources all the time.
2009-07-06 14:10:36 -07:00
Dianne Hackborn
0f253efba5 Don't re-parse the framework resources all the time.
A small optimization to the resource code, to not re-parse the framework
resources every time we build a new AssetManager.  Instead, you can now
construct a ResTable from a previously created one...  of course, like the
existing code for using the data in-place, you can't delete the original
ResTable until you have deleted the one that has been constructed from it.
2009-07-06 11:12:37 -07:00
Android (Google) Code Review
4361996a8c am c7396025: Merge change 6084 into donut
Merge commit 'c7396025e59524e7ef639fd86fc23123939ee91c'

* commit 'c7396025e59524e7ef639fd86fc23123939ee91c':
  Return CAMERA_ERROR_SERVER_DIED to camera app when camera service dies (bug 1956726)
2009-07-06 11:02:33 -07:00
Mathias Agopian
7303c6bf1a get rid of references to MemoryDealer in SurfaceFlinger 2009-07-02 18:50:51 -07:00
James Dong
16f3d35459 Return CAMERA_ERROR_SERVER_DIED to camera app when camera service dies (bug 1956726) 2009-07-02 10:04:20 -07:00
Android (Google) Code Review
47a1a39ce9 am 6e1647a2: Merge change 5829 into donut
Merge commit '6e1647a212317f4ee8bcc23948b6621a59172954'

* commit '6e1647a212317f4ee8bcc23948b6621a59172954':
  Fix issue #1673793: Theme styles don't apply.
2009-07-01 22:43:58 -07:00
Mathias Agopian
84d1f7a098 Merge commit 'goog/master' into merge_master 2009-07-01 18:33:18 -07:00
Android (Google) Code Review
4040dcf8c2 am bd9aa793: Merge change 5593 into donut
Merge commit 'bd9aa793b19f7aa529ca4123492f8940b96486b8'

* commit 'bd9aa793b19f7aa529ca4123492f8940b96486b8':
  Add in TTS engine interface the methods to query the availability for a language,
2009-06-30 14:48:58 -07:00
Dianne Hackborn
e356292467 Fix issue #1673793: Theme styles don't apply.
It turns out this was not a problem in the resource code at all.  Rather,
the system process has a cache of pre-loaded attributes it uses to avoid
continually reloading things as it needs them.  Well it turns out this
cache wasn't flushed after a package was uninstalled or a configuration
changed, so you could re-install an app where you change its style resources
so its theme now points to one that is inconsistent in the cache.

This is mostly a problem for developers, where they continually install
new versions of an app where resources have changed.  This could possibly
show up when updating an app on a normal phone, although the problem would
eventually correct itself since this cache uses weak references.

Anyway, the cache is now reworked to be flushed appropriately.

This change also includes an update to aapt to be able to dump the
contents of bags in resources.
2009-06-30 13:27:30 -07:00
Mathias Agopian
9f96145725 Region::makeBoundsSelf() efficiently turns a region to its bounds 2009-06-29 18:46:37 -07:00
Android (Google) Code Review
ff10113dd4 am 17a80081: Merge change 5544 into donut
Merge commit '17a80081a42410f541a220ab7e6afc64fc6cc399'

* commit '17a80081a42410f541a220ab7e6afc64fc6cc399':
  Pipe all the camera callbacks to Java to facilitate the addition
2009-06-29 16:37:31 -07:00
Android (Google) Code Review
b9c8a73496 am 72eb0aca: Merge change 5483 into donut
Merge commit '72eb0acad5cffc57ce5006f6deab29ee259e461e'

* commit '72eb0acad5cffc57ce5006f6deab29ee259e461e':
  Expand support for different screen sizes.
2009-06-29 16:37:17 -07:00
Android (Google) Code Review
3c65483b32 Merge change 5593 into donut
* changes:
  Add in TTS engine interface the methods to query the availability for a language, to set the synthesis audio format, to query the current language, country and variant setting.
2009-06-29 10:04:09 -07:00
Jean-Michel Trivi
3f81888a72 Add in TTS engine interface the methods to query the availability for a language,
to set the synthesis audio format, to query the current language, country and
variant setting.
2009-06-29 09:52:17 -07:00
Mathias Agopian
17b2ad027b return bounds Rect by value 2009-06-26 19:02:40 -07:00
Android (Google) Code Review
5579a65263 Merge change 5544 into donut
* changes:
  Pipe all the camera callbacks to Java to facilitate the addition of new features. This will make it easy to add things like zoom callbacks without modifying the entire camera stack. Bug 1837832.
2009-06-26 14:02:10 -07:00
Dianne Hackborn
21342c5c19 Expand support for different screen sizes.
Applications can now declare that they support small, normal, or
large screens.  Resource selection can also be done based on these
sizes.  By default, pre-Donut apps are false for small and large,
and Donut or later apps are assumed to support all sizes.  In either
case they can use <supports-screens> in their manifest to declare
what they actually support.
2009-06-26 13:37:05 -07:00
Dave Sparks
c06b7cb6f3 Pipe all the camera callbacks to Java to facilitate the addition
of new features. This will make it easy to add things like zoom
callbacks without modifying the entire camera stack.
Bug 1837832.
2009-06-26 13:33:32 -07:00
Android (Google) Code Review
7df9173fc2 am b65dba45: Merge change 5470 into donut
Merge commit 'b65dba4560f7aff894ebcdbe8468daeaae3489c8'

* commit 'b65dba4560f7aff894ebcdbe8468daeaae3489c8':
  Use the same interface in the TTS engine interface for setLanguage and loadLanguage.
2009-06-26 10:55:35 -07:00
Jean-Michel Trivi
0a90b69714 Use the same interface in the TTS engine interface for setLanguage and loadLanguage.
Adding function to check the support level for a language in TTS engine interface.
2009-06-26 09:46:28 -07:00
Android (Google) Code Review
694fcc5d1d am c44989d6: Merge change 5350 into donut
Merge commit 'c44989d6c7bcc761fb37f54fd37aac2070ba8e5e'

* commit 'c44989d6c7bcc761fb37f54fd37aac2070ba8e5e':
  move ui/Time.cpp to core/jni, since this is the only place it is used
2009-06-25 15:11:09 -07:00
Mathias Agopian
a8664df810 move ui/Time.cpp to core/jni, since this is the only place it is used 2009-06-25 14:39:56 -07:00
Mathias Agopian
2ab55a4e31 make use of new eglGetRenderBufferANDROID extension to clean-up a bit a few hacks added recently 2009-06-25 00:09:27 -07:00
Mathias Agopian
69029eb5ab hack copybit back in for video playback on msm7k. we have h/w accelerated video again 2009-06-24 20:39:16 -07:00
Mathias Agopian
4c4b387afb merge master in master_gl 2009-06-24 18:31:21 -07:00
Android (Google) Code Review
6ef6895b03 am df65b60c: Merge change 5243 into donut
Merge commit 'df65b60ce33e5a56815864f8f0713e25378fa649'

* commit 'df65b60ce33e5a56815864f8f0713e25378fa649':
  Only report "unknown metadata" once per restore helper
2009-06-24 15:45:20 -07:00
Android (Google) Code Review
aa8d188de3 am a93466f5: Merge change 5220 into donut
Merge commit 'a93466f5ca41c2ba6c3524c8d1edc2138bf753e3'

* commit 'a93466f5ca41c2ba6c3524c8d1edc2138bf753e3':
  Cleanup header file. Disallow copy of Camera object by making copy
2009-06-24 15:44:45 -07:00
Android (Google) Code Review
b6ab1e9010 Merge change 5243 into donut
* changes:
  Only report "unknown metadata" once per restore helper
2009-06-24 13:58:52 -07:00
Christopher Tate
bd95c1d3af Only report "unknown metadata" once per restore helper
Also removes the auto-free object, replacing it with direct memory manipulation.
2009-06-24 13:57:29 -07:00
Android (Google) Code Review
de5b60b062 am eaa89f74: Merge change 5172 into donut
Merge commit 'eaa89f74c04c0f10d5f3f8190b457087537bff2e'

* commit 'eaa89f74c04c0f10d5f3f8190b457087537bff2e':
  Remove deprecated callback function support.
2009-06-24 13:54:13 -07:00
Android (Google) Code Review
e193f7cd9e am 3d7b8d1a: Merge change 5158 into donut
Merge commit '3d7b8d1aa6a362292f56defbe8fb2d5653f79282'

* commit '3d7b8d1aa6a362292f56defbe8fb2d5653f79282':
  Use a ref-counted callback interface for Camera.
2009-06-24 13:54:09 -07:00
Dave Sparks
f5a8faa751 Cleanup header file. Disallow copy of Camera object by making copy
constructor and operator= private.
2009-06-24 10:42:53 -07:00
Dave Sparks
dc76f7bfa1 Remove deprecated callback function support.
This is the last of a 3-part change to modify the camera to use
a more streamlined callback interface. This change removes the
old code.
Bug 1884362
2009-06-24 07:58:27 -07:00
Dave Sparks
bbbc7cb77e Use a ref-counted callback interface for Camera.
This allows the camera service to hang onto the callback interface
until all callbacks have been processed. This prevents problems
where pending callbacks in binder worker threads are processed
after the Java camera object and its associated native resources
have been released.
Bug 1884362
2009-06-24 07:58:27 -07:00
Christopher Tate
2d1db86e45 am 11b15779: Add file mode to the file-backup saved state blobs
Merge commit '11b157790234d3d2f116ce4c7ed1d3d00fb78bc3'

* commit '11b157790234d3d2f116ce4c7ed1d3d00fb78bc3':
  Add file mode to the file-backup saved state blobs
2009-06-23 13:28:41 -07:00
Christopher Tate
ab2e9e81e1 Add file mode to the file-backup saved state blobs
This change puts the file's access mode into the saved-state blob used by the
file backup helpers.  The tests have been updated for the new blob content
format.

What this change *doesn't* do is actually backup/restore the file mode.  This
change is a prerequisite for that, but mode preservation in backup/restore will
require adding metadata to the backup data stream itself, so will be approached
a bit more carefully.

(Also fixed one outright bug in the test program: ReadEntityData() had been
changed to return a ssize_t union of either a byte-count or a negative number
indicating error, but the test program was still assuming that nonzero == error,
and was spuriously failing.)
2009-06-23 13:07:47 -07:00
Android (Google) Code Review
952663ef57 am 5277103d: Merge change 5035 into donut
Merge commit '5277103db9033226814edc8fcba6f4ba4e846678'

* commit '5277103db9033226814edc8fcba6f4ba4e846678':
  add glTexParameteri() and fix glTexParameteriv()
2009-06-22 22:04:12 -07:00
Mathias Agopian
b12f99b315 add glTexParameteri() and fix glTexParameteriv() 2009-06-22 18:09:09 -07:00
Android (Google) Code Review
d056f2d087 am 72be4049: Merge change 4910 into donut
Merge commit '72be40490951d3f9d0ada16fcf5288d0c3306d88'

* commit '72be40490951d3f9d0ada16fcf5288d0c3306d88':
  fix warnings that will show up with GCC 4.4 (in master)
2009-06-22 14:03:17 -07:00
Android (Google) Code Review
cfb991d1f8 Merge change 4910 into donut
* changes:
  fix warnings that will show up with GCC 4.4 (in master)
2009-06-22 14:01:25 -07:00
Android (Google) Code Review
2a84f2e369 am 856dd8a6: Merge change 4952 into donut
Merge commit '856dd8a60a70a5b7dca2bf2114872ce063e2ad60'

* commit '856dd8a60a70a5b7dca2bf2114872ce063e2ad60':
  Helper API cleanup.  Allows multiple helpers to function,
2009-06-22 13:20:31 -07:00
Joe Onorato
9cda3e02c6 Helper API cleanup. Allows multiple helpers to function,
because they'll always go in the same order, and this lets
us not have to write headers to keep them paired.
2009-06-22 13:02:24 -07:00
Mathias Agopian
52ed26a78b fix warnings that will show up with GCC 4.4 (in master) 2009-06-22 02:35:32 -07:00
Mathias Agopian
5f28411a85 improve Vector<> with types that can be trivially moved and remove some unused code.
This optimization applies to sp<> and wp<> which should now perform about the same as regular pointers when placed in to Vector<>.
2009-06-22 02:31:07 -07:00
Mathias Agopian
cca6b4267d Merge commit 'goog/master' into merge_master 2009-06-19 17:41:14 -07:00
Android (Google) Code Review
03428fcc8b am 1585bd24: Merge change 4828 into donut
Merge commit '1585bd24c10d16351f89e32dddbfa799f18db6bd'

* commit '1585bd24c10d16351f89e32dddbfa799f18db6bd':
  Report densities in badging, debugging for nine patch bug.
2009-06-19 16:44:07 -07:00
Dianne Hackborn
be1bc0a1f9 Report densities in badging, debugging for nine patch bug.
The aapt tool now reports all available densities like it already did
for locales.  Also this includes more resource data output, which I
was using to examine bug #1867049 (which at this point I am unable to
reproduce).
2009-06-19 15:13:28 -07:00
Android (Google) Code Review
4910dc6256 am 5502f04c: Merge change 4709 into donut
Merge commit '5502f04c1dcf2b1918858bacb99fb0480a711707'

* commit '5502f04c1dcf2b1918858bacb99fb0480a711707':
  backup stuff
2009-06-18 19:04:56 -07:00
Android (Google) Code Review
0388b51341 am 16ce3504: Merge change 4708 into donut
Merge commit '16ce3504c5bf98d95d5c36001f755bb4b15253c9'

* commit '16ce3504c5bf98d95d5c36001f755bb4b15253c9':
  Make RestoreHelper and friends also write out the snapshot state.
2009-06-18 19:04:50 -07:00
Joe Onorato
6bda7fd556 backup stuff 2009-06-18 18:41:11 -07:00
Joe Onorato
da1430be26 Make RestoreHelper and friends also write out the snapshot state. 2009-06-18 18:41:11 -07:00
Android (Google) Code Review
00ea06792b am de72697b: Merge change 4524 into donut
Merge commit 'de72697b771d33738c5f9d6c28087504e0796622'

* commit 'de72697b771d33738c5f9d6c28087504e0796622':
  FileRestoreHelper and RestoreHelperDispatcher work.
2009-06-17 21:49:21 -07:00
Joe Onorato
f509f669cf FileRestoreHelper and RestoreHelperDispatcher work. 2009-06-17 16:20:55 -07:00
Joe Onorato
f757bd0710 am 5f15d151: checkpoint BackupDatAInput / RestoreHelper
Merge commit '5f15d151b5101fadfe6cba1e8f4aa6367e8c603e'

* commit '5f15d151b5101fadfe6cba1e8f4aa6367e8c603e':
  checkpoint BackupDatAInput / RestoreHelper
2009-06-17 15:38:08 -07:00
Joe Onorato
03aa8d7d04 checkpoint BackupDatAInput / RestoreHelper 2009-06-16 18:46:50 -07:00
Android (Google) Code Review
a230463a5a am f1170fb5: Merge change 4251 into donut
Merge commit 'f1170fb5386ea86d704480d321ee9d1ee4858244'

* commit 'f1170fb5386ea86d704480d321ee9d1ee4858244':
  Updating TTS engine interface for setting the language based on language, country and variant codes
2009-06-16 16:43:11 -07:00
Jean-Michel Trivi
bc275c818b Updating TTS engine interface for setting the language based on language, country and variant codes
coming from a java.util.Locale instance.
2009-06-16 13:25:15 -07:00
Mathias Agopian
b6822d7a3e Merge commit 'goog/master' into merge_master 2009-06-16 12:38:55 -07:00
Mathias Agopian
375f56363a new Permission class used to improve permission checks speed (by caching results) 2009-06-15 21:56:51 -07:00
Android (Google) Code Review
a08c7b6759 am 78f0f8cb: Merge changes 3953,3954 into donut
Merge commit '78f0f8cb2efe9410127c39201e240f6d438eb53c'

* commit '78f0f8cb2efe9410127c39201e240f6d438eb53c':
  Make the file backup helper not crash if a file you requested
  Fix SharedPrefsBackupHelper so it doesn't hard code the paths to the files.
2009-06-12 08:26:05 -07:00
Joe Onorato
1a9e19a73e Make the file backup helper not crash if a file you requested
can't be stated.  This means you don't need to know if the files
you are backing up exist or not -- we'll figure it out for you.
2009-06-11 14:51:45 -07:00
Joe Onorato
0ad6120dad Fix SharedPrefsBackupHelper so it doesn't hard code the paths to the files.
This took quite a bit of refactoring.
2009-06-11 11:29:57 -07:00
Mathias Agopian
0a3139a21e fix a bug where copybit only renders in the first buffer when used with s/w GL 2009-06-10 16:15:32 -07:00
Mathias Agopian
7e2a937c4f revive the copybit test. 2009-06-09 21:38:08 -07:00
Android (Google) Code Review
4d4be6b49b am e3523054: Merge change 3356 into donut
Merge commit 'e3523054ded8c6e86935a978aa136c3ed2c0ba12'

* commit 'e3523054ded8c6e86935a978aa136c3ed2c0ba12':
  Cleaning up comments in interface for TTS engines.
2009-06-05 21:17:31 -07:00
Android (Google) Code Review
ce08aa4422 am 327da854: Merge change 3344 into donut
Merge commit '327da854e8fbc444150b40941668b3c9187c34b9'

* commit '327da854e8fbc444150b40941668b3c9187c34b9':
  Updating TtsEngine.h and SynthProxy.cpp so that buffer memory
2009-06-05 21:17:19 -07:00
Jean-Michel Trivi
a40a4cf656 Cleaning up comments in interface for TTS engines. 2009-06-05 15:49:28 -07:00
Mathias Agopian
1a0c4cd5d8 Merge commit 'goog/master' into merge_master 2009-06-05 15:45:39 -07:00
Mathias Agopian
4fcd9c7003 get rid of LogSocket which wasn't even implemented (enabled) 2009-06-05 15:11:23 -07:00
Mathias Agopian
7e83f043d9 break dependency on utils/ZipEntry.h and utils/ZipFile.h, get rid of inet_address.h and Socket.h which were not used 2009-06-05 14:56:35 -07:00
Charles Chen
a17cef0154 Updating TtsEngine.h and SynthProxy.cpp so that buffer memory
management is handled on the system side.
2009-06-05 13:58:33 -07:00
Mathias Agopian
861aa2f0c9 rename string_array.h to StringArray.h and move the implementation from the header file to a new cpp file.
StringArray is used in two places in framework/base and in the Sim. Ideally we should get rid of it and use Vector<String8> instead of creating new code.
2009-06-05 01:26:23 -07:00
Mathias Agopian
0c97ed3a2e cleanup Debug.h a bit 2009-06-04 23:29:29 -07:00
Android (Google) Code Review
6d2bc14d24 am 2a318867: Merge change 3203 into donut
Merge commit '2a3188672ab2b65c0ce7c9c598a463e382c47696'

* commit '2a3188672ab2b65c0ce7c9c598a463e382c47696':
  rename a few files to camel-case, add copyright notices
2009-06-04 22:44:18 -07:00
Mathias Agopian
3d57964a81 fix a bunch of problems with destroying surfaces.
now, all destruction path, go through the purgatory which is emptied when ~ISurface is called, but we also make sure to remove the surface from the current list from there (in case a client forgot to request the destruction explicitely).
2009-06-04 18:46:21 -07:00
Mathias Agopian
f446ba9dcb rename a few files to camel-case, add copyright notices 2009-06-04 13:53:57 -07:00
Mathias Agopian
6457359fa5 Merge commit 'goog/master' into merge_master 2009-06-01 14:30:08 -07:00
Mathias Agopian
c6a5a5183b move utils/Pipe.h to the simulator 2009-06-01 14:06:02 -07:00
Mathias Agopian
294423e148 get rid of TimerProbe which is never used 2009-06-01 13:55:28 -07:00
Mathias Agopian
1bc9c93faf get rid of sleepForInterval() which didn't seem to be used anywhere in the source tree. Also get rid of ported.h which seem to be used only (possibly) in the sim. moved the implementation there. 2009-05-31 23:45:01 -07:00
Mathias Agopian
e0c322049a get rid of utils.h 2009-05-31 19:13:00 -07:00
Mathias Agopian
d07f2a523f get rid of utils/executablepath.h, which now lives in the simulator 2009-05-31 18:49:44 -07:00
Mathias Agopian
e839d82680 merge master to master_gl 2009-05-31 01:16:45 -07:00
Android (Google) Code Review
8ae930e706 am 11b1675a: Merge change 2626 into donut
Merge commit '11b1675a9348adabd9370ac01ae9c614ca4af384'

* commit '11b1675a9348adabd9370ac01ae9c614ca4af384':
  Adding TTS error code to signal missing resources (for instance missing language files).
2009-05-29 17:19:25 -07:00
Mathias Agopian
0669fbb12a force explicit instantiation of Singleton<> objects 2009-05-28 12:31:31 -07:00
Jean-Michel Trivi
8d336f9ab9 Adding TTS error code to signal missing resources (for instance missing language files). 2009-05-28 11:11:25 -07:00
Mathias Agopian
bed9dd128d make sure the Region code disallows constructs like "(a+b)=c;", which is somewhat meaningless. 2009-05-27 17:01:58 -07:00
Mathias Agopian
4b8160fdfd oops forgot these changes in the previous merge. fixes build 2009-05-27 15:02:35 -07:00
Mathias Agopian
723ec00af4 Merge commit 'goog/master' into merge_master
Conflicts:
	include/ui/Rect.h
	libs/ui/ISurfaceComposer.cpp
2009-05-27 14:34:50 -07:00
Android (Google) Code Review
2787dddcd0 am 0c0ad39c: Merge change 2502 into donut
Merge commit '0c0ad39cd8eaa6de6b7f99cec3971bcc953461e0'

* commit '0c0ad39cd8eaa6de6b7f99cec3971bcc953461e0':
  minor clean-up to Rect and Point.
2009-05-26 18:15:53 -07:00
Mathias Agopian
35801cea5f minor clean-up to Rect and Point.
- return "const" objects for overloaded operators to disallow constructs like: (a+b) = c;
- don't return references to non-static members, it's not always safe.
- Point.cpp was empty, so get rid of it
2009-05-26 17:47:39 -07:00
Mathias Agopian
83c0446f27 some work to try to reduce the code size of some native libraries
- make sure that all binder Bn classes define a ctor and dtor in their respective library.
  This avoids duplication of the ctor/dtor in libraries where these objects are instantiated.
  This is also cleaner, should we want these ctor/dtor to do something one day.

- same change as above for some Bp classes and various other non-binder classes

- moved the definition of CHECK_INTERFACE() in IInterface.h instead of having it everywhere.

- improved the CHECK_INTERFACE() macro so it calls a single method in Parcel, instead of inlining its code everywhere

- IBinder::getInterfaceDescriptor() now returns a "const String16&" instead of String16, which saves calls to String16 and ~String16

- implemented a cache for BpBinder::getInterfaceDescriptor(), since this does an IPC. HOWEVER, this method never seems to be called.
  The cache makes BpBinder bigger, so we need to figure out if we need this method at all.
2009-05-26 16:12:20 -07:00
Mathias Agopian
310f8da0c3 merge master to master_gl 2009-05-22 02:16:08 -07:00
Android (Google) Code Review
9c954caf4f Merge change 2260
* changes:
  change 2115 wasn't merged properly into master. this fixes that.
2009-05-21 16:32:55 -07:00
Mathias Agopian
a47f02afb1 change 2115 wasn't merged properly into master. this fixes that.
Merge change 2115 into donut

* changes:
  bring the native_handle stuff back from master_gl

Conflicts:

	libs/binder/Parcel.cpp
2009-05-21 16:29:38 -07:00
Android (Google) Code Review
9cbc6a7542 am 384bfa27: Merge change 2227 into donut
Merge commit '384bfa270cdcb5dc3bc9ec396b783e25eb2d9b4d'

* commit '384bfa270cdcb5dc3bc9ec396b783e25eb2d9b4d':
  Add header declaring the interface for TTS engines to implement.
2009-05-21 16:18:48 -07:00
Jean-Michel Trivi
c7104572aa Add header declaring the interface for TTS engines to implement. 2009-05-21 15:32:11 -07:00