Files
Work/guitar/backup/20040302/Range.hpp
2024-08-07 09:16:27 -04:00

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