Lines Matching defs:Element

42 class Element;
59 RS_ERROR_INVALID_ELEMENT = 3, ///< An invalid Element was passed to a function
174 sp<const Element> U8;
175 sp<const Element> U8_2;
176 sp<const Element> U8_3;
177 sp<const Element> U8_4;
178 sp<const Element> I8;
179 sp<const Element> I8_2;
180 sp<const Element> I8_3;
181 sp<const Element> I8_4;
182 sp<const Element> U16;
183 sp<const Element> U16_2;
184 sp<const Element> U16_3;
185 sp<const Element> U16_4;
186 sp<const Element> I16;
187 sp<const Element> I16_2;
188 sp<const Element> I16_3;
189 sp<const Element> I16_4;
190 sp<const Element> U32;
191 sp<const Element> U32_2;
192 sp<const Element> U32_3;
193 sp<const Element> U32_4;
194 sp<const Element> I32;
195 sp<const Element> I32_2;
196 sp<const Element> I32_3;
197 sp<const Element> I32_4;
198 sp<const Element> U64;
199 sp<const Element> U64_2;
200 sp<const Element> U64_3;
201 sp<const Element> U64_4;
202 sp<const Element> I64;
203 sp<const Element> I64_2;
204 sp<const Element> I64_3;
205 sp<const Element> I64_4;
206 sp<const Element> F32;
207 sp<const Element> F32_2;
208 sp<const Element> F32_3;
209 sp<const Element> F32_4;
210 sp<const Element> F64;
211 sp<const Element> F64_2;
212 sp<const Element> F64_3;
213 sp<const Element> F64_4;
214 sp<const Element> BOOLEAN;
216 sp<const Element> ELEMENT;
217 sp<const Element> TYPE;
218 sp<const Element> ALLOCATION;
219 sp<const Element> SAMPLER;
220 sp<const Element> SCRIPT;
221 sp<const Element> MESH;
222 sp<const Element> PROGRAM_FRAGMENT;
223 sp<const Element> PROGRAM_VERTEX;
224 sp<const Element> PROGRAM_RASTER;
225 sp<const Element> PROGRAM_STORE;
227 sp<const Element> A_8;
228 sp<const Element> RGB_565;
229 sp<const Element> RGB_888;
230 sp<const Element> RGBA_5551;
231 sp<const Element> RGBA_4444;
232 sp<const Element> RGBA_8888;
234 sp<const Element> YUV;
236 sp<const Element> MATRIX_4X4;
237 sp<const Element> MATRIX_3X3;
238 sp<const Element> MATRIX_2X2;
253 friend class Element;
362 * @param[in] off offset of first Element to be overwritten
370 * @param[in] off offset of first Element to be overwritten
373 * @param[in] dataOff offset of first Element in data to copy
379 * @param[in] off offset of first Element to be overwritten
541 * @param[in] e Element used in the Allocation
546 static sp<Allocation> createSized(sp<RS> rs, sp<const Element> e, size_t count,
552 * @param[in] e Element used in the Allocation
558 static sp<Allocation> createSized2D(sp<RS> rs, sp<const Element> e,
573 * An Element represents one item within an Allocation. An Element is roughly
582 * Basic Elements are comprised of a Element.DataType and a
583 * Element.DataKind. The DataType encodes C type information of an Element,
584 * while the DataKind encodes how that Element should be interpreted by a
588 * Element::RGBA_8888.
592 class Element : public BaseObj {
612 sp<const Element> getSubElement(uint32_t index);
631 * Returns the location of a sub-element within a complex Element.
638 * Returns the data type used for the Element.
646 * Returns the data kind used for the Element.
654 * Returns the size in bytes of the Element.
662 * Returns the number of vector components for this Element.
670 * Utility function for returning an Element containing a single bool.
672 * @return Element
674 static sp<const Element> BOOLEAN(sp<RS> rs);
676 * Utility function for returning an Element containing a single unsigned char.
678 * @return Element
680 static sp<const Element> U8(sp<RS> rs);
682 * Utility function for returning an Element containing a single signed char.
684 * @return Element
686 static sp<const Element> I8(sp<RS> rs);
688 * Utility function for returning an Element containing a single unsigned short.
690 * @return Element
692 static sp<const Element> U16(sp<RS> rs);
694 * Utility function for returning an Element containing a single signed short.
696 * @return Element
698 static sp<const Element> I16(sp<RS> rs);
700 * Utility function for returning an Element containing a single unsigned int.
702 * @return Element
704 static sp<const Element> U32(sp<RS> rs);
706 * Utility function for returning an Element containing a single signed int.
708 * @return Element
710 static sp<const Element> I32(sp<RS> rs);
712 * Utility function for returning an Element containing a single unsigned long long.
714 * @return Element
716 static sp<const Element> U64(sp<RS> rs);
718 * Utility function for returning an Element containing a single signed long long.
720 * @return Element
722 static sp<const Element> I64(sp<RS> rs);
724 * Utility function for returning an Element containing a single float.
726 * @return Element
728 static sp<const Element> F32(sp<RS> rs);
730 * Utility function for returning an Element containing a single double.
732 * @return Element
734 static sp<const Element> F64(sp<RS> rs);
736 * Utility function for returning an Element containing a single Element.
738 * @return Element
740 static sp<const Element> ELEMENT(sp<RS> rs);
742 * Utility function for returning an Element containing a single Type.
744 * @return Element
746 static sp<const Element> TYPE(sp<RS> rs);
748 * Utility function for returning an Element containing a single Allocation.
750 * @return Element
752 static sp<const Element> ALLOCATION(sp<RS> rs);
754 * Utility function for returning an Element containing a single Sampler.
756 * @return Element
758 static sp<const Element> SAMPLER(sp<RS> rs);
760 * Utility function for returning an Element containing a single Script.
762 * @return Element
764 static sp<const Element> SCRIPT(sp<RS> rs);
766 * Utility function for returning an Element containing an ALPHA_8 pixel.
768 * @return Element
770 static sp<const Element> A_8(sp<RS> rs);
772 * Utility function for returning an Element containing an RGB_565 pixel.
774 * @return Element
776 static sp<const Element> RGB_565(sp<RS> rs);
778 * Utility function for returning an Element containing an RGB_888 pixel.
780 * @return Element
782 static sp<const Element> RGB_888(sp<RS> rs);
784 * Utility function for returning an Element containing an RGBA_5551 pixel.
786 * @return Element
788 static sp<const Element> RGBA_5551(sp<RS> rs);
790 * Utility function for returning an Element containing an RGBA_4444 pixel.
792 * @return Element
794 static sp<const Element> RGBA_4444(sp<RS> rs);
796 * Utility function for returning an Element containing an RGBA_8888 pixel.
798 * @return Element
800 static sp<const Element> RGBA_8888(sp<RS> rs);
803 * Utility function for returning an Element containing a float2.
805 * @return Element
807 static sp<const Element> F32_2(sp<RS> rs);
809 * Utility function for returning an Element containing a float3.
811 * @return Element
813 static sp<const Element> F32_3(sp<RS> rs);
815 * Utility function for returning an Element containing a float4.
817 * @return Element
819 static sp<const Element> F32_4(sp<RS> rs);
821 * Utility function for returning an Element containing a double2.
823 * @return Element
825 static sp<const Element> F64_2(sp<RS> rs);
827 * Utility function for returning an Element containing a double3.
829 * @return Element
831 static sp<const Element> F64_3(sp<RS> rs);
833 * Utility function for returning an Element containing a double4.
835 * @return Element
837 static sp<const Element> F64_4(sp<RS> rs);
839 * Utility function for returning an Element containing a uchar2.
841 * @return Element
843 static sp<const Element> U8_2(sp<RS> rs);
845 * Utility function for returning an Element containing a uchar3.
847 * @return Element
849 static sp<const Element> U8_3(sp<RS> rs);
851 * Utility function for returning an Element containing a uchar4.
853 * @return Element
855 static sp<const Element> U8_4(sp<RS> rs);
857 * Utility function for returning an Element containing a char2.
859 * @return Element
861 static sp<const Element> I8_2(sp<RS> rs);
863 * Utility function for returning an Element containing a char3.
865 * @return Element
867 static sp<const Element> I8_3(sp<RS> rs);
869 * Utility function for returning an Element containing a char4.
871 * @return Element
873 static sp<const Element> I8_4(sp<RS> rs);
875 * Utility function for returning an Element containing a ushort2.
877 * @return Element
879 static sp<const Element> U16_2(sp<RS> rs);
881 * Utility function for returning an Element containing a ushort3.
883 * @return Element
885 static sp<const Element> U16_3(sp<RS> rs);
887 * Utility function for returning an Element containing a ushort4.
889 * @return Element
891 static sp<const Element> U16_4(sp<RS> rs);
893 * Utility function for returning an Element containing a short2.
895 * @return Element
897 static sp<const Element> I16_2(sp<RS> rs);
899 * Utility function for returning an Element containing a short3.
901 * @return Element
903 static sp<const Element> I16_3(sp<RS> rs);
905 * Utility function for returning an Element containing a short4.
907 * @return Element
909 static sp<const Element> I16_4(sp<RS> rs);
911 * Utility function for returning an Element containing a uint2.
913 * @return Element
915 static sp<const Element> U32_2(sp<RS> rs);
917 * Utility function for returning an Element containing a uint3.
919 * @return Element
921 static sp<const Element> U32_3(sp<RS> rs);
923 * Utility function for returning an Element containing a uint4.
925 * @return Element
927 static sp<const Element> U32_4(sp<RS> rs);
929 * Utility function for returning an Element containing an int2.
931 * @return Element
933 static sp<const Element> I32_2(sp<RS> rs);
935 * Utility function for returning an Element containing an int3.
937 * @return Element
939 static sp<const Element> I32_3(sp<RS> rs);
941 * Utility function for returning an Element containing an int4.
943 * @return Element
945 static sp<const Element> I32_4(sp<RS> rs);
947 * Utility function for returning an Element containing a ulong2.
949 * @return Element
951 static sp<const Element> U64_2(sp<RS> rs);
953 * Utility function for returning an Element containing a ulong3.
955 * @return Element
957 static sp<const Element> U64_3(sp<RS> rs);
959 * Utility function for returning an Element containing a ulong4.
961 * @return Element
963 static sp<const Element> U64_4(sp<RS> rs);
965 * Utility function for returning an Element containing a long2.
967 * @return Element
969 static sp<const Element> I64_2(sp<RS> rs);
971 * Utility function for returning an Element containing a long3.
973 * @return Element
975 static sp<const Element> I64_3(sp<RS> rs);
977 * Utility function for returning an Element containing a long4.
979 * @return Element
981 static sp<const Element> I64_4(sp<RS> rs);
983 * Utility function for returning an Element containing a YUV pixel.
985 * @return Element
987 static sp<const Element> YUV(sp<RS> rs);
989 * Utility function for returning an Element containing an rs_matrix_4x4.
991 * @return Element
993 static sp<const Element> MATRIX_4X4(sp<RS> rs);
995 * Utility function for returning an Element containing an rs_matrix_3x3.
997 * @return Element
999 static sp<const Element> MATRIX_3X3(sp<RS> rs);
1001 * Utility function for returning an Element containing an rs_matrix_2x2.
1003 * @return Element
1005 static sp<const Element> MATRIX_2X2(sp<RS> rs);
1010 * Create an Element with a given DataType.
1013 * @return Element
1015 static sp<const Element> createUser(sp<RS> rs, RsDataType dt);
1017 * Create a vector Element with the given DataType
1021 * @return Element
1023 static sp<const Element> createVector(sp<RS> rs, RsDataType dt, uint32_t size);
1025 * Create an Element with a given DataType and DataKind.
1029 * @return Element
1031 static sp<const Element> createPixel(sp<RS> rs, RsDataType dt, RsDataKind dk);
1034 * Returns true if the Element can interoperate with this Element.
1035 * @param[in] e Element to compare
1038 bool isCompatible(sp<const Element>e) const;
1048 std::vector<sp<Element> > mElements;
1056 void add(sp<Element> e, std::string &name, uint32_t arraySize = 1);
1057 sp<const Element> create();
1061 Element(void *id, sp<RS> rs,
1062 std::vector<sp<Element> > &elements,
1065 Element(void *id, sp<RS> rs, RsDataType dt, RsDataKind dk, bool norm, uint32_t size);
1066 Element(sp<RS> rs);
1067 virtual ~Element();
1072 std::vector<sp<Element> > mElements;
1180 * A Type describes the Element and dimensions used for an Allocation or a
1183 * A Type always includes an Element and an X dimension. A Type may be
1207 sp<const Element> mElement;
1225 * Returns the Element of the Allocation.
1228 sp<const Element> getElement() const {
1289 * Creates a new Type with the given Element and dimensions.
1291 * @param[in] e Element
1297 static sp<const Type> create(sp<RS> rs, sp<const Element> e, uint32_t dimX, uint32_t dimY, uint32_t dimZ);
1308 sp<const Element> mElement;
1311 Builder(sp<RS> rs, sp<const Element> e);
1362 sp<const Element> mElement;
1368 sp<const Element> getElement() {
1402 sp<const Element> mElement;
1403 ScriptIntrinsic(sp<RS> rs, int id, sp<const Element> e);
1415 ScriptIntrinsic3DLUT(sp<RS> rs, sp<const Element> e);
1418 * Supported Element types are U8_4. Default lookup table is identity.
1420 * @param[in] e Element
1423 static sp<ScriptIntrinsic3DLUT> create(sp<RS> rs, sp<const Element> e);
1433 * Sets the lookup table. The lookup table must use the same Element as the
1445 ScriptIntrinsicBlend(sp<RS> rs, sp<const Element> e);
1448 * Supported Element types are U8_4.
1450 * @param[in] e Element
1453 static sp<ScriptIntrinsicBlend> create(sp<RS> rs, sp<const Element> e);
1552 ScriptIntrinsicBlur(sp<RS> rs, sp<const Element> e);
1555 * Supported Element types are U8 and U8_4.
1557 * @param[in] e Element
1560 static sp<ScriptIntrinsicBlur> create(sp<RS> rs, sp<const Element> e);
1587 ScriptIntrinsicColorMatrix(sp<RS> rs, sp<const Element> e);
1645 ScriptIntrinsicConvolve3x3(sp<RS> rs, sp<const Element> e);
1651 * @param[in] e Element
1654 static sp<ScriptIntrinsicConvolve3x3> create(sp<RS> rs, sp<const Element> e);
1677 ScriptIntrinsicConvolve5x5(sp<RS> rs, sp<const Element> e);
1683 * @param[in] e Element
1686 static sp<ScriptIntrinsicConvolve5x5> create(sp<RS> rs, sp<const Element> e);
1709 ScriptIntrinsicHistogram(sp<RS> rs, sp<const Element> e);
1719 * @param[in] e Element type for inputs
1780 ScriptIntrinsicLUT(sp<RS> rs, sp<const Element> e);
1789 * @param[in] e Element type for intputs and outputs
1793 static sp<ScriptIntrinsicLUT> create(sp<RS> rs, sp<const Element> e);
1842 ScriptIntrinsicYuvToRGB(sp<RS> rs, sp<const Element> e);
1850 * @param[in] e Element type for output
1854 static sp<ScriptIntrinsicYuvToRGB> create(sp<RS> rs, sp<const Element> e);