GUIDOLib  1.7.7
Guido Engine Internal Documentation
ARStaffFormat.h
1 #ifndef ARStaffFormat_H
2 #define ARStaffFormat_H
3 
4 /*
5  GUIDO Library
6  Copyright (C) 2002 Holger Hoos, Juergen Kilian, Kai Renz
7  Copyright (C) 2002-2017 Grame
8 
9  This Source Code Form is subject to the terms of the Mozilla Public
10  License, v. 2.0. If a copy of the MPL was not distributed with this
11  file, You can obtain one at http://mozilla.org/MPL/2.0/.
12 
13  Grame Research Laboratory, 11, cours de Verdun Gensoul 69002 Lyon - France
14  research@grame.fr
15 
16 */
17 
18 #include "ARMTParameter.h"
19 #include "TagParameterFloat.h"
20 
21 class TagParameterString;
22 
23 /*@mkdoc
24 
25 @group:Layout
26 
27 @tagname:\staffFormat
28 @tagalias:
29 @tagtype:P
30 @tagnotation:sets the staff format
31 @tagdesc
32 @tagend
33 
34 @params:
35 @param:style:string:a style string in the form 'n-lines' or 'TAB':5-lines:true
36 @param:lineThickness:float:the staff lines thickness:0.08:true
37 @param:distance:unit:sets a fixed distance to the preceding staff:0hs:true
38 @paramdesc
39 The "TAB" style is intended to display tablatures, it is similar to
40 `style="6-lines", size=1.35`
41 
42 Note: the **\staffFormat** tag supports common parameters but dx has no effect.
43 
44 See the [Layout](@EXAMPLES/layout/) example.
45 @paramend
46 
47 */
48 
52 {
53  public:
54  ARStaffFormat();
56  virtual ~ARStaffFormat() {}
57 
58  virtual bool IsStateTag() const { return true; }
59 
60  virtual void setTagParameters (const TagParameterMap& params);
61 
62  virtual const char* getParamsStr() const { return kARStaffFormatParams; };
63  virtual const char* getTagName() const { return "ARStaffFormat"; };
64  virtual std::string getGMNName() const { return "\\staffFormat"; };
65  virtual const TagParameterFloat * getSize() const;
66 
67 // const TagParameterString * getStyle() const;
68  const TagParameterFloat * getStaffDistance() const;
69  float getLineThickness() const { return fLineThickness; }
70  int getLinesCount() const { return fLinesCount; }
71  bool isTAB () const { return fTAB; }
72 
73  protected:
76  int fLinesCount = 5;
77  bool fTAB = false;
78 };
79 
80 #endif
ARStaffFormat::getTagName
virtual const char * getTagName() const
Definition: ARStaffFormat.h:63
ARStaffFormat::getLinesCount
int getLinesCount() const
Definition: ARStaffFormat.h:70
ARStaffFormat::isTAB
bool isTAB() const
Definition: ARStaffFormat.h:71
ARMTParameter
not yet documented
Definition: ARMTParameter.h:24
ARStaffFormat::getParamsStr
virtual const char * getParamsStr() const
Definition: ARStaffFormat.h:62
ARStaffFormat::fSize
TagParameterFloat fSize
Definition: ARStaffFormat.h:74
ARStaffFormat::IsStateTag
virtual bool IsStateTag() const
Definition: ARStaffFormat.h:58
ARStaffFormat
not yet documented
Definition: ARStaffFormat.h:51
ARStaffFormat::~ARStaffFormat
virtual ~ARStaffFormat()
Definition: ARStaffFormat.h:56
ARStaffFormat::getStaffDistance
const TagParameterFloat * getStaffDistance() const
ARStaffFormat::fTAB
bool fTAB
Definition: ARStaffFormat.h:77
TagParameterFloat
The floating point parameter type for Guido Tags.
Definition: TagParameterFloat.h:24
ARStaffFormat::setTagParameters
virtual void setTagParameters(const TagParameterMap &params)
ARStaffFormat::fLinesCount
int fLinesCount
Definition: ARStaffFormat.h:76
TagParameterString
A string-type tag parameter.
Definition: TagParameterString.h:25
ARStaffFormat::getSize
virtual const TagParameterFloat * getSize() const
TagParameterMap
A list of tag parameters represented as a map.
Definition: TagParameterMap.h:31
ARStaffFormat::fLineThickness
float fLineThickness
Definition: ARStaffFormat.h:75
ARStaffFormat::getGMNName
virtual std::string getGMNName() const
Definition: ARStaffFormat.h:64
ARStaffFormat::getLineThickness
float getLineThickness() const
Definition: ARStaffFormat.h:69
ARStaffFormat::ARStaffFormat
ARStaffFormat()

Guido Project Copyright © 2019 Grame-CNCM