summaryrefslogtreecommitdiff
path: root/cad/plugins/NanoVision-1/include/Nanorex/Interface/NXAtomRenderData.h
blob: 95ca447c804e4bff275d362bb0929cd37c77901c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
// Copyright 2008 Nanorex, Inc.  See LICENSE file for details.

#ifndef NX_ATOMRENDERDATA_H
#define NX_ATOMRENDERDATA_H

//#include <map>
#include <vector>
#include <string>
//#include "Nanorex/Interface/NXOpenGLMaterial.h"


namespace Nanorex {

/* CLASS: NXAtomRenderData */
/**
 * Information for rendering atoms
 */
class NXAtomRenderData {

private:
    typedef unsigned int uint;
    
public:
    NXAtomRenderData(uint const& the_atomicNum);
    ~NXAtomRenderData() {}
    
    uint const& getAtomicNum(void) const { return atomicNum; }
    
	void setRenderStyleCode(std::string const& code) {
		renderStyleCode = code;
	}
	
	std::string const& getRenderStyleCode(void) const {
		return renderStyleCode;
	}
	
    std::vector<void const*> const& getSupplementalData(void) const
    { return supplementalData; }
    
    void setSupplementalData(std::vector<void const *> const& suppData)
    { supplementalData = suppData; }
    
    void addData(void const *dataPtr)
    { supplementalData.push_back(dataPtr); }
    
protected:
    uint atomicNum;
	std::string renderStyleCode;
    std::vector<void const*> supplementalData;
};


} // Nanorex

#endif // NX_ATOMRENDERDATA_H