Case.h
1 //##################################################################################################
2 //
3 // Ceetron Export
4 // Component: VTFx
5 //
6 // --------------------------------------------------------------------------------------------
7 // Copyright (C) 2015, Ceetron AS
8 // This is UNPUBLISHED PROPRIETARY SOURCE CODE of Ceetron AS. The contents of this file may
9 // not be disclosed to third parties, copied or duplicated in any form, in whole or in part,
10 // without the prior written permission of Ceetron AS.
11 //##################################################################################################
12 
13 #pragma once
14 
15 #include "CeeVTFx/Base.h"
16 #include "CeeCore/Str.h"
17 #include "CeeCore/RefCountedObject.h"
18 #include "CeeCore/PropertySetCollection.h"
19 #include "CeeCore/Image.h"
20 
21 namespace cee {
22 namespace vtfx {
23 
24 class File;
25 
26 //==================================================================================================
27 //
28 //
29 //
30 //==================================================================================================
31 class CEE_VTFX_EXPORT Case : public RefCountedObject
32 {
33 public:
34  Case(File* file, const Str& name, int caseId, int databaseId);
35  virtual ~Case();
36 
37  int id() const;
38  int databaseId() const;
39  cee::Str name() const;
40  void setName(const cee::Str& name);
41  Str description() const;
42  void setDescription(const Str& descriptionHtml);
43  const Image* snapshot() const;
44  void setSnapshot(cee::Image* image);
45 
46  size_t imageCount() const;
47  cee::Str imageName(size_t imageIndex) const;
48  const Image* image(size_t imageIndex) const;
49  bool addImage(const cee::Str& imageName, cee::Image* image);
50 
51  const PropertySetCollection* properties() const;
52  bool setProperties(PropertySetCollection* propertySetCollection);
53 
54  bool derivedResultsDisabled() const;
55  void setDerivedResultsDisabled(bool disable);
56 
57 private:
58  Case(File* file, int caseId);
59 
60 private:
61  friend class FilePrivate;
62  friend class File;
63  CEE_PRIVATE_IMPL(Case);
64  CEE_DISALLOW_COPY_AND_ASSIGN(Case);
65 };
66 
67 }
68 }
Stores an RGBA image with 8 bits per pixel.
Definition: Image.h:25
Namespace cee contains all functionality and structures under the Core component. ...
Definition: AppAssert.cpp:18
A VTFx file.
Definition: File.h:35
A general unicode based string class.
Definition: Str.h:28
Base class for all reference counted objects with built-in support for intrusive reference counting...
Definition: RefCountedObject.h:34
A collection of property sets.
Definition: PropertySetCollection.h:29
A VTFx case. The class represents a case, i.e. the specific visualization of a VTFx database...
Definition: Case.h:31