OpenStructure
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
Examples
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
build-2.7-doc
stage
include
ost
gfx
color_ops
by_chain_color_op.hh
Go to the documentation of this file.
1
//------------------------------------------------------------------------------
2
// This file is part of the OpenStructure project <www.openstructure.org>
3
//
4
// Copyright (C) 2008-2020 by the OpenStructure authors
5
//
6
// This library is free software; you can redistribute it and/or modify it under
7
// the terms of the GNU Lesser General Public License as published by the Free
8
// Software Foundation; either version 3.0 of the License, or (at your option)
9
// any later version.
10
// This library is distributed in the hope that it will be useful, but WITHOUT
11
// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12
// FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
13
// details.
14
//
15
// You should have received a copy of the GNU Lesser General Public License
16
// along with this library; if not, write to the Free Software Foundation, Inc.,
17
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
//------------------------------------------------------------------------------
19
#ifndef OST_COLOR_OPS_BY_CHAIN_COLOR_OP_HH
20
#define OST_COLOR_OPS_BY_CHAIN_COLOR_OP_HH
21
#include <map>
22
23
#include <
ost/info/info.hh
>
24
#include <
ost/info/info_fw.hh
>
25
26
#include <
ost/gfx/gradient.hh
>
27
#include <
ost/gfx/color_ops/color_op.hh
>
28
29
/*
30
Author: Stefan Scheuber
31
*/
32
33
namespace
ost {
namespace
gfx {
34
35
class
DLLEXPORT_OST_GFX
ByChainColorOp
:
public
ColorOp
{
36
public
:
37
ByChainColorOp
();
38
ByChainColorOp
(
const
String
& selection,
int
mask=
DETAIL_COLOR
|
MAIN_COLOR
);
39
ByChainColorOp
(
const
mol::QueryViewWrapper
& query_view,
int
mask=
DETAIL_COLOR
|
MAIN_COLOR
);
40
41
// Color Op interface
42
virtual
bool
CanApplyTo(
const
GfxObjP
& obj)
const
;
43
virtual
void
ApplyTo(
GfxObjP
& obj)
const
;
44
45
// this interface
46
Color
GetColor(
const
String
& ident)
const
;
47
unsigned
int
GetChainCount()
const
;
48
void
SetChainCount(
unsigned
int
chain_count);
49
50
//virtual void ToInfo(info::InfoGroup& group) const;
51
static
gfx::ByChainColorOp
FromInfo(
info::InfoGroup
& group);
52
53
private
:
54
void
Init();
55
gfx::Color
GenerateColor(
String
& ident)
const
;
56
57
unsigned
int
chain_count_;
58
float
cm_;
// 1 over chain_count
59
mutable
std::map<String,Color> colors_;
60
61
gfx::Gradient
color_grad_;
62
};
63
64
}}
65
66
#endif
67
ost::gfx::ColorOp
Definition:
color_op.hh:45
ost::gfx::GfxObjP
boost::shared_ptr< GfxObj > GfxObjP
Definition:
gfx_object_fw.hh:32
gradient.hh
String
std::string String
Definition:
base.hh:54
info.hh
ost::info::InfoGroup
Definition:
info_group.hh:40
DLLEXPORT_OST_GFX
#define DLLEXPORT_OST_GFX
Definition:
module_config.hh:27
info_fw.hh
ost::gfx::ByChainColorOp
Definition:
by_chain_color_op.hh:35
color_op.hh
ost::gfx::Gradient
color gradient
Definition:
gradient.hh:59
ost::mol::QueryViewWrapper
Definition:
query_view_wrapper.hh:33
ost::gfx::MAIN_COLOR
Definition:
color_op.hh:40
ost::gfx::DETAIL_COLOR
Definition:
color_op.hh:39
ost::gfx::Color
Definition:
color.hh:52
Generated by
1.8.5