Free Electron
SurfacePrimitive.h
Go to the documentation of this file.
1 /* Copyright (C) 2003-2021 Free Electron Organization
2  Any use of this software requires a license. If a valid license
3  was not distributed with this file, visit freeelectron.org. */
4 
5 /** @file */
6 
7 #ifndef __surface_SurfacePrimitive_h__
8 #define __surface_SurfacePrimitive_h__
9 
10 namespace fe
11 {
12 namespace ext
13 {
14 
15 /**************************************************************************//**
16  @brief SurfacePrimitive RecordView
17 
18  @ingroup surface
19 *//***************************************************************************/
20 class FE_DL_EXPORT SurfacePrimitive:
21  virtual public Recordable,
22  public CastableAs<SurfacePrimitive>
23 {
24  public:
25  Functor< Array<I32> > points;
26  Functor< I32 > properties;
27  Functor< String > part;
28 
29  SurfacePrimitive(void) { setName("SurfacePrimitive"); }
30 virtual void addFunctors(void)
31  {
33 
34  add(points, FE_SPEC("surf:points",
35  "Points in a primitive"));
36  add(properties, FE_SPEC("properties",
37  "Bitwise properties of a primitive"));
38  add(part, FE_SPEC("part",
39  "Part name of a primitive"));
40  }
41 virtual void initializeRecord(void)
42  {
44 
45  properties()=0;
46  }
47 virtual void finalizeRecord(void)
48  {
50  }
51 };
52 
53 } /* namespace ext */
54 } /* namespace fe */
55 
56 #endif /* __surface_SurfacePrimitive_h__ */
57 
58 
virtual void initializeRecord(void)
Called at instantiation to initialize attributes.
Definition: SurfacePrimitive.h:41
virtual void finalizeRecord(void)
Called right after instantiation to finalize complex attributes.
Definition: Recordable.h:45
kernel
Definition: namespace.dox:3
Bound accessor in a RecordView.
Definition: RecordView.h:147
SurfacePrimitive RecordView.
Definition: SurfacePrimitive.h:20
virtual void addFunctors(void)
Called at instantiation to add functors.
Definition: Recordable.h:31
virtual void finalizeRecord(void)
Called right after instantiation to finalize complex attributes.
Definition: SurfacePrimitive.h:47
virtual void initializeRecord(void)
Called at instantiation to initialize attributes.
Definition: Recordable.h:37
virtual void addFunctors(void)
Called at instantiation to add functors.
Definition: SurfacePrimitive.h:30
Recordable RecordView.
Definition: Recordable.h:23
Per-class participation non-RTTI fallback dynamic casting mechanism.
Definition: Castable.h:192