Fission FSN
Loading...
Searching...
No Matches
fsIScroller.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: fsIScroller.h
4*
5* Purpose: Interface for controlling the scrolling of a tile map
6*
7*********************************************************************/
8
9#ifndef fsIScrollerhdr
10#define fsIScrollerhdr
11
12#include <fsCore/fsBaseTypes.h>
13#include <fsCore/fsPoint.h>
14
15
16namespace fsNTileMap
17{
18 class fsITileMap;
19
21 {
22 public:
23
24 void tileOffsetSet(const fsPoint& pOffest);
25
26 fsBool clamp(fsS32& pVal, fsS32 pLow, fsS32 pRange) const;
27
28 const fsPoint& subTileScrollOffsetGet() const;
29 const fsPoint& tileOffsetGet() const;
30
31 fsBool fullTileScrollHandleX(fsS32& pAttemptedX, fsS32 pViewWidth);
32 fsBool fullTileScrollHandleY(fsS32& pAttemptedY, fsS32 pViewHeight);
33
34 void tileMapSet(fsITileMap* const pMap);
35
36 virtual ~fsIScroller() {}
37
38 protected:
39
41
42 private:
43
44 virtual fsBool tileWrap(fsS32& pSubTilePos, fsS32& pDelta, fsS32& pTileOffset, fsS32 pSubTileMax, fsS32 pTileMax) const = 0;
45
46 fsPoint mTileOffest;
47 fsPoint mSubTileScrollOffest;
48
49 fsITileMap* mMap;
50
51 };
52}
53
54#endif
55
void tileOffsetSet(const fsPoint &pOffest)
Definition fsIScroller.cpp:33
fsBool fullTileScrollHandleY(fsS32 &pAttemptedY, fsS32 pViewHeight)
Definition fsIScroller.cpp:45
fsIScroller()
Definition fsIScroller.cpp:55
virtual ~fsIScroller()
Definition fsIScroller.h:36
const fsPoint & subTileScrollOffsetGet() const
Definition fsIScroller.cpp:13
void tileMapSet(fsITileMap *const pMap)
Definition fsIScroller.cpp:50
fsBool fullTileScrollHandleX(fsS32 &pAttemptedX, fsS32 pViewWidth)
Definition fsIScroller.cpp:40
fsBool clamp(fsS32 &pVal, fsS32 pLow, fsS32 pRange) const
Definition fsIScroller.cpp:18
const fsPoint & tileOffsetGet() const
Definition fsIScroller.cpp:8
Definition fsITileMap.h:29
bool fsBool
Definition fsBaseTypes.h:26
int fsS32
Definition fsBaseTypes.h:20
Definition fsILayer.h:21
Definition fsPoint.h:17