mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 16:50:18 +00:00
Adds test cases to stress marshaling of primitive array types and am: aaa67596df
am: 6445699dde
Change-Id: Id4d405af8ac5efee1ca62504ea700b96937020cd
This commit is contained in:
@@ -77,6 +77,30 @@ interface IBase {
|
|||||||
|
|
||||||
typedef bitfield<BitField> Mask;
|
typedef bitfield<BitField> Mask;
|
||||||
|
|
||||||
|
typedef uint8_t[128] ByteOneDim;
|
||||||
|
typedef uint8_t[8][128] ByteTwoDim;
|
||||||
|
typedef uint8_t[8][16][128] ByteThreeDim;
|
||||||
|
|
||||||
|
typedef bool[128] BooleanOneDim;
|
||||||
|
typedef bool[8][128] BooleanTwoDim;
|
||||||
|
typedef bool[8][16][128] BooleanThreeDim;
|
||||||
|
|
||||||
|
typedef double[128] DoubleOneDim;
|
||||||
|
typedef double[8][128] DoubleTwoDim;
|
||||||
|
typedef double[8][16][128] DoubleThreeDim;
|
||||||
|
|
||||||
|
struct LotsOfPrimitiveArrays {
|
||||||
|
ByteOneDim byte1;
|
||||||
|
ByteTwoDim byte2;
|
||||||
|
ByteThreeDim byte3;
|
||||||
|
BooleanOneDim boolean1;
|
||||||
|
BooleanTwoDim boolean2;
|
||||||
|
BooleanThreeDim boolean3;
|
||||||
|
DoubleOneDim double1;
|
||||||
|
DoubleTwoDim double2;
|
||||||
|
DoubleThreeDim double3;
|
||||||
|
};
|
||||||
|
|
||||||
someBaseMethod();
|
someBaseMethod();
|
||||||
|
|
||||||
someBoolMethod(bool x) generates (bool y);
|
someBoolMethod(bool x) generates (bool y);
|
||||||
@@ -97,4 +121,9 @@ interface IBase {
|
|||||||
|
|
||||||
takeAMask(BitField bf, bitfield<BitField> first, MyMask second, Mask third)
|
takeAMask(BitField bf, bitfield<BitField> first, MyMask second, Mask third)
|
||||||
generates (BitField out, uint8_t f, uint8_t s, uint8_t t);
|
generates (BitField out, uint8_t f, uint8_t s, uint8_t t);
|
||||||
|
|
||||||
|
testArrays(LotsOfPrimitiveArrays in) generates (LotsOfPrimitiveArrays out);
|
||||||
|
testByteVecs(vec<ByteOneDim> in) generates (vec<ByteOneDim> out);
|
||||||
|
testBooleanVecs(vec<BooleanOneDim> in) generates (vec<BooleanOneDim> out);
|
||||||
|
testDoubleVecs(vec<DoubleOneDim> in) generates (vec<DoubleOneDim> out);
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -199,6 +199,34 @@ Return<void> Baz::takeAMask(IBase::BitField bf,
|
|||||||
return Void();
|
return Void();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Return<void> Baz::testArrays(
|
||||||
|
const IBase::LotsOfPrimitiveArrays &in,
|
||||||
|
testArrays_cb _hidl_cb) {
|
||||||
|
_hidl_cb(in);
|
||||||
|
return Void();
|
||||||
|
}
|
||||||
|
|
||||||
|
Return<void> Baz::testByteVecs(
|
||||||
|
const hidl_vec<IBase::ByteOneDim> &in,
|
||||||
|
testByteVecs_cb _hidl_cb) {
|
||||||
|
_hidl_cb(in);
|
||||||
|
return Void();
|
||||||
|
}
|
||||||
|
|
||||||
|
Return<void> Baz::testBooleanVecs(
|
||||||
|
const hidl_vec<IBase::BooleanOneDim> &in,
|
||||||
|
testBooleanVecs_cb _hidl_cb) {
|
||||||
|
_hidl_cb(in);
|
||||||
|
return Void();
|
||||||
|
}
|
||||||
|
|
||||||
|
Return<void> Baz::testDoubleVecs(
|
||||||
|
const hidl_vec<IBase::DoubleOneDim> &in,
|
||||||
|
testDoubleVecs_cb _hidl_cb) {
|
||||||
|
_hidl_cb(in);
|
||||||
|
return Void();
|
||||||
|
}
|
||||||
|
|
||||||
// Methods from ::android::hardware::tests::baz::V1_0::IBaz follow.
|
// Methods from ::android::hardware::tests::baz::V1_0::IBaz follow.
|
||||||
|
|
||||||
Return<void> Baz::doThis(float param) {
|
Return<void> Baz::doThis(float param) {
|
||||||
|
|||||||
@@ -53,6 +53,22 @@ struct Baz : public IBaz {
|
|||||||
uint8_t third,
|
uint8_t third,
|
||||||
takeAMask_cb _hidl_cb) override;
|
takeAMask_cb _hidl_cb) override;
|
||||||
|
|
||||||
|
Return<void> testArrays(
|
||||||
|
const IBase::LotsOfPrimitiveArrays &in,
|
||||||
|
testArrays_cb _hidl_cb) override;
|
||||||
|
|
||||||
|
Return<void> testByteVecs(
|
||||||
|
const hidl_vec<IBase::ByteOneDim> &in,
|
||||||
|
testByteVecs_cb _hidl_cb) override;
|
||||||
|
|
||||||
|
Return<void> testBooleanVecs(
|
||||||
|
const hidl_vec<IBase::BooleanOneDim> &in,
|
||||||
|
testBooleanVecs_cb _hidl_cb) override;
|
||||||
|
|
||||||
|
Return<void> testDoubleVecs(
|
||||||
|
const hidl_vec<IBase::DoubleOneDim> &in,
|
||||||
|
testDoubleVecs_cb _hidl_cb) override;
|
||||||
|
|
||||||
// Methods from ::android::hardware::tests::baz::V1_0::IBaz follow.
|
// Methods from ::android::hardware::tests::baz::V1_0::IBaz follow.
|
||||||
Return<void> doThis(float param) override;
|
Return<void> doThis(float param) override;
|
||||||
Return<int32_t> doThatAndReturnSomething(int64_t param) override;
|
Return<int32_t> doThatAndReturnSomething(int64_t param) override;
|
||||||
|
|||||||
Reference in New Issue
Block a user