119 lines
2.0 KiB
C++
119 lines
2.0 KiB
C++
#ifndef _GUITAR_RANGE_HPP_
|
|
#define _GUITAR_RANGE_HPP_
|
|
#ifndef _COMMON_STRING_HPP_
|
|
#include <common/string.hpp>
|
|
#endif
|
|
#ifndef _COMMON_BLOCK_HPP_
|
|
#include <common/block.hpp>
|
|
#endif
|
|
|
|
class Range;
|
|
typedef Block<Range> TabRanges;
|
|
|
|
class Range
|
|
{
|
|
public:
|
|
Range();
|
|
virtual ~Range();
|
|
int getBeginRange(void)const;
|
|
void setBeginRange(int beginRange);
|
|
int getEndRange(void)const;
|
|
void setEndRange(int endRange);
|
|
const String &getRangeName(void)const;
|
|
void setRangeName(const String &rangeName);
|
|
void autoName(void);
|
|
String toString(void)const;
|
|
String toTabbedString(void)const;
|
|
private:
|
|
enum{ShortNameLength=20};
|
|
String createRangeName(void)const;
|
|
|
|
int mBeginRange;
|
|
int mEndRange;
|
|
String mRangeName;
|
|
};
|
|
|
|
inline
|
|
Range::Range()
|
|
: mBeginRange(0), mEndRange(0)
|
|
{
|
|
}
|
|
|
|
inline
|
|
Range::~Range()
|
|
{
|
|
}
|
|
|
|
inline
|
|
int Range::getBeginRange(void)const
|
|
{
|
|
return mBeginRange;
|
|
}
|
|
|
|
inline
|
|
void Range::setBeginRange(int beginRange)
|
|
{
|
|
mBeginRange=beginRange;
|
|
}
|
|
|
|
inline
|
|
int Range::getEndRange(void)const
|
|
{
|
|
return mEndRange;
|
|
}
|
|
|
|
inline
|
|
void Range::setEndRange(int endRange)
|
|
{
|
|
mEndRange=endRange;
|
|
}
|
|
|
|
inline
|
|
const String &Range::getRangeName(void)const
|
|
{
|
|
return mRangeName;
|
|
}
|
|
|
|
inline
|
|
void Range::setRangeName(const String &rangeName)
|
|
{
|
|
mRangeName=rangeName;
|
|
}
|
|
|
|
inline
|
|
void Range::autoName(void)
|
|
{
|
|
setRangeName(createRangeName());
|
|
}
|
|
|
|
inline
|
|
String Range::createRangeName(void)const
|
|
{
|
|
String strRangeName("RANGE_");
|
|
strRangeName+=String().fromInt(getBeginRange());
|
|
strRangeName+=String("_");
|
|
strRangeName+=String().fromInt(getEndRange());
|
|
return strRangeName;
|
|
}
|
|
|
|
inline
|
|
String Range::toString(void)const
|
|
{
|
|
String strString(getRangeName());
|
|
strString+=String("[")+String().fromInt(getBeginRange())+String("->")+String().fromInt(getEndRange());
|
|
return strString;
|
|
}
|
|
|
|
inline
|
|
String Range::toTabbedString(void)const
|
|
{
|
|
String strItem;
|
|
String shortName;
|
|
|
|
shortName=getRangeName();
|
|
strItem+=shortName.substr(0,ShortNameLength-1)+"\t";
|
|
strItem+=String().fromInt(getBeginRange())+"\t";
|
|
strItem+=String().fromInt(getEndRange());
|
|
return strItem;
|
|
}
|
|
#endif |