History log of /frameworks/rs/rsDevice.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
82e135c4bbe18855d8ed02632bb074f8da0b96e0 28-Feb-2017 Miao Wang <miaowang@google.com> Remove libutils.so dependency from libRSDriver, libRSCpuRef, and most
parts of libRS_internal.

NOTE: we're resolving dependencies to provide a model for vendors.
For us, all this code is above the HAL, thus the dependencies
are acceptable; whereas for vendors, their equivalent of this code is
below the HAL, and so the dependencies are not acceptable.

This CL resolves the libutils dependency by:
- Implement the timings functions in android::renderscript namespace
using NDK APIs, instead of using libutils counterparts.
- Replace android::Vector and android::String8 by std::vector and
std::string.
- PROPERTY_VALUE_MAX is replaced as PROP_VALUE_MAX.

This CL didn't resolve the libutils dependency of rsFont.cpp and
rsDebugger.cpp in libRS_internal:
The dependent functionality in rsDebugHelper.h is off by default, and
only intended for use during development; and rsFont.cpp is part of
graphics API which is not implemented below the HAL and is not used as
a model by vendors.

Additionally, this CL fixed the bug that mNodes was sorted in a
decreasing order. Nodes in ScriptGroup should be executed in
ascending order. The bad sort was only for support lib; so there was a
previously-unknown bug in support lib implementation of ScriptGroup.

Background:
libutils contains a collection of things like Vector, String8,
CallStack. It served the purpose similar to a STL library, when there
was no stable STL implementation available in Android. And most
importantly, it is not part of NDK.
Support lib used to use our own implementations of android::Vector and
android::String8, because it can only depend on NDK, similarly for the
timing related functions.
As part of the Treble requirements, native RS, including vendor version
libRS_internal, libRSDriver, libRSCpuRef could only depend on NDK
too. So we need to break the dependency on libutils. And since we now
have reasonable support of STLs, we should use that instead.

Bug: 34396220
Test: mm, and all CTS tests pass on Bullhead;
RsTest and RSTest_CompatLib (both native and compat path) also pass.
Change-Id: Ib9a37d16235c1dcd0f5bae3b95c374e394483c91
/frameworks/rs/rsDevice.cpp
11496ac131bb691edf5bdcab3029dceef5c1e4e1 16-Nov-2016 Chih-Hung Hsieh <chh@google.com> Fix google-build-using-namespace warnings in rs.

* Most files define classes in renderscript namespace.
Define them in the namespace instead of "using namespace ...".
Some files define global C++ names, and we replace
"using namespace ..." with using declarations of the required names.
* Add "NOLINT" comment to rsg_generator.c output code to suppress
such warnings.

Bug: 32670901
Test: build with WITH_TIDY=1
Change-Id: I9b0edcad3e1fb37c79927b05fd58fb1a301bdf22
/frameworks/rs/rsDevice.cpp
85d0cb112010781ad07b5979f0824b7f0ae3987e 18-Mar-2016 Yang Ni <yangni@google.com> Separate libRS.so into public and internal libs

Bug: 26546579

libRS_internal.so is not going to be whitelisted by the NDK linker,
therefore loadable only by the internal implementation, but not any
application code.

libRS is going to contain only publicly exported functions, i.e. the
functions declared in frameworks/rs/rs.h, including those in
rsApiFuncDecl.h (generated from rs.spec).

Change-Id: Iac58695316edc9aff87ade2bac3b4a44d1a68b23
/frameworks/rs/rsDevice.cpp
b8353c5943f4038fd7f08db3d958390ce9418798 15-Feb-2015 Yang Ni <yangni@google.com> Revert "Replaced android::Vector with std::vector."

b/19148482

This reverts commit 93d6bc872b7d9fba63abfa7513d56b38d9c3d371.

I also made some changes to Make it work with HEAD.

Change-Id: I5e516976ec1d85ffe1cf388c01795348a9441982
/frameworks/rs/rsDevice.cpp
93d6bc872b7d9fba63abfa7513d56b38d9c3d371 29-Jul-2014 Chris Wailes <chriswailes@google.com> Replaced android::Vector with std::vector.

Change-Id: I4c6abd964dc4b1412ec2e592fc8e835fecfe53f6
/frameworks/rs/rsDevice.cpp
c2ce707a3d1a8eae79bcf1c749afc6d6e7969ad9 18-Jul-2013 Tim Murray <timmurray@google.com> Move rs.h functions over to extern "C".

Change-Id: I0503a64d93dda558455dfebca90a0c820c80d7b1
/frameworks/rs/rsDevice.cpp
789ca83c794cb7196c9bac97d39eaf1f7947af2a 19-May-2011 Jason Sams <rjsams@android.com> Move context and device creation out of the spec file.

Change-Id: I79470d4fb9317bcad9d68921ce0c414aa133f3cb
/frameworks/rs/rsDevice.cpp
c975cf4a71b63ccbd20f1f3b3341c5f2e6025b45 29-Apr-2011 Jason Sams <rjsams@android.com> Pipe rsa function though the RS api table.

Change-Id: Ic8a3bef5d337be1d8fc5ca961eec6be4761701c5
/frameworks/rs/rsDevice.cpp
77d9f4bd05b2d2a161f30c12a2248f9c97eaac42 31-Jan-2011 Alex Sakhartchouk <alexst@google.com> Cleaning up the serialization change.
Renaming the define to be more in line with what it does and removing the host stub header file.

Change-Id: Ibd3a0a6a398c7f81cc661f71e4478707fe1679ed
/frameworks/rs/rsDevice.cpp
afb743aca56c18beb7ab924e75cb6e070ef3e55a 10-Nov-2010 Alex Sakhartchouk <alexst@google.com> Code cleanup to make formatting consistent
across all the renderscript files.

Change-Id: Idf5fcc60877e44c8f074f7176e37f70b3b895a3c
/frameworks/rs/rsDevice.cpp
fb6b614bcea88a587a7ea4530be45ff0ffa0210e 21-May-2010 Alex Sakhartchouk <alexst@google.com> Removed unnecessary change based on comments.
Now using android utils lib.
collada_to_a3d seems to work with android util libs.
Integrating old changelist
Changing assert to rsAssrt in VertexArray
making context compile.
Change-Id: I33890defa777f09253bfab630d97782359ec49d7

Added serialization code to rsLib
Integrated old changelist
Change-Id: Ie4746113f6d1817fbb3264f97fdddde25b779311

Added serialization code to rsLib

Change-Id: Ie4746113f6d1817fbb3264f97fdddde25b779311
/frameworks/rs/rsDevice.cpp
5fd09d847586f9680b4f495413b6ca5fbb69af6e 23-Sep-2009 Jason Sams <rjsams@android.com> Add raster object to control point and line params. Add flag to force SW rendering.
/frameworks/rs/rsDevice.cpp
326e0ddf89e8df2837752fbfd7a014814b32082c 22-May-2009 Jason Sams <jsams@google.com> Add the Renderscript library. (Not in the build by default yet.)

This library can be used to create animated 3D User Interfaces.

This library is currently under heavy development, so it's not part of
the build by default.

In order to build this library, you must define

BUILD_RENDERSCRIPT=true

in your build environment.

You will also have to manually edit

build/core/prelink-linux-arm.map

And add libRS and libRS_jni at the end like this (exact address may change.)

libRS.so 0x9A100000
libRS_jni.so 0x9A000000
/frameworks/rs/rsDevice.cpp