summaryrefslogtreecommitdiffstats
path: root/libs/rs/rsSampler.h
diff options
context:
space:
mode:
Diffstat (limited to 'libs/rs/rsSampler.h')
-rw-r--r--libs/rs/rsSampler.h25
1 files changed, 11 insertions, 14 deletions
diff --git a/libs/rs/rsSampler.h b/libs/rs/rsSampler.h
index 0506081..737bb8b 100644
--- a/libs/rs/rsSampler.h
+++ b/libs/rs/rsSampler.h
@@ -28,58 +28,55 @@ const static uint32_t RS_MAX_SAMPLER_SLOT = 16;
class SamplerState;
-class Sampler : public ObjectBase
-{
+class Sampler : public ObjectBase {
public:
Sampler(Context *,
RsSamplerValue magFilter,
RsSamplerValue minFilter,
RsSamplerValue wrapS,
RsSamplerValue wrapT,
- RsSamplerValue wrapR);
+ RsSamplerValue wrapR,
+ float aniso = 1.0f);
virtual ~Sampler();
void bind(Allocation *);
- void setupGL(const Context *, bool npot);
+ void setupGL(const Context *, const Allocation *);
void bindToContext(SamplerState *, uint32_t slot);
void unbindFromContext(SamplerState *);
+ virtual void serialize(OStream *stream) const;
+ virtual RsA3DClassID getClassId() const { return RS_A3D_CLASS_ID_SAMPLER; }
+ static Sampler *createFromStream(Context *rsc, IStream *stream);
+
protected:
RsSamplerValue mMagFilter;
RsSamplerValue mMinFilter;
RsSamplerValue mWrapS;
RsSamplerValue mWrapT;
RsSamplerValue mWrapR;
+ float mAniso;
int32_t mBoundSlot;
private:
Sampler(Context *);
-
};
-class SamplerState
-{
+class SamplerState {
public:
-
RsSamplerValue mMagFilter;
RsSamplerValue mMinFilter;
RsSamplerValue mWrapS;
RsSamplerValue mWrapT;
RsSamplerValue mWrapR;
-
+ float mAniso;
ObjectBaseRef<Sampler> mSamplers[RS_MAX_SAMPLER_SLOT];
-
- //void setupGL();
-
};
-
-
}
}
#endif //ANDROID_RS_SAMPLER_H